Job Title

Java Software Development Manager

South Africa, Gauteng
Back to jobs
Market Related
Area: South Africa, Gauteng
Sector: Real Estate
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