Software Engineer - Java /Back End
Software Engineer - Java /Back End
Hybrid - 2 days per week in the office
Java, PostgreSQL, API
We are looking for an experienced Back End Developer with excellent Java, PostgreSQL and API skills due to software development moving from an outsourced model to in-house.
Working alongside the development team you will:
- Be highly involved with knowledge transfer, including code walkthroughs, pairing sessions, and documentation reviews with the outgoing external team.
- Gain understanding of the current Java application architecture - service boundaries, dependency injection patterns, build system, and deployment configuration.
- Design and implement new back-end features, enhancements, and bug fixes in Java, following agreed coding standards and architectural principles.
- PostgreSQL data model - schema design, migration management (Flyway/Liquibase), indexing strategy, and query optimisation.
- Design, document, and maintain RESTful and/or GraphQL APIs, ensuring consistency, versioning, and thorough OpenAPI/Swagger documentation.
- Identify, catalogue, and systematically address technical debt in collaboration with the wider
Your background and experience will include
- Great communication skills, able to contribute to future roadmaps for the products
- Excellent Java development experience (Java 11+) in a production environment - including Spring Boot, dependency injection, and RESTful API design.
- PostgreSQL skills: schema design, complex query writing, index optimisation, and migration tooling (Flyway or Liquibase).
- Experience designing and documenting APIs using OpenAPI/Swagger
- Proficiency with build tools - Maven or Gradle - and a modern Java development workflow.
- Understanding of software design principles (SOLID, DRY, Clean Architecture)
- Familiarity with containerised deployment environments (Docker, Kubernetes) from a developer perspective.
- Understanding and interest in AI coding assistants - Claude Code, GitHub Copilot, Cursor, or equivalent