Lead Software Engineer | Johannesburg | Permanent
Lead from the front, stay hands-on and help shape the next generation of secure, scalable software. This is an opportunity for an experienced full stack engineer to combine technical leadership with meaningful contribution across architecture, engineering and AI-enabled product development.
As Lead Software Engineer, you will provide hands-on technical leadership to a cross-functional development squad, owning solution design and contributing production-grade code across the front-end, back-end, APIs and database layers. You will help set engineering standards, make architectural decisions, drive modern DevOps and testing practices, and ensure solutions are secure, maintainable and fit for purpose.
The role is deliberately player-coach in nature. You will remain close to the technology while mentoring Senior, Intermediate and Junior developers, conducting code reviews, facilitating technical discussions and helping the team continuously improve. You will also work closely with Product, QA, DevOps, Business Analysis and other stakeholders to translate business requirements into effective technical solutions.
The organisation is an established technology-driven business operating in an environment where software reliability, security, scalability and regulatory responsibility are critical. Its development environment is focused on modern engineering practices, continuous improvement and the practical adoption of emerging technologies, including AI-assisted development and AI-powered product capabilities.
What You'll Do
Design, build, test and deploy end-to-end features across front-end, back-end, API and database layers
Own technical solution design, including data models, API contracts, UI patterns and third-party integrations
Provide technical direction across a development squad while remaining actively involved in production engineering
Define and maintain coding, branching, testing and engineering standards
Lead architectural and technology decisions and document key decisions through appropriate design documentation and ADRs
Establish scalable reference architectures across front-end, services, APIs and data layers
Conduct code reviews and facilitate pair and mob programming to improve technical quality
Champion CI/CD, automated testing, observability, trunk-based development and DevSecOps practices
Use delivery metrics to identify opportunities to improve engineering flow, quality and developer experience
Mentor engineers across different levels and support targeted technical development
Participate in technical interviews, onboarding and capability-building initiatives
Partner with QA to establish appropriate unit, integration, contract, end-to-end and performance testing strategies
Identify technical, delivery and security risks and drive appropriate mitigation
Embed secure-by-design principles, OWASP practices and applicable compliance requirements into development
Drive remediation of technical debt, vulnerabilities and production incidents
Translate business requirements into practical, scalable technical solutions
Maintain clear technical documentation, including architecture diagrams, API specifications, runbooks and READMEs
Champion effective and responsible use of AI coding assistants such as GitHub Copilot, Claude Code, Cursor and ChatGPT
Help define safe practices for AI-assisted engineering, including human review, data protection, IP considerations and evaluation
Design and deliver production AI capabilities using technologies and patterns such as LLMs, prompt engineering, RAG, embeddings, vector databases and function or tool calling
What You Bring
Bachelor's Degree at NQF Level 7 in Computer Science, Software Engineering, Information Technology or a related discipline
10+ years of professional full stack software engineering experience
At least 3 years' experience in a Lead or Senior Engineering role providing technical direction, code review and mentorship
Strong hands-on experience across front-end, back-end, API and database development
Production experience with modern back-end technologies such as .NET/C#, Node.js or Java/Spring
Strong experience with Angular, React/Next.js, Vue/Nuxt, Svelte or comparable modern front-end frameworks
Advanced TypeScript and modern JavaScript capability, together with strong HTML5, CSS3 and responsive design fundamentals
Experience with component-driven architecture, state management and modern front-end tooling
Familiarity with technologies such as NgRx, Redux, Pinia, Zustand, Vite, Webpack, npm, pnpm, Storybook, Material and Tailwind CSS
Practical understanding of accessibility standards such as WCAG and front-end performance optimisation, including Core Web Vitals
Strong API design capability across REST, GraphQL, gRPC and integration patterns
Experience with event-driven and microservices architectures and the ability to make appropriate architectural trade-offs
Strong cloud experience across Azure and/or AWS
Hands-on experience with Docker and Kubernetes, including AKS or EKS where applicable
Experience building and maintaining CI/CD pipelines using platforms such as Azure DevOps, GitHub Actions or GitLab CI
Experience with Infrastructure as Code, such as Terraform or Bicep
Strong Git-based engineering workflow and code review experience
Experience with relational and non-relational databases, including SQL Server, PostgreSQL, MySQL, MongoDB, Redis or DynamoDB
Strong understanding of database design, indexing, query optimisation, migrations and data integrity
Experience with automated testing across unit, integration, contract, end-to-end and load testing
Strong understanding of secure coding, authentication, authorisation, secret management and data protection
Experience using AI-assisted development tools in day-to-day engineering work
Practical experience integrating AI or LLM capabilities into production applications
Understanding of RAG, embeddings, vector databases, prompt engineering, function/tool calling, agent patterns and AI evaluation
Experience working in Agile and DevOps delivery environments
Financial technology, banking, financial services or another regulated, high-availability environment would be highly advantageous
Relevant Azure or AWS certifications would be advantageous
Agile/Scrum or SAFe certification would be advantageous
What Success Looks Like
The squad consistently delivers secure, maintainable, high-quality software with predictable delivery
Technical standards and architectural practices are applied consistently across the team
Engineers are growing in capability through effective mentoring, pairing and technical leadership
Deployment frequency, engineering flow and delivery quality improve through effective Agile, DevOps and CI/CD practices
Technical debt, vulnerabilities and production risks are identified early and actively managed
Systems remain scalable, observable, performant and resilient as business requirements evolve
AI-assisted development improves engineering productivity without compromising code quality, security, privacy or accountability
AI-enabled product features are delivered responsibly, with appropriate attention to cost, latency, safety, data protection and evaluation
Business and technical stakeholders have clear visibility of technical decisions, risks, trade-offs and delivery progress
The Lead Software Engineer remains a trusted technical authority while developing the capability and autonomy of the wider engineering team