Job title: Principal Software Engineer
Job Location: KwaZulu-Natal, Durban
Deadline: November 30, 2025
Skill Set
- Programming Languages: C#, .NET, SQL
- Cloud Platforms: AWS, Azure, OpenShift, Kubernetes
- Observability & Monitoring: Confluent Control Center, Dynatrace, Splunk, DataDog
- CI/CD & IaC: Terraform, Ansible, Helm, pipelines
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 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, containerization, 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.
- Influencetechnical culture by being a thought leader and advocating for collaboration, innovation and continuous improvement.
Qualifications
- Acompleted 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 11/28/2025