Software Engineer

Posted 1 hour 33 minutes ago by NES Fircroft

Permanent
Full Time
I.T. & Communications Jobs
Oxfordshire, Radley, United Kingdom, OX142
Job Description
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:
    • GitLab, Eclipse RCP/SWT, VS Code, CI/CD pipelines.
    • Performance tools: VisualVM, JMC/JFR, Async.
    • 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:
    • SEG Y, Landmark seismic BRICK, CMP, OpenVDS.
    • DSG, Petrel, Kingdom, GeoFrame, or PaleoScan.
  • Familiarity with cloud platforms and distributed computing:
    • RESTful API design and implementation.
    • AWS and Azure.
    • Tools for scalable data processing: Kubernetes, Spark.
  • Experience with Java 2D graphics and 3D OpenGL programming.
  • Experience with scientific computing libraries and frameworks:
    • Python: NumPy, SciPy, Pandas, TensorFlow (for ML/AI).
    • C++/Java: CUDA (for GPU acceleration).
    • Angular or React.
    • Microservice frameworks: Quarkus, Spring Boot, AWS API Gateway.
    • 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.