As Head of Engineering you will be responsible for the assurance of engineering execution of all aspects across a range of programmes spanning Digital. You will lead the building of Software Engineering capability and provide career development opportunities to the Engineering community.
You will guide the ways in which teams work. You will be proficient in a wide range of technical systems and involved in identifying appropriate technology and approaches, deciding when software should be written.
You will contribute to, and lead, the community, providing technical leadership, coaching and mentoring the team, promoting knowledge-sharing and adoption of good practice.
- Represent the Department as an expert at interdepartmental discussions
- Providing technical leadership and guidance to multiple product teams
- Lead on the creation and sharing of knowledge, good practice and strategies with the wider software engineering community, influencing the adoption and strategic evolution
- Assure the robustness, security, performance and stability of the work teams produce
- Assure teams build automated test suites to support continuous integration, regression testing and code quality
- Ensure RESTful application programming interfaces (APIs) built by teams follow best practice, are documented and re-usable
- Actively lead in the Engineering community, identify and champion good practices, share experiences and contribute to department standards and guidance on Software Engineering
- Ensure you and your teams implement best-practices to coding securely and defensively
- Train, mentor and coach colleagues and peers utilising pair-programming
- Identify and resolve issues preventing delivery or continuation of engineering activities
- Lead collaboration across teams and liaise with Architects to investigate technical solutions
- Assure teams produce comprehensive technical documentation
- Assure continuous integration pipelines are in place using department guidelines
- Share your experiences through blog posts, tech talks and community events
- Lead in recruitment and career development of colleagues, shape career paths
- Identify skills gaps and key dependencies within our product teams
- Service Support: Demonstrates a breadth of understanding and guides others. Practiced at preventing and diagnosing issues. Ensures all requests for support are dealt with according to set standards and procedures.
- Programming and Build: Sets local or team-based standards for programming tools and techniques and the selection of appropriate development methods. Advises on application of standards and methods and ensures compliance.
- Development Process Optimisation: Sets strategy for resource management and process optimisation within solutions development, authorises the allocation of resources for solutions development programmes, and maintains an overview of the contribution of such programmes to organisational success. Liaises with client functions to establish business requirements and identifies, proposes, initiates and leads significant solution development programmes. software development project, providing method specific technical advice and guidance to project stakeholders.
- Modern Standards Approach: Strong understanding and application of the most appropriate modern standards and practices. Takes responsibility for coaching and guiding others.
- Systems Design: Controls systems design practice within an enterprise or industry architecture. Influences industry-based models for the development of new technology applications. Develops effective implementation and procurement strategies, consistent with business needs. Ensures adherence to relevant technical strategies, policies, standards and practices.
- Development Process Optimisation: Sets strategy for resource management and process optimisation within solutions development, authorises the allocation of resources for solutions development programmes, and maintains an overview of the contribution of such programmes to organisational success. Liaises with client functions to establish business requirements and identifies, proposes, initiates and leads significant solution development programmes.
- An expert understanding of Information Security, good knowledge of OWASP Top Ten and security concepts such as Denial of Service, SQL Injection and Cross Site Request Forgery.
- Capacity & Availability Management: The management of the capability, functionality and sustainability of service components (including hardware, software, network resources and software/infrastructure as a service) to meet current and forecast needs in a cost effective manner that is aligned to the business.
- Extensive experience of behaviour driven development (BDD), test driven development (TDD), unit testing and an appreciation of software quality engineering
- Experience of software development process optimisation. Establishing standards of systems integration and testing. Can also lead Software Engineers in test-driven development alongside the use of automated test frameworks. Managing delivery and release processes in a Continuous Delivery environment. Knowing what a good CI and CD process looks like and how to implement for the product.
- Experience of leading and continuously improving multiple Software Engineer teams in a complex, multi-disciplinary environment, delivering products within specific time-scales and working alongside multiple senior stakeholders. Leading the translation of user stories and guide teams in the right direction. Demonstrating strong application design capabilities. Extensive commercial experience in software engineering
- Extensive experience of working effectively and communicating technical concepts to a non-technical audience, including stakeholders
GSA Techsource Ltd operates as an Employment Agency when recruiting for permanent vacancies, and an Employment Business when recruiting for contract vacancies. All contract rates quoted are to Ltd companies.