Posted: 11 April 2025
Job Details
Role: Java Software Development Manager
Location: Hybrid (Centurion)
The primary function of the Software Development department is to drive technological innovation and maintain the company’s competitive systems and technology edge in the market. This department is dedicated to creating, developing, and implementing high-quality software solutions that align with the company’s strategic business objectives. By leveraging the latest technologies and best practices in software engineering, the department aims to enhance the customer experience, improve operational efficiency, and support the company’s growth and expansion.
In addition to product development, the Software Development department is responsible for the adoption of new software development trends, continuous improvement of existing software platforms and environments, and evolving technologies to meet changing customer needs. It also focuses on fostering a culture of learning and development among its staff, encouraging continuous professional growth and adaptation to new technological advancements.
Head of department |
Head of Software Development |
Direct Line Manager |
Head of Software Development/Data |
||||||
Level of role |
Middle Management |
Remuneration |
Market-related |
||||||
Working conditions |
Hybrid (ZA 08:00 to 16:30) |
Benefits |
25 days annual leave. 2-Month Sabbatical. |
||||||
Internal contacts |
In this role the following internal stakeholders will be your primary contacts: Head of Software Development, Team Lead, Software Developers, Product owners, IT, Analytics Team, Data Team, and BI Team |
||||||||
External contacts |
In this role the following external stakeholders will be your primary contacts: Customer and Partner technical teams Potential Outsource or Contract Software Developers |
||||||||
Role complexity |
This role can be described as: High Complexity |
||||||||
Factors that add complexity to the role |
Is this role complex in nature, and if so, what are the factors that contribute to the complexity of the role (select the applicable / add your own and provide a brief description). Some examples are: Scope of responsibility: Focused on Product and/or Industry Problem-Solving Requirements: Design, Debugging Interpersonal and Team Dynamics: People-leadership, Intra-team co-ordination & Communication across different levels and competencies. Technical or Specialized Skills: Full stack developer (ORM, Hibernate, OO, REST, SOAP, DEVOPS) Level of accountability: Adherence to Architecture, Software delivery and Team health External factors: Security vulnerabilities, industry standards & best practise Learning and development requirements: Mentorship (based on band), up to date with technology trends. People Management: Managing the Care and Growth the software development team.
|
||||||||
DIRECT REPORTS |
|||||||||
Role Titles |
Team Leads and Senior Software Developers |
||||||||
ROLE REQUIREMENTS |
|||||||||
Mandatory education |
Relevant Degree / Diploma qualification in Computer Science is essential. |
||||||||
Additional education |
Azure-related certifications, such as Microsoft Certified: Azure Developer Associate, Azure Solutions Architect Expert, or Azure DevOps Engineer Expert, are a significant advantage |
||||||||
Mandatory experience |
• A proven record of leading teams and a passion for doing so • At least 10 years of software development experience across the full project lifecycle
• Familiarity with Agile software development methodology
|
||||||||
Mandatory knowledge |
Strong People Management capabilities. Strong background in Java Development, along with modern web development frameworks like Angular, React and Springboot. Proficiency in latest IntelliJ Object-oriented design and development Implementation of architectural and software design patterns Database development (DB design, stored procedures, MySQL) Experience with containerization technologies, such as Kubernetes and Docker Proficiency in Azure DevOps and Git source control Unit testing frameworks and effective unit tests
|
||||||||
Additional knowledge |
A zest for learning, pushing technical limits, and discovering innovative solutions Exceptional analytical and problem-solving skills Good verbal and written communication skills Keen attention to detail and the ability to drive solution-based thinking
|
||||||||
PURPOSE OF ROLE |
|||||||||
Works in the software development department to create innovative, efficient, and high-quality software solutions that align with the company’s strategic objectives. This role requires the Management of the Software Development Department and the Team of Software Developers. Implementation of the development processes, best practices in software engineering, adhering to industry standards, and engage in effective collaboration between internal stakeholders, and external partners. Informing of budget requirements and staffing requirements for the development team(s). |
|||||||||
DESCRIPTION OF KEY ROLE CONTRIBUTIONS |
|||||||||
CONTRIBUTION |
DESCRIPTION |
||||||||
Stakeholder engagement |
Leading the development team, with a focus on team growth and success Providing team leadership and coaching Managing project resources Monitoring and reporting on performance Participate in product meetings the business, contributing to delivery planning. Overseeing the operations and deliverables of the development function Executing company quarterly and yearly objectives Implementing software development best practices and tools Designing system architecture
|
||||||||
Team |
Focus on department growth and success aligned to the level of the role. • Fostering Team Growth and Professional Development: Participate in mentorship and training programs. • Strive for continuous learning and upskilling. • • Promoting a Collaborative and Inclusive Team Environment: Cultivating a culture of open communication and teamwork. • Take part in team-building activities. • Encouraging knowledge sharing and collaborative problem-solving. • Ensuring a diverse and inclusive work environment where all team members feel valued. • • 3. Clear Communication on Goals and Expectations: Executing on company product objectives and project milestones. • Setting achievable, yet challenging targets to motivate the team. • • 4. Empowering Team Members: Sharing responsibilities effectively and keeping team members accountable. • Encouraging autonomy and decision-making within the team. • Supporting innovation and creative approaches to problem-solving.
|
||||||||
Operations and Deliverables |
Overseeing the operations and deliverables of the development function aligned to the level of the role. • Quality Assurance and Best Practices Implementation: Implementing of quality assurance measures. • • Staying Abreast with Technology Trends and Advancements: Keeping updated with the latest technological developments. • Evaluating and incorporating new tools and technologies that can enhance productivity and product quality. • Ensuring your skills and methods stay current and competitive. • • Risk Management and Problem Resolution: Identifying potential risks in the development department and raising it with the Head of Software Development. • Troubleshooting and resolving issues that arise during the development lifecycle and operations. • • Managing Self Managing the workload to prevent burnout and ensure a balanced approach to project delivery. • Owning tasks and items from assignment to delivery •
|
|
|||||||
|
|
||||||||
Technology guidance |
Adhering to software development best practices aligned to the level of the role. • Coding Standards and Practices: Following coding standards to ensure code quality and maintainability. • Following practices like Test-Driven Development (TDD) and Pair Programming. • • Review Processes and Documentation: Supervise code review processes. • • Continuous Integration and Continuous Deployment (CI/CD): Streamlining the build and release process to improve efficiency and reduce errors. • • Security and Compliance: Ensuring compliance with relevant data protection and privacy regulations. • • Performance Optimisation: Focusing on optimizing software for performance and scalability. • Regularly analysing and refining code for efficiency improvements. •
|
|
|||||||
Architecture |
Play a role in design sessions defining system architecture aligned to the level of the role. Architectural Planning and Design: Designing scalable, robust, and efficient system architectures.
Contribute to strategic decisions on architectural patterns and frameworks. Apply modular design for easier maintenance and better scalability. Ensuring systems are designed for easy integration with other applications and services. Focusing on interoperability and compatibility with various platforms and technologies. Designing code that can evolve with changing business needs. Planning for scalability to handle increased load and future growth. Investigating and recommending appropriate technologies and tools that align with project needs and company objectives. Balancing cutting-edge technologies with proven, stable solutions. |
|
|||||||
Corporate Citizenship |
Be a responsible employee |
|
|||||||
CAPABILITY REQUIREMENTS |
|
||||||||
Technical |
The technical requirements for this role are: Analysing and interpreting technical designs, requirements, and patterns. Technical proficiency in order to lead the Development Department and to interact with Team Leads and Senior Developers. Leading the decisions to adopt new Technology stacks and tools.
|
|
|||||||
Behavioural |
The behavioural requirements (as per competency library) for this role are: • Critical thinking • Problem solving • Teamwork / collaboration • Quality orientation • Communication
|
|
|||||||
Leadership behaviours |
The leadership requirements (as per competency library) for this role are: • Accountability • Care and Growth of Software Development Team Members • Courage and confidence • Emotional stability • Raises the standard
|
|
|||||||