The Software Developer will contribute to the implementation of software solutions through the production of high-quality code. The Software Developer is involved in key stages of the development lifecycle throughout the build and deployment of the software through to providing support during the life of the service. They will normally carry out these activities on work of a lower complexity/risk profile than senior members of the team or will have appropriate support and oversight on more complicated work.
The Software Developer brings coding expertise to the team, working alongside others to interpret design and architecture information and to produce quality code that is efficient and maintainable to resolve the problem. They continuously work to update their knowledge & skills and will take on increasingly complex work as their experience grows.
- Work with the team to deliver coding and design, including reports and prototypes, researching and trialling new technologies as appropriate and taking account of other outputs such as User Research, and Business Analysis.
- Carry out all appropriate build activities including; design, code, unit test, quality review and deployment of software solutions using agreed technologies, ensuring compliance with design and coding standards.
- Throughout the development process, contribute to forward planning activities and align their own workload to team delivery timescales.
- Ensure the appropriate level of documentation is completed.
- Develop an understanding of infrastructure and deployment issues, contributing to their resolution prior to go live.
- Support live incidents when needed, taking action to fully understand user issues and ensure they are dealt with appropriately.
- Undertake agreed development activity, to deepen knowledge and skills and broaden development experience.
- Share knowledge with others both within the developer community and beyond.
Technical skills and qualifications:
A qualification in Information Technology or a related area (Degree Level or equivalent) and/or industry experience in an IT field.
Essential Experience criteria:
Demonstrate experience in:
- Full lifecycle application development
- Using development methodologies e.g. Agile (Scrum)
Experience in any of these development areas:
- HTML 5 / CSS
- RESTful services
- Continuous Integration
- Message Queues e.g. RabbitMQ
- Frameworks e.g. Flask
- Templating engines e.g Jinja2
Good communication skills and a logical analytical approach to problem solving
Have a positive and focussed attitude to achieving outcomes
- Experience of participation in software development projects
- System analysis techniques
- Source code management (e.g. Git)