Software Development & Delivery Engineer
JOB REPORTING TO: Head of Backend Delivery
Our products solve problems for water companies and the industry in the real world. They are critical to the environment, economy, and daily life. We use data, analytics, machine learning, and AI to deliver insights to water networks and assets through SAAS and cloud-based services. Our team is expanding to improve our existing products, grow our customer base, and increase revenue.
About the role:
Working as part of a development and delivery team, designing, developing, implementing, testing, maintaining, supporting and delivering backend features, functionality and APIs for our customers.
This will involve working with the frontend team, understanding and appreciating the required information and data and presenting this as part of the product interfaces. This will need a good appreciation of design principles, and the knowledge to realise these in a delivery.
- Capture, document, estimate and prioritise sets of features in an Agile team environment, then implement and test these as part of delivery.
- Working with a team and in delivery to test and validate any features, fixes or updates. Contribute to delivery process and development environments.
- Build in as needed custom features while seeking to maximise reuse and productisation of features.
- Implementation and delivery of designs/fixes as part of a continuous delivery mechanism through to live deployments.
- Addressing bugs/changes, and problem solving issues as part of wider team.
- Prepare and present potential delivery options including estimating, costing and prioritising.
- As part of team, plan for future developments including contributions to team structures, roles and requirements with an awareness of all existing and future customers in mind.
- At least Second Class Honours Degree in Computer Science, Software Engineering or Electrical and Electronic Engineering or other related discipline.
- 2+ years of experience and familiarity with development and delivery.
- Python development and tooling.
- Proven experience of Development and delivery.
- Good level of Python programming skills and experience
- Strong Presentation and Communication skills
- Experience of CI/CD tooling
- Willingness to engage and work with others as part of team with shared direction.
- Strong work ethic with an understanding that we are in a growth phase with lots of opportunities to make improvements.
- Ability to review and provide feedback as needed to rest of team on areas for improvements and updates.
- Can do, problem solving mindset.
- Curious and willing to onward develop and learn.
- Familiarity and experience with agile development in delivery
- Experience in other programming languages, specifically C++, C# or Java
- Experience in Automation/Testing frameworks
- Experience of Continuous Integration/Development
- Experience of API integration/development
- Experience of test/deployment automation
- Experience of AWS services