Base Systems Developer (C++ / Rust)
Job Summary
We are seeking a highly skilled and innovative Base Systems Developer to join our engineering team. This role focuses on low-level systems development using modern C++ and Rust, contributing directly to highly optimised, secure, and scalable software solutions. The successful candidate will be responsible for designing, developing, and maintaining core system components, performance-critical applications, and infrastructure-level software in a fast-paced technical environment.
The ideal candidate will have strong systems programming expertise, a deep understanding of operating systems and memory management, and experience building reliable, high-performance software solutions.
Key Responsibilities
- Design, develop, and maintain low-level system software using modern C++ and Rust.
- Build highly optimised, secure, and scalable software solutions for performance-critical environments.
- Develop and maintain core libraries, services, APIs, and infrastructure components.
- Analyse and optimise system performance, memory usage, concurrency, and latency.
- Work closely with architecture, DevOps, and software engineering teams to improve system reliability and efficiency.
- Troubleshoot complex technical issues related to systems integration, performance bottlenecks, and software stability.
- Implement secure coding practices and contribute to system hardening initiatives.
- Participate in code reviews, testing, debugging, and continuous improvement of development processes.
- Develop technical documentation, design specifications, and implementation guidelines.
- Contribute to automation, CI/CD pipelines, and deployment optimisation.
- Ensure software solutions meet scalability, maintainability, and security standards.
- Stay updated with emerging technologies and best practices in systems programming and software engineering.
Minimum Requirements
- Bachelor’s Degree in Computer Science, Software Engineering, Information Technology, or related field.
- 3–8+ years of experience in systems programming or low-level software development.
- Strong proficiency in modern C++ and/or Rust programming.
- Solid understanding of operating systems, memory management, multithreading, concurrency, and networking concepts.
- Experience with Linux/Unix-based environments.
- Knowledge of system architecture, performance tuning, and debugging tools.
- Experience working with version control systems such as Git.
- Strong analytical, problem-solving, and troubleshooting skills.
- Ability to work independently and collaboratively within cross-functional teams.
Preferred Skills & Experience
- Experience with embedded systems, distributed systems, or infrastructure software development.
- Familiarity with containerisation technologies such as Docker and Kubernetes.
- Understanding of cybersecurity principles and secure systems development.
- Experience with CI/CD pipelines and automated testing frameworks.
- Exposure to cloud platforms and scalable infrastructure environments.
- Knowledge of scripting languages such as Python or Bash is advantageous.
Work Location: In person