Mid-Level Java Developer

Halliburton
Abingdon, United Kingdom
2 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Intermediate

Job location

Abingdon, United Kingdom

Tech stack

Java
Spring Security
API
Agile Methodologies
Automation of Tests
Azure
Software Bug Management
Software Quality
Continuous Integration
Relational Databases
Software Design Patterns
Memory Management
Eclipse
Hibernate
Java Persistence API
PostgreSQL
Microsoft SQL Server
OAuth
Open Data Protocol
Object-Oriented Software Development
OpenID
Scrum
Regression Testing
Swagger
Software Engineering
Web Applications
Openapi
Multithreading
Spring-boot
AWS Lambda
Backend
Gitlab
Containerization
Git Flow
Kubernetes
Information Technology
Osgi
REST
Docker
Microservices

Job description

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., * 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.

Requirements

Do you have experience in Test automation?, Do you have a Bachelor's degree?, * 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)., Minimum Qualifications: Minimum qualifications may be acquired through technical schools or equivalent related experience. Candidates having qualifications that exceed the minimum job requirements will receive consideration for higher level roles given (1) their experience, (2) additional job requirements, and/or (3) business needs. Depending on education, experience, and skill level, a variety of job opportunities might be available from the Technical Professional Software (Senior - Principal)

About the company

We are looking for the right people - people who want to innovate, achieve, grow and lead. We attract and retain the best talent by investing in our employees and empowering them to develop themselves and their careers. Experience the challenges, rewards and opportunity of working for one of the world's largest providers of products and services to the global energy industry.

Apply for this position