Role & responsibilities
Primary Responsibilities
- Own and contribute to architecture and development of enterprise Java applications
- Provide technical guidance on design and implementation across distributed teams
- Support modernisation and evolution of legacy forensic systems
- Ensure scalable, maintainable and high-performance solutions
- Share knowledge and support capability development across nearshore and offshore teams
- Collaborate with product, QA, DevOps and architecture stakeholders
Specific Assignments
- Software Engineering & Full-Stack Development
- Develop enterprise applications across client and server components
- Work with:
- Java 11 / Java 17
- Java EE / Jakarta EE
- Eclipse RCP, SWT & JFace (rich client applications)
- WildFly Application Server
- Support modularisation of legacy systems and development of new platforms
- Implement integration and high-performance processing logic
Architecture & Design
- Define software architecture for enterprise applications
- Apply object-oriented design and design patterns (SOLID, Clean Code)
- Support modular system design and decomposition
- Contribute to technical concept design and implementation
Database & Backend Engineering
Design and optimise backend services and data models
- PostgreSQL
- JPA / Hibernate
- JPQL / CriteriaBuilder
- Ensure scalability, integrity and performance of data-intensive systems
DevOps, CI/CD & Automation
- Work within Git-based development processes
- Develop and maintain CI/CD pipelines in Azure DevOps
- Manage containerised environments (Docker)
- Use Maven / Eclipse Tycho for build management
- Implement automated build, deployment and release processes
Quality, Performance & Reliability
- Ensure high code quality through testing and best practices
- Perform performance profiling and optimisation (JVM tuning)
- Support production stability and continuous improvement
- Work closely with QA for test coverage and release quality
Collaboration & Delivery
- Work within Agile / Scrum delivery teams
- Collaborate across UK, Europe, nearshore and offshore delivery centres
- Support team mobilisation, onboarding, training and knowledge transfer
- Act as a technical interface between business and IT teams
Skills Required
Core Technical Skills
- Java (11 / 17)
- Java EE / Jakarta EE
- Eclipse RCP, SWT, JFace
- PostgreSQL
- WildFly Application Server
Architecture & Development
- Enterprise software architecture
- Object-oriented development
- Clean Code and Design Patterns
- Modularisation of applications
- Legacy system evolution
Backend & Data
- JPA / Hibernate
- JPQL / CriteriaBuilder
DevOps & Tooling
- Git / Git-based workflows
- Azure DevOps
- CI/CD pipelines
- Docker
- Maven / Eclipse Tycho
- Automated build and release processes
Qualifications
Preferred Qualifications
- Degree in Computer Science, Engineering or related field
- Extensive experience (8 +) in enterprise Java development and DevOps practices
- Proven experience in architecture and hands-on development
- Experience working in regulated or complex operational environments (Forensics, LIMS, etc.)
- Strong collaboration skills across distributed delivery teams