Senior Java Developer
- Discuss this with your agent
- Open in Claude
- Open in ChatGPT
Prepare application
- Draft this with your agent
- Open in Claude
- Open in ChatGPT
Role details
Tech stack
+23 more
Job description
- Design, develop and maintain high-quality Java applications and services
- Develop scalable, robust and highly available microservices
- Work extensively with Java and Spring Boot
- Contribute to solution architecture and technical design
- Participate in technical discussions, design workshops and peer code reviews
- Produce clean, maintainable and well-tested code
- Identify opportunities to refactor and improve existing systems
- Contribute to technical decisions and help identify and manage technical debt
- Develop and work with RESTful APIs and event-driven solutions
- Work with databases including MongoDB and relational databases
- Work with messaging and event-streaming technologies such as Kafka
- Develop and maintain automated unit and integration tests
- Work with Docker and Kubernetes within modern cloud environments
- Contribute to monitoring, logging, observability and application performance
- Participate in Agile ceremonies including sprint planning, refinement, reviews and retrospectives
- Work closely with Product, Architecture and other technical teams to understand requirements and deliver effective solutions
- Share knowledge and support less experienced developers where appropriate
- Keep up to date with emerging technologies and development practices
Technologies:
- AWS
- CI/CD
- Cloud
- Docker
- Frontend
- Support
- JUnit
- Java
- Kafka
- Kubernetes
- LESS
- MongoDB
- NoSQL
- REST
- React
- Spring
- Spring Boot
- Web
- microservices
Requirements
- Substantial commercial experience with Java
- Highly proficient in Spring and Spring Boot
- Experience designing and developing microservices architectures
- Solid understanding of REST APIs and web-based systems
- Experience with MongoDB or other NoSQL technologies
- Familiarity with Kafka or similar messaging and event-driven platforms
- Hands-on experience with Docker and Kubernetes
- Strong grasp of software design principles and design patterns
- Confidence writing automated tests using tools such as JUnit and Mockito
- Good understanding of scalability, resilience, availability and performance within distributed systems
- Experience with CI/CD pipelines and modern development practices
- Familiarity with application monitoring, logging and observability tools
- Experience working within an Agile/Scrum environment
- Strong problem-solving skills, analytical thinking and excellent communication abilities
- Experience with React.js or another modern frontend framework is advantageous
- Understanding of Domain-Driven Design is advantageous
- Experience working within cloud environments such as AWS is desirable
- Previous involvement in mentoring developers or taking technical ownership of projects is advantageous
Benefits & conditions
We are a forward-thinking technology team based in Lancashire / Hybrid, offering a permanent full-time opportunity with a competitive salary dependent on experience. We work on modern, enterprise-scale software solutions and provide a collaborative technical environment where developers are encouraged to contribute ideas, challenge solutions constructively and take ownership of their work. You will have the opportunity to work on significant technical challenges, modernise systems and contribute to the development of scalable, high-quality software within an experienced technology team.
Apply for this position
This job is hosted externally. Click below to view the full posting and apply.
Prepare application
- Draft this with your agent
- Open in Claude
- Open in ChatGPT
Good distractions
Talks and stories from around this role — technically off-topic, practically not.
Moments
Explore playlistsVideos
See allRelated articles
See all
93 Java Interview Questions You Should Prepare For
Dev Digest 121 - AI goes offline
Top 10 Java Libraries
Software Engineer Salary London