Key Responsibilities and Accountabilities:
1. Design and develop software to meet business and user needs.
2. Investigate and understand user needs and how they translate to application features.
3. Write clean, secure and well-tested code.
4. Review existing code to reprogram, refactor, update and add new features.
5. Find ways to improve system robustness, resilience and stability.
6. Implement cloud infrastructure, DevOps pipelines and related services.
7. Manage, coach and mentor more junior colleagues.
8. Help the team to inspect, adapt and continually improve.
Essential Criteria (Please refer to these in your Supporting Statement):
9. Agile working. You can demonstrate knowledge of Agile methodology. You can apply an Agile mindset to all aspects of your work. You can work in a fast-paced, evolving environment and use an iterative method and flexible approach to enable rapid delivery.
10. Development process optimisation. You can identify process optimisation opportunities with guidance and contribute to the implementation of proposed solutions.
11. Information security. You can understand information security. You can design solutions and services with security controls embedded, specifically engineered with mitigation of security threats as a core feature.
12. Modern standards approach. You can competently apply a modern standards approach and guide others to do so.
13. Programming and build (software engineering). Demonstrable experience of any type of coding. You can use the agreed specifications to design, code, test and document programs or scripts of medium-to-high complexity, using the right standards and tools. Experience in any of the following technologies and platforms is desirable: AWS, Oracle, PostgreSQL, Terraform, Docker, Jenkins, Angular, JavaScript/TypeScript, Object-Relational Mapping, node.js, Git, GitHub, GOV.UK design system.
14. Prototyping. You can approach prototyping as a team activity, actively soliciting prototypes and testing with others. You can establish design patterns and iterate them. You can use a variety of prototyping methods and choose the most appropriate.
15. Service support. You can identify, locate and fix faults.
16. Systems design. You can design systems using appropriate design standards, methods and tools, and ensure they are applied effectively.
17. Systems integration. You can define the integration build. You can co-ordinate build activities across systems. You can understand how to undertake and support integration testing activities.
18. User focus. You can collaborate with user researchers and can represent users internally. You can explain the difference between user needs and the desires of the user. You can champion user research to focus on all users. You can prioritise and define approaches to understand the user story, guiding others in doing so. You can offer recommendations on the best tools and methods to use.