Senior Scientific Programmer - Careers - Company
Overall Purpose of Role:

A senior scientific programmer will be responsible for developing software solutions to support the company in a range of data processing and algorithm optimization capacities.

Key Accountabilities:
  • Will work as part of a collaborative team to develop and improve Seismic, CSEM, Log and Geophysical processing, imaging & inversion software.
  • Duties include developing, testing, and maintaining these systems to meet internal client requirements.
  • Will design and architect high performance computation software and system solutions for internal and external clients
  • Will develop and improve User Interfaces and 2D/3D graphics for existing and planned solutions.
  • Will develops and test new features of applications on multiple platforms.
  • Will develops and coordinate testing procedures and documentation.
  • Will support internal users and work to ensure that software meets internal customer needs.
  • Will be fully conversant with Health & Safety responsibilities, at all times taking reasonable steps to ensure their own safety and the safety of others who may be affected by their actions; cooperating with the company in terms of meeting legal Health & Safety obligations

Job Challenges & Opportunities:
  • This position demands a certain amount of out of hours support, depending on operational requirements. The job holder must be willing to be available by telephone out of normal office hours to support internal & external clients needs
  • The job holder will be responsible to finish task on time, on budget.
Essential Knowledge, Skills & Competencies:
  • Strong mathematics and geophysics background.
  • Solid C++ programming experience with focus on object oriented concepts.
  • Knowledge and some experience with software development best practices, compilation and linking issues, software porting between platforms or languages and refactoring.
  • Strong commitment to software quality and knowledge of quality assurance concepts and techniques.
  • Strong knowledge of design patterns. UML design et al.
  • Detailed knowledge of software development tools (compilers, linkers, debuggers, version control, etc.) and underlying libraries and structure on Linux/UNIX platforms.
  • Skill working in a Linux, Windows OS development environment.
  • GUI development utilizing QT C++.
  • Algorithm development experience, especially Digital Signal Processing.
  • Parallel/ high performance computing is a plus. MPI is preferred.
  • Ability to support all of the above.
  • Ability to work under pressure
  • Must be flexible, adaptable and willing to work in a dynamic environment
Desirable Knowledge, Skills & Competencies:
  • 5+ years experience in Object Oriented Programming with background in Geophysics, EE, Physics or Math.
  • Master of Computer Science degree and above is preferred.
Apply

Send your resume/cv with a cover letter to [email protected]