remote
Geophysical Software Developer Seismic Processing & Interpretation - Halliburton
Software Engineer
Develop and maintain high‑performance seismic processing and interpretation desktop applications, leveraging C++, Python, and GPU/parallel computing technologies to deliver next‑generation geophysical solutions.
About the role
Key Responsibilities
- Design, implement, and optimize core algorithms for seismic data processing and interpretation using C++ and Python.
- Develop cross‑platform desktop applications with Qt, integrating advanced visualization via OpenGL.
- Implement parallel and GPU‑accelerated solutions employing MPI and CUDA to meet performance targets on large datasets.
- Collaborate with geophysicists and software engineers to translate scientific requirements into robust, maintainable code.
- Maintain and refactor existing codebases, ensuring code quality, documentation, and test coverage.
Requirements
- Bachelor’s or higher in Computer Science, Engineering, Geophysics, or a related field with strong software development experience.
- Proficiency in C++ (modern standards) and Python for scientific computing.
- Hands‑on experience with Qt for desktop UI development and OpenGL for 2D/3D visualization.
- Demonstrated ability to develop parallel applications using MPI and/or GPU programming with CUDA.
- Understanding of seismic processing concepts and ability to work closely with domain experts.