EXPERIENCE
Essential skills and experience
- Deliver software products which make up services for our citizens to consume
- Transform business requirements into production ready code
- Ensure system robustness, resilience and stability
- Design and develop reusable libraries and services and promote reuse across the department
- Produce comprehensive suites of automated unit and integration tests to ensure code quality
- Assure there is a fit for purpose, robust automated test suite
- Assist in the development of medium-long term strategies for products
- Define version control strategies for the source code of the product
- Identify and resolve issues preventing delivery or continuation of software engineering activities
- Collaborate across teams and liaise with Principal Software Engineers and Technical Architects to investigate technical solutions
- Produce comprehensive technical documentation for wider consumption
- Identify and support the resolution of infrastructure faults
- Provide 3rd line support on products developed, including out of hours support as and when required
- Engage with Software Engineering teams providing technical leadership and guidance. Including coaching and mentoring your team and their professional development
- Contribute and set strategic direction for product team
- Collaborate & share knowledge and good practice with the wider software engineering team
- Experience of working in self-managing Agile teams ensuring impediments and blockers are mitigated or removed
- Recent experience with Java 8 (or newer)
- Demonstrable understanding and experience of Test Driven Development, Business Driven Development, SQL and noSQL database applications such as Postgres, MySQL, and MongoDB
- Experience in developing on cloud based environments like AWS and of APIs, RESTful services and Microservice Architectures
Nice-to-have skills and experience
- Transform business requirements into production ready code
- Ensure system robustness, resilience and stability
- Design and develop reusable libraries and services and promote reuse across the department
- Produce comprehensive suites of automated unit and integration tests to ensure code quality
- Assure there is a fit for purpose, robust automated test suite
- Assist in the development of medium-long term strategies for products
- Define version control strategies for the source code of the product
- Identify and resolve issues preventing delivery or continuation of software engineering activities
- Collaborate across teams and liaise with Principal Software Engineers and Technical Architects to investigate technical solutions
- Produce comprehensive technical documentation for wider consumption
- Identify and support the resolution of infrastructure faults
- Provide 3rd line support on products developed, including out of hours support as and when required
- Engage with Software Engineering teams providing technical leadership and guidance. Including coaching and mentoring your team and their professional development
- Contribute and set strategic direction for product team
- Collaborate & share knowledge and good practice with the wider software engineering team