Job Title:
Software Engineer
Positions:
* Senior Software Engineer
* Team Lead
Employment Type:
Permanent Staff Positions
Location:
Abingdon, just outside London
Hybrid Working:
Hybrid working available, ideally 3 days based in the office
Salary:
Please get in touch and 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 understanding differences from web‑based applications from an engineering perspective
Very Nice to Have:
* Experience with using AI in development
* Domain experience (Geophysics or another geoscience related field)
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 lay out clear implementation roadmaps.
* Implement and optimise computation algorithms.
* Design and develop both 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 of experience in software development using Java.
* Ability to break down complex development tasks and define clear, actionable implementation roadmaps.
* Strong Java proficiency.
* C++ knowledge and experience (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 but able to work well in a team environment.
Desired Experience:
* Knowledge with 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
#J-18808-Ljbffr