- Location
- Johannesburg
- Department
- IT
- Seniority
- Senior
- Experience
- 9+ years
- Closing date
- Today
- Source
- CareersPage
Description
Summary o Role
We need a senior, hands-on software engineer who can design, develop and support enterprise applications across the front end, application-services and database layers. The person will operate as a senior individual contributor with technical-lead responsibilities. They must be able to translate complex business requirements into maintainable solutions, guide other developers, integrate with enterprise systems and take ownership of production outcomes.
Core responsibilities
- Design and develop enterprise web applications using C#, .NET and Angular.
- Build and maintain REST APIs and system integrations.
- Design and optimise SQL Server databases, queries and stored procedures.
- Convert business requirements into practical technical designs.
- Develop maintainable front-end components using Angular and TypeScript.
- Investigate and resolve application defects across front-end, API and database layers.
- Participate in architecture and design discussions.
- Perform code reviews and promote engineering standards.
- Mentor junior and intermediate developers.
- Support testing, deployment, monitoring and production operations.
- Identify technical debt, operational risks and improvement opportunities.
- Collaborate with product owners, analysts, testers, infrastructure teams and business stakeholders.
- Produce concise technical documentation for important designs and operational processes.
Qualifications and Experience
- Matric and a Tertiary Degree
- 9 years of professional software-development experience
- 7 years working with C# and the .NET ecosystem
- Strong experience with Angular and TypeScript
- Strong knowledge of HTML, CSS and responsive application design
- Strong practical experience with SQL Server and T-SQL
- Experience designing and consuming REST APIs
- Experience integrating multiple internal or external systems
- Understanding of authentication, authorisation and secure-development practices
- Experience with Git-based development workflows
- Experience diagnosing and supporting production applications
- Working knowledge of automated testing and code-quality practices
- Experience working in Agile delivery environments
Highly desirable experience
- Azure services and Azure DevOps
- Docker and containerised workloads
- CI/CD pipelines
- Legacy application modernisation
- CQRS or similar application architecture patterns
- Mobile development using Flutter, Ionic or comparable technologies
- Node.js or React
- Application observability, logging and performance monitoring
- Experience in consulting or complex enterprise environments
- UI/UX or usability experience
Leadership expectations
- Independently lead a technical workstream
- Break a solution into deliverable increments
- Identify technical and delivery risks early
- Explain technical decisions clearly
- Provide constructive code-review feedback
- Mentor less-experienced developers
- Challenge weak designs professionally
- Take responsibility for a solution after deployment
Behavioural qualities
- Ownership rather than task completion
- Structured problem-solving
- Intellectual curiosity
- Attention to detail
- Practical judgement
- Clear written and verbal communication
- Patience when supporting colleagues
- Comfort working with incomplete requirements
- Willingness to work in existing codebases
- Ability to balance delivery speed with maintainability