Principal Software Engineer
BETSoftware · Durban, KwaZulu-Natal
Stop applying one at a time.
JobAlertsZA auto-applies to South African jobs like this one for you, overnight. Upload your CV once — we do the applying.
Start free — we apply for you →Skill Set
- Programming Languages C#, .NET, SQL.
- Cloud Platforms AWS, Azure, OpenShift and Kubernetes.
- Confluent Control Center, Dynatrace, Splunk, DataDog.
- CI/CD pipelines and Infrastructure as Code Terraform, Ansible, Helm.
Responsibilities
Technical Leadership and System Architecture
- Take ownership of designing high- level architecture for critical systems and services.
- Define and evolve the architecture of high-performance, scalable backend systems.
- Make key architectural decisions involving microservices, APIs, messaging, storage, and system integration.
- Ensure that technical solutions align with business objectives, system scalability, and operational requirements.
- Collaborate with Architects and Engineering Leads to create technical roadmaps that support product growth and long-term system health.
- Communicate architectural concepts and trade-offs clearly to both technical and non-technical audiences.
- Identify technical debt and refactor where appropriate to improve code readability, reliability, and resilience, while keeping solutions simple and avoiding unnecessary complexity.
Software Development and Quality
- Lead the development of robust, maintainable backend solutions using C# and .NET Core and above.
- Champion clean code principles, modern design patterns, unit testing, and secure coding practices.
- Conduct code and design reviews, setting the standard for software quality across multiple Teams.
- Help Teams adopt best practices in CI/CD, version control, containerisation, and automation.
System Monitoring, Performance and Optimisation
- Lead troubleshooting and root cause analysis for complex production issues.
- Use tools like Prometheus, Grafana, ELK, or Confluent Control Centre to monitor distributed systems.
- Continuously evaluate and optimise system performance through load testing, tuning, and scaling strategies.
Security and Compliance
- Ensure all software solutions follow secure coding standards, encryption practices, and regulatory compliance requirements.
Mentorship and Technical Growth
- Mentor development teams, helping them grow their technical skills and architectural thinking.
- Promote engineering excellence through knowledge sharing, workshops, and code walkthroughs.
- Influence technical culture by being a thought leader and advocating for collaboration, innovation and continuous improvement.
Qualifications
Job Specification
- A completed or studying towards a degree or Diploma in Computer Science, Computer Engineering, Information Technology, Information Systems, or a related technical computer system discipline.
- 10+ years of software development experience, with 5+ years focused on specialist tech stack systems.
- Technical leadership experience is required.
- Proficiency with distributed systems.
- At least 5 years working experience with monitoring tools Dynatrace, Prometheus, Grafana, Splunk, Datadog and Data storage MS SQL, Cockroach DB, Redis, Elastic, Couch,
- Familiarity with CI/CD pipelines, DevOps tools, container technologies Docker, Kubernetes Devops tools, and infrastructure as code Terraform, Ansible, Helm, Etc.
- Expert level of experience with C# or .NET Framework and .NET Core.
- Experience in Event Driven systems Kafta advantageous.
- Ability to effectively communicate technical concepts to non-technical stakeholders.
- Capability to analyse complex technical issues and develop creative solutions.
- Experience working in a Team environment, collaborating with cross-functional Teams.
- Excellent analytical and problem-solving skills.
Apply Before 08/31/2026