Principal Software Engineer - Backend
Summary
Principal backend engineer for an enterprise software client in Pretoria (hybrid): leads architecture of scalable backend systems and microservices, mentors engineers, and shapes technical strategy. Requires 10+ years' experience, deep skill in a backend language (Java/Python/Go/C#), distributed systems, SQL/NoSQL, and cloud platforms.
About the Role
Our client, a rapidly expanding enterprise software company, is seeking a highly skilled and experienced Principal Software Engineer specializing in backend development for their **Pretoria, Gauteng** office. This senior-level position offers the opportunity to lead architectural design, mentor engineering teams, and drive the development of high-performance, scalable backend systems. You will be at the forefront of technical innovation, tackling complex challenges and shaping the future of our client's core products. The role requires a deep understanding of software design principles, distributed systems, and modern backend technologies. This position operates on a **hybrid** model, allowing for a blend of in-office collaboration and remote flexibility. We are looking for a thought leader who can influence technical strategy and foster a culture of engineering excellence.
Key Responsibilities
- Lead the architectural design and implementation of complex backend systems and services.
- Develop and maintain robust, scalable, and high-performance APIs and microservices.
- Mentor and guide junior and mid-level software engineers, fostering their technical growth.
- Champion best practices in software development, including code quality, testing, and performance optimization.
- Collaborate with product managers and stakeholders to translate business requirements into technical solutions.
- Identify and address technical debt and system limitations.
- Evaluate and introduce new technologies and tools to enhance development efficiency and system capabilities.
- Troubleshoot and resolve critical issues in production environments.
- Contribute to the definition of the long‑term technical vision and roadmap.
- Conduct thorough code reviews and provide constructive feedback.
Requirements
- Master's degree in Computer Science, Engineering, or a related field, or equivalent extensive professional experience.
- 10+ years of professional experience in software development, with a strong focus on backend systems.
- Deep expertise in at least one major backend programming language (e.g., Java, Python, Go, C#) and associated frameworks.
- Extensive experience designing and building distributed systems and microservices architecture.
- Strong understanding of database technologies (SQL and NoSQL) and data modeling.
- Proven experience with cloud platforms (AWS, Azure, or GCP) and their services.
- In‑depth knowledge of system design, data structures, and algorithms.
- Experience with containerization (Docker) and orchestration (Kubernetes) is highly desirable.
- Excellent leadership, communication, and collaboration skills.
- Ability to drive technical decisions and influence cross‑functional teams.
Benefits
Our client offers a highly attractive salary package, comprehensive benefits, generous leave, opportunities for advanced training and conference attendance, and a dynamic, forward‑thinking work environment in **Pretoria, Gauteng**, with the added benefit of a hybrid work arrangement.