Senior Software Engineer
Job Description
A Senior Software Engineer II is a technical leader who demonstrates excellence in designing complex solutions while influencing the entire team through mentorship and technical guidance. This role requires the ability to lead significant development efforts, drive best practices, and translate business needs into scalable technical solutions. The SSE2 works closely with stakeholders to shape product direction, proactively manage technical debt, and elevate team capabilities. Reporting to a Tech Lead, the role demands deep technical expertise, strong leadership, and alignment of technical decisions with business objectives, collaborating with Product Management and Design to understand business needs, shape solutions, and drive operational excellence.
What will you do?Technical Leadership & Solution Design
- Design and implement high-quality, scalable solutions for complex technical challenges.
- Lead development efforts for significant features or components within the team.
- Design robust, scalable components and services with consideration for failure modes.
- Make significant contributions to architecture discussions and technical decision-making within the team.
- Review and guide the team's system designs, ensuring alignment with broader architecture.
- Drive best practices in coding standards, testing methodologies, and operational excellence.
- Establish team-level code quality practices and drive regular refactoring initiatives.
- Consider ROI and business impact when making technical decisions.
Stakeholder Collaboration & Business Alignment
- Work closely with stakeholders to understand business needs and translate them into technical solutions.
- Collaborate effectively with Product Management and Design to shape solutions and improve product functionality.
- Communicate technical concepts effectively to both technical and non-technical stakeholders within the team.
- Align technical solutions with business objectives and consider business implications of technical investments.
- Understand business context deeply and how technical decisions impact business outcomes.
Technical Debt & System Reliability
- Proactively identify and address technical debt within area of responsibility.
- Develop strategies for managing team technical debt in systematic, sustainable ways.
- Design systems with reliability in mind, including comprehensive monitoring and alerting strategies.
- Take ownership of production incidents related to their area, ensuring proper resolution and follow-up.
- Lead incident investigations and conduct thorough postmortems to prevent recurrence.
- Apply systematic approaches to debugging and resolve complex technical issues.
- Provide technical mentorship to team members and actively help grow their capabilities.
- Influence the entire team through technical leadership, coaching, and guidance.
- Facilitate team decisions and help resolve technical disagreements constructively.
- Mentor team members on both technical skills and soft skills development.
- Provide regular constructive feedback through code reviews and one-on-one interactions.
- Help less experienced engineers develop problem-solving approaches and technical judgement.
Operational Excellence
- Drive operational excellence through robust system design and engineering practices.
- Design systems with comprehensive monitoring, logging, and alerting capabilities.
- Lead the team's approach to incident response and drive improvements in operational processes.
- Ensure the team maintains high standards for code quality, testing, and system reliability.
- Champion automation and reduction of operational toil within the team.
- Relevant degree or diploma in Computer Science, IT, or related field (or equivalent practical experience).
- Typically 8+ years of software engineering experience.
- Strong knowledge of multiple programming languages, best practices and performance characteristics.
- Experienced with several frameworks and capable of contributing improvements and custom extensions.
- Extensive experience designing, developing, and testing distributed, high-volume and highly reliable software.
- Experience with cloud-based infrastructure and operational practices.
- Solution Design Capability: Proven ability to design robust, scalable solutions for complex problems whilst considering trade-offs, failure modes, and long-term maintainability. Makes sound architectural decisions for team-owned components.
- Technical Leadership: Demonstrated ability to influence the team through technical excellence, mentorship, and guidance. Drives best practices and elevates team capabilities through coaching and example.
- Business Acumen: Deep understanding of how technical solutions support business objectives. Considers ROI of technical investments and aligns technical work with business goals. Understands product strategy and market context.
- Communication Excellence: Strong communication skills to translate technical concepts for non-technical stakeholders, facilitate team discussions, and influence decision-making. Creates clear technical documentation.
- Problem-solving Excellence: Applies systematic approaches to debugging and resolving complex issues. Identifies root causes and develops comprehensive solutions that address underlying problems, not just symptoms.
IT Data Analysis
Software design and deployments
Platform management and integration
Business Requirements
Personal AttributesOrganisational savvy - Contributing through others
Manages complexity - Contributing through others
Plans and aligns - Contributing through others
Optimises work processes - Contributing through others
Our commitment to transformationThe Sanlam Group is committed to achieving transformation and embraces diversity. This commitment is what drives us to achieve a diverse, inclusive and equitable workplace as we believe that these are key components to ensuring a thriving and sustainable business in South Africa. The Group's Employment Equity plan and targets will be considered as part of the selection process.
About This Role
Career insights for Software Developers positions