Job Summary
Job Title: Software Engineer
Positions: Senior Software Engineer, Team Lead
Staff Type: Permanent
Location: Abingdon, just outside London
Hybrid working: Available, ideally 3 days based in the office
Salary: Please get in touch; I will reply straight away with salary details (highly negotiable)
Must Have Skills
* Java, Eclipse RCP/SWT
* Strong problem‑solving abilities
* Clear communication skills
* Evidence of solving algorithmic problems
* Experience with large monolithic thick‑client applications and the differences from web‑based applications
Very Nice to Have
* Experience using AI in development
* Domain experience in Geophysics or another geoscience field
Subsurface Senior Java Application Developer
Responsibilities
* Collaborate closely with geophysicists, data scientists, and software engineers to translate scientific domain requirements into robust on‑prem or cloud software solutions.
* Design, develop, and maintain high‑performance applications for geophysical and geological data analysis, interpretation and visualization (e.g., seismic, horizon, fault, velocity model, etc.).
* Present architectural designs and technical proposals to the architecture review board.
* Break down development tasks and create clear implementation roadmaps.
* Implement and optimise computation algorithms.
* Design and develop thin and thick client applications that interact with cloud‑based microservices.
* Ensure high code quality through unit testing, code reviews, security hardening and continuous integration with other domain tools.
* Provide technical support and lead user troubleshooting sessions to resolve issues and ensure smooth operation of DSG application.
* Mentor junior developers and actively contribute to architectural and implementation decisions.
* Embrace Agile/Scrum methodologies, delivering and demonstrating working solutions at the end of each sprint.
* Stay current with emerging technologies and trends in geophysical computing and software development.
Required Education and Skills
* BS or MS degree in computer science, geoscience, applied mathematics, or a related engineering discipline.
* Minimum of 10 years experience in software development using Java.
* Ability to break down complex development tasks and define clear, actionable implementation roadmaps.
* Strong Java proficiency.
* Knowledge of C++ is a strong benefit.
* Proficiency with development tools and environments:
o GitLab, Eclipse RCP/SWT, VS Code, CI/CD pipelines.
o Performance tools: VisualVM, JMC/JFR, Async.
o Operating systems: Windows and Linux.
* Hands‑on experience using GitHub Copilot to accelerate code implementation and enhance development productivity.
* Must be self‑motivated and able to work well in a team environment.
Desired Experience
* Knowledge of geoscience software tools and formats:
o SEG‑Y, Landmark seismic BRICK, CMP, OpenVDS.
o DSG, Petrel, Kingdom, GeoFrame, or PaleoScan.
* Familiarity with cloud platforms and distributed computing:
o RESTful API design and implementation.
o AWS and Azure.
o Tools for scalable data processing: Kubernetes, Spark.
* Experience with Java 2D graphics and 3D OpenGL programming.
* Experience with scientific computing libraries and frameworks:
o Python: NumPy, SciPy, Pandas, TensorFlow (for ML/AI).
o C++/Java: CUDA (for GPU acceleration).
o Angular or React.
o Microservice frameworks: Quarkus, Spring Boot, AWS API Gateway.
o Docker, Kubernetes.
About the Company
NES Fircroft (NES) is the world’s leading engineering staffing provider across Oil & Gas, Power & Renewables, Chemicals, Construction & Infrastructure, Life Sciences, Mining and Manufacturing sectors, with over 80 offices in 45 countries.
#J-18808-Ljbffr