Job Information
Job Description
Job Specification: Software Development Manager
Job Title: Software Development Manager
Location: Johannesburg
Job Summary: We are looking for a dynamic and experienced Software Development Manager to lead our software development team within the Technology Implementation stream. This role is critical in ensuring the seamless delivery of business-as-usual (BAU) activities while driving innovation and excellence in software development. The ideal candidate will have strong technical expertise, leadership skills, and experience in a Microsoft environment (both on-premises and Azure cloud).
Key Responsibilities:
- Oversee the day-to-day operations of the software development team, managing BAU activities and ensuring timely delivery of high-quality software solutions.
- Lead a team of 4-7 software developers, providing mentorship, guidance, and support to enhance team performance and professional growth.
- Collaborate closely with the Heads of IT and other stream leaders (Enterprise Architecture, Service Delivery, Infrastructure, and Delivery & Execution) to align development efforts with organizational objectives.
- Develop, implement, and maintain software development processes, standards, and best practices to improve efficiency and productivity.
- Drive the adoption of Agile methodologies, continuous integration, and DevOps practices within the team.
- Manage the end-to-end software development lifecycle, including requirements gathering, design, coding, testing, deployment, and maintenance.
- Ensure all development projects are delivered on time, within scope, and budget, while meeting or exceeding quality standards.
- Foster a culture of continuous improvement, innovation, and collaboration within the development team.
- Monitor and report on key performance indicators (KPIs) and metrics to assess the team's progress and impact.
- Identify and resolve technical challenges, risks, and issues that may arise during development.
- Stay current with industry trends, emerging technologies, and best practices to drive innovation and maintain a competitive edge.
Requirements
Qualifications:
- Bachelor’s degree in Computer Science, Software Engineering, Information Technology, or a related field. A master’s degree is preferred.
- Minimum of 5-7 years of experience in software development, with at least 3 years in a managerial role.
- Proven experience in managing software development teams in a Microsoft environment (both on-premises and Azure cloud).
- Strong understanding of software development methodologies (e.g., Agile, Scrum) and DevOps practices.
- Proficiency in programming languages such as C#, .NET, or similar.
- Experience with Microsoft Azure cloud services, DevOps tools, and frameworks.
- Strong knowledge of software architecture, design patterns, and best practices.
- Excellent leadership, communication, and interpersonal skills.
- Proven track record of successfully managing multiple projects simultaneously.
- Strong problem-solving skills and the ability to make sound decisions under pressure.
- Ability to work effectively in a fast-paced, dynamic environment.
Preferred Skills:
- Experience with enterprise-scale software solutions and microservices architecture.
- Familiarity with CI/CD pipelines and automated testing frameworks.
- Certifications in relevant technologies or methodologies (e.g., Microsoft Certified: Azure Solutions Architect, Scrum Master).
- Experience in integrating software development with enterprise architecture and infrastructure teams.
- Knowledge of security best practices and regulatory compliance in software development.
Personal Attributes:
- Strong analytical and strategic thinking abilities.
- Detail-oriented with a focus on quality and excellence.
- Highly motivated, adaptable, and results-driven.
- Collaborative and team-oriented mindset.
#J-18808-Ljbffr