Head of Software Engineering
The development manager exhibits the principles and practices of Lean-Agile leadership which emphasises the value of nearly autonomous, self-organising, cross-functional teams and Agile Release Trains. Further, the manager has personal responsibility for coaching and career development of direct reports, takes responsibility for eliminating impediments, and actively evolves the systems in which the development teams operate. They also serve as an integral member of a high-performing team. Moreover, they are accountable for the effective value and quality delivery of their teams.
Provide hands-on leadership to multiple Agile onshore and offshore development teams throughout all stages of the software development lifecycle, ensuring delivery of solutions that are bug free, effective, robust and performant. Motivate and coach team members to deliver high levels of effectiveness. Collaborate with other key stakeholders to ensure the delivery of production ready solutions that meet the needs of the business. A summary of responsibilities is highlighted below.
Personal and team development
- Lead, manage and mentor the development teams whilst continuously assessing whether the right skills are on board and appropriately allocated.
- Alongside HR, identify training needs and contribute to staff development through the specification, execution and evaluation of training plans.
- Encourage good collaboration, interaction and communication between the development teams and any other external teams/departments within the organisation.
- Continually measure the productivity and performance of the development teams, handling any technical or personnel issues firmly and efficiently.
- Ensure that all development team members follow System C’s established processes and procedures and use the most appropriate tools for each task.
- In conjunction with HR, deliver 360 appraisals feedback and carry out objective setting for individual team members, conforming to standard company processes.
- Monitor motivation and wellbeing within your team and pro-actively act on any potential issues through open and constructive dialogue.
- Highlight personal development issues to Head of Software Engineering and HR, and work with individual team members to plan actions to address.
- Identify and act immediately to resolve any conflicts arising either within your teams or across functions.
Programme execution and delivery
- Participate in Inspect and Adapt workshops; support teams by helping them remove systemic impediments and implementing continuous improvement backlog items.
- Work with the Head of Software Engineering, Solution Owners, Product Managers and Product Owners to ensure the workload is scheduled and managed within each development team.
- Protect teams from distractions and unrelated or unnecessary work.
- Assist the Release Train and Solution Train Engineers with PI Planning readiness and Pre- and Post- PI Planning activities.
- Participate in PI planning, End of Sprint, System and Solution Demonstrations.
- Influence Product Management and Solutions Owners on areas of potential product improvements.
- Proactively manage progress, dependencies and risks both within and outside your team ensuring all development activities conform to departmental standards and processes.
Process alignment and quality
- Promote positive communication of management initiatives. Identify and challenge openly negative communication which has the potential to impact morale. Offer a listening ear to any concerns in a private setting where it will not impact on the team.
- Help establish, enforce and monitor development processes that affect the software development lifecycle including development workflows, best practices, coding standards, design standards, and build and releases processes etc.
- Alongside the QA manager, ensure the production of high quality software through the establishment, enforcement, and monitoring of unit testing, peer reviews and automation tests etc.
- Ensure that regression issues are kept to an absolute minimum, and the ones that are detected are dealt with using processes including root cause analysis and actions from lessons learnt to mitigate against further occurrences of the same issue.
- Monitor the performance of your teams (velocity and throughput) providing regular updates to the Head of Software Engineering, Solution Owner and CTO, where required.
- Proactively report the progress of deliverables and mitigating actions where risks arise. This includes scheduled and ad-hoc requests, and updating status views in formal systems, such as Jira and Confluence, ensuring accurate and complete data is available for reporting purposes.
In addition to the above, the dev manager is responsible for any other activities in support of the business which can reasonably be expected to fall within the capabilities of the employee.
Education, experience & skills
Whilst it is accepted that the individual education and experience profile for Development Managers will vary, the following is provided as a guideline:
- Degree or equivalent in a business or IT related discipline or equivalent professional experience in a software development environment.
- Significant development experience with excellent software engineering skills and specialist knowledge in several technical areas.
- Excellent leadership skills and extensive experience of managing small discrete teams of engineers in successfully delivering software development projects.
- A thorough understanding of the Agile Scrum methodology supported by the skills to guide and coach teams in the application of the methodology.
- Good understanding of principles, theories, practices and techniques for managing activities involved in planning and delivering software development projects.
- Experience of collaborating and influencing cross-functional teams in the successful delivery of software development projects.
- Strong organisational, analytical and problem-solving skills.
- Excellent verbal and written communication skills.
- Excellent interpersonal skills with the ability to manage, influence, negotiate and collaborate with a variety of stakeholders
- Strong decision-making skills.
Desirable but not essential skills
- Experience in cloud-based solutions specifically Microsoft Azure or equivalent.
- Experience of CI/CD environments.
Please apply in writing, sending a covering letter and CV to email@example.com