Linux & Cloud Software Engineer required in Somerset West.
A renowned Manufacturing Engineering company is looking for a Linux & Cloud Software Engineer to join their team on a full-time permanent basis in the Helderberg Area.
Excellent salary on offer and internal career advancement opportunities.
Our client is seeking a Software Engineer with a solid computer science background to design and build reliable system software and cloud-connected services. This role is hands‑on and technically demanding, spanning Linux kernel- and system software, communication networks, concurrency, databases, and cloud and IoT systems.
The ideal candidate is comfortable reasoning formally about systems, using concepts from automata theory, computational complexity, and distributed systems, and applying that knowledge to real‑world
production software.
Position Overview:
Design, develop, and optimise system‑level Linux and cloud software, including kernels, tools, and distributed components, to ensure high performance, reliability, and scalability across networking, data
management, and IoT environments
Required Qualifications:
- Degree in Computer Science or a closely related field. Masters preferred
Required Experience:
- Experience developing software on Linux
- Experience with cloud platforms (AWS, GCP, Azure)
- Experience building or operating IoT or edge systems
- Familiarity with containers and orchestration (WASM, Docker, Kubernetes)
- Experience with distributed systems or message‑based architectures
- Exposure to formal specification, verification, or protocol design
- Strong foundation in computer science, including:
- Algorithms and data structures
- Automata and formal models of computation
- Computational complexity and trade‑offs
- Concurrency and parallelism
- Communication networks
- Proficiency in at least one systems or backend language (e.g., C, C++, Rust, Go, Java, Zig)
- Experience with multithreaded and concurrent programming
- Solid understanding of networking fundamentals
- Experience modelling software with automata
- Experience working with databases and persistent storage
Special requirement(s):
- Willingness to travel overseas.
Duties and Responsibilities:
- System & Linux Software Development
- Design and implement system‑level software on Linux
- Work close to the OS: processes, threads, memory, filesystems, and networking
- Debug and optimise performance, resource usage, and reliability
- Build tools and services that run reliably in production environments
- Build custom kernels using Yocto
- Concurrency & Distributed Systems
- Design and implement concurrent and parallel software
- Reason about synchronization, race conditions, deadlocks, and consistency
- Build distributed components that tolerate partial failure and latency
- Apply formal reasoning to state machines and protocol design
- Networking & Communication
- Develop software that communicates over unreliable or high‑latency networks
- Design and implement robust communication protocols and data pipelines
- Work with network stacks, sockets, and message‑based systems
- Apply networking fundamentals to system design and troubleshooting
- Databases & Data Management
- Design data models and persistence layers
- Work with relational and/or NoSQL databases
- Reason about consistency, durability, performance, and scalability
- Optimize queries, storage layouts, and access patterns
- Cloud & IoT Systems
- Build cloud‑based services that integrate with IoT and edge devices
- Design device‑to‑cloud communication flows and asynchronous workflows
- Balance edge vs cloud responsibilities for reliability and efficiency
- Operate and monitor systems in production environments
Applying for Position:
- Only open to South African citizens.
- If you are interested in this great career opportunity, please send your CV.