Senior Software Engineer (C/Linux)
Information Technology (IT)
Johannesburg – Gauteng
Senior Software Engineer (C/Linux)
Location: Johannesburg, South Africa
Job Type: Full-Time
Overview
An innovative technology company in the warehousing automation space is seeking a Senior Software Engineer (C/Linux) to join their high-performance development team. The ideal candidate will bring expert-level C programming skills and deep Linux systems knowledge to help design and deliver robust, real-time software solutions integrated with complex hardware environments. This is a senior technical role offering the opportunity to lead projects, mentor engineers, and shape the future of intelligent automation systems.
Key Responsibilities
Design and implement high-performance, low-level software in C on Linux platforms
Lead architecture discussions and contribute to the direction of core system components
Optimize software for memory management, threading, and inter-process communication
Develop and maintain shell scripts, build systems (Make/CMake), and automation tools
Conduct code reviews, establish coding standards, and support peer learning
Collaborate with hardware engineers and cross-functional teams to ensure seamless integration
Troubleshoot system-level issues using tools such as GDB, Valgrind, and strace
Implement robust testing strategies and contribute to CI/CD pipelines
Promote best practices in secure, scalable, and safety-critical systems development
Required Skills & Experience
5+ years of experience in systems or embedded software development
Expert proficiency in C programming and strong experience with Linux (user space and/or kernel space)
Solid understanding of POSIX APIs, memory management, threading, IPC, and file systems
Hands-on experience with Git, Make/CMake, and common Linux debugging tools
Proven ability to lead projects and mentor junior engineers
Strong analytical and troubleshooting skills in real-time or performance-critical systems
Preferred Qualifications
Bachelor’s or Honours degree in Computer Science, Electrical Engineering, or a related field
Equivalent practical experience or relevant certifications will also be considered
Bonus Skills
Experience with RTOS or real-time Linux (e.g., PREEMPT_RT)
Background in industrial automation, robotics, or logistics systems
Familiarity with device drivers, fieldbus protocols, or hardware-level programming
Experience with CI/CD, cross-compilation, or embedded Linux toolchains
Understanding of cybersecurity in embedded or networked systems
What’s on Offer
Competitive salary and benefits
Leadership opportunities in real-world automation projects
A collaborative, innovation-driven work environment
Ongoing technical training and access to certifications