Mid-Level Java Developer

Halliburton — United Kingdom · Posted ~3 hours ago

Mid Full-time Hybrid

Skills

Java Java Collections Framework Generics Streams Lambdas Exception handling Multithreading Concurrency Memory management Garbage collection Object-oriented programming SOLID Design patterns Microservices

🔓 Log in to save this job, tailor your resume & track your apply process — 7 days free, no card needed.

Log in to add to target list

Summary ✨ AI‑Generated

A mid-level Java Developer is sought to design, develop, and maintain specialized software solutions. The role requires strong knowledge of core Java, concurrency, memory management, object-oriented principles, design patterns, and microservices, with at least three years of professional experience. The position follows a hybrid model with regular office attendance.

Highlights

Mid-level Java role with opportunities to contribute to software design, development, maintenance, and quality initiatives in a technically specialized environment. The hybrid arrangement provides flexibility while maintaining regular team collaboration.

Description

Job description: Job Duties We are seeking a skilled Java developer with 3+ years’ experience for our Neftex Technical Services Team. Reporting to the Team Lead, you will contribute to the design, development, and maintenance of subsurface evaluation solutions across the energy sector. Successful candidates will be evidently enthusiastic and motivated people who we can train up in our processes and ultimately play a key role in quality assurance initiatives across different stakeholder groups. Please note, although this is a hybrid position, you will be required to attend our Abingdon, Oxfordshire office a minimum of three days per week. Minimum Qualifications Strong knowledge of Java Core, including: Collections Framework, Generics, Streams, Lambdas Exception handling and best practices Multithreading and concurrency (Executors, synchronization, CompletableFuture) Memory management and garbage collection basics Object-oriented principles (SOLID, design patterns, microservice architecture) Experience with Java and related frameworks (SpringBoot, Eclipse RCP, OData, Hibernate, JPA, REST, etc.) Backend development including REST APIs with Spring Boot, Swagger/OpenAPI specifications, Spring Security, OAuth2/OIDC, JWT. Git-based workflows and Gitlab CI/CD pipelines. Experience working in an Agile development environment (Scrum or Kanban). Familiarity with SQL Server, PostgreSQL or other relational databases. Self-starter with a proactive attitude and ability to learn new technologies quickly. Undergraduate degree in Software Engineering, Computer Science, or a related field. Preferred Qualifications Familiarity with GIS connectors. Familiarity with Azure DevOps, GitLab, and Git-based workflows. Experience with CI/CD pipeline automation and deployment scripting. Experience with automated testing, including unit, integration, and regression testing. Eclipse Plugin development experience including SWT, JFace, Eclipse OSGi, extension points, views/editors, preferences Knowledge of containerization and orchestration (Docker, Kubernetes). Key Responsibilities Design, develop, and maintain desktop and web applications using Java. Implement new services, features, and bug fixes as prioritized by the Product Owner. Build and integrate APIs to enable seamless communication between services and components. Collaborate with product owners, architects, and other developers to define requirements and deliver high-quality solutions. Participate actively in Agile ceremonies including sprint planning, daily stand-ups, backlog refinement, and retrospectives. Write clean, maintainable, and well-documented code following industry best practices and internal standards. Implement automated tests (unit, integration, and functional) to ensure code quality and reliability. Monitor and optimize performance, scalability, and security. Apply and enforce security best practices, including: Ensuring secure authentication and authorization flows. Implementing encryption for data in transit and at rest. Validating and sanitizing all inputs to prevent injection attacks. Keeping dependencies and libraries up to date to mitigate vulnerabilities. Troubleshoot and resolve issues across development, staging, and production environments. Maintain up-to-date knowledge of emerging technologies, frameworks, and industry trends relevant to day-to-day development. Contribute to technical documentation and knowledge sharing across teams. Communicate and escalate issues clearly and promptly to relevant stakeholders Profile description: We offer: We invest in our employees through competitive compensation plans, health benefits, work-life programs, and reward and incentive plans. We have the right people to develop the right technologies and bring innovative solutions to the industry – and we value those people as an unmatched competitive advantage.