Software Development Team Lead – Cape Town.

The main purpose of this role is to manage the team of Software Developers to ensure the successful translation of complex requirements into maintainable code that can be adapted to the changing needs of the business.

The Software Development Team Lead reports directly to the Domain Engineering Lead.

This position is required to manage and lead a team of Software Developers and Senior Software Developers to ensure the development tasks related to a project are completed within the specified timelines and in adherence to the company standards.

They are responsible for driving and monitoring the development and delivery of multiple projects across the team and maintaining a high-level view of all project details within their team.

Internal liaison takes place across the IT team as well as with project stakeholders. External liaison is limited.

Duties and Responsibilities (Include but is not limited to):

  • Allocate work to the relevant software developers based on the business priorities and architectural roadmap
  • Participate in all relevant planning meetings
  • Direct team to work in the most optimal way within the current Agile Framework
  • Provide technical guidance to Software Developers
  • Liaise with the Chief Product Owner to decide on releases and timeframes
  • Take responsibility for the ultimate successful deployment of all projects within the team
  • Ensure the overall quality of development and delivery
  • Oversee code reviews to ensure code quality
  • Drive the delivery of projects across their team of developers
  • Maintain aerial view on all details and aspects of project delivery
  • Monitor and police the progress towards delivery dates and timelines
  • Ensure obstacles and blockers are removed
  • Act as an escalation point for Software Developers
  • Act as an escalation point for the business regarding delivery of projects
  • Investigate support issues escalated by business
  • Ensure issues are investigated and resolved timeously
  • Actively code as part of the team
  • Keep up to date with the latest industry trends, tools and standards
  • Ensure a good understanding and knowledge of agile programming practices and industry standards. eg. XP, TDD, Pair programming, SOLID etc.
  • Liaise with the relevant stakeholders regarding the development and delivery of projects
  • Provide weekly reports to the Head of Engineering regarding all projects
  • Report to business on the delivery priorities and timelines
  • Attend KPI meetings and 1on1s with Head of Development and Technology Solutions
  • Raise any challenges experienced or areas of development with the Head of Engineering
  • Maintain current knowledge and industry best practice
  • Provide team with clear performance standards
  • Conduct formal bi-annual performance reviews with Software Developers
  • Monitor staff compliance to HR policies and procedures
  • Conduct the recruitment and promotion of staff in line with HR policies and procedures
  • Communicate relevant information to individuals/team through various communication mediums
  • Effectively motivate and identify ways to develop the development team

Key Requirements:

  • Grade 12 or equivalent (Essential)
  • Formal programming qualification (Desirable)
  • 2 years experience leading a team (Essential)
  • +5 years experience as a .NET developer (Essential)
  • Experience in designing, developing, testing, deploying systems (Essential)
  • Knowledge of .NET platform and C# development language
  • Knowledge of project management principles
  • Knowledge of software development methodologies
  • Knowledge of Linux command line
  • Knowledge of caching, version control, message queues, issue tracking, monitoring, database transactions, testing

Additional Skills:

  • Time management skills
  • Organisational & administrative skills
  • Attention to detail
  • Analytical skills
  • Working within a structured delivery environment and in accordance with best practices & standards

Desired Skills:

  • .Net
  • C#
  • Linux
  • Project Management
  • Systems Development Life Cycle (SDLC)

Learn more/Apply for this position