CMG Product Yearbook 2025 -

 All major releases, enhancements, and what they mean for your simulations.

Webinar Events – Eastern Hemisphere: 24 Feb | 09:00 UTC | Western Hemisphere: 26 Feb | 16:00 UTC

Canada

Software Developer

People are our most valuable asset.

We are seeking a Software Developer to join our team developing advanced reservoir simulation software and handle relevant scientific computations. The successful candidate will contribute to the design and implementation of high-performance, geomechanics based simulation solutions that accelerate large-scale numerical simulations used in subsurface modeling.

You will collaborate with scientists and engineers to enhance the performance and scalability of complex simulation systems, improve parallel processing capabilities, and support modern high-performance computing environments. This role is ideal for someone with strong expertise in C++ programming, parallel computing, and scientific software development.

Key Responsibilities

  • Develop, enhance, and maintain components of scientific simulation software written in C++.
  • Contribute to computational and numerical workflows that support large-scale reservoir and fracturing simulation analysis.
  • Understand and work effectively with existing legacy codebases, reading, debugging, refactoring and modernizing when needed.
  • Implement, test and calibrate subsurface models with efficient algorithms for scientific computation, ensuring numerical accuracy and performance.
  • Collaborate closely with domain experts, senior developers, and scientists to deliver reliable, production-quality features.
  • Participate in code reviews, testing, and documentation to uphold high engineering standards.
  • Approach challenges with curiosity and initiative, adapting quickly to new tools, concepts, and problem domains.

Note: This description reflects the general nature of the role. It’s not a complete list of responsibilities—we believe in flexibility, initiative, and growing together.

Knowledge, Skills & Experience

Required Qualifications

  • 1-3 years of professional experience in C++ software development.
  • Strong proficiency in modern C++ (C++14 or later), with the ability to read and modify legacy scientific codebases.
  • Solid understanding of numerical algorithms, data structures, and performance considerations in scientific computing.
  • Strong debugging and troubleshooting skills across cloud-deployed and desktop simulation applications, including performance issues, diagnosing numerical and logic errors, and resolving integration or environment-specific bugs.
  • Hands-on experience with Linux development environments and command-line tools.
  • Curious, communicative, and collaborative team player who actively engages in discussions and rises to the occasion in challenging technical situations.
  • Eagerness and ability to learn parallel computing concepts [OpenMP/MPI] for large scientific simulation codes.
  • Ability to profile and optimize large-scale scientific simulation codes.

Preferred Qualifications

  • Experience working with numerical or scientific computations.
  • Experience with containerized development environments (e.g., Docker).
  • Exposure to AWS or Azure cloud-based software development and familiarity with CI/CD practices and tools.
  • Exposure to MPI or high-performance computing (HPC).

Education

A master’s or bachelor’s degree in Software Engineering or a related field is preferred. Relevant experience can substitute for a formal degree. A research background in high-performance computing is preferred but not mandatory.

Apply Now

If you have the necessary qualifications, and are interested in a challenging career with us, please forward your resume in confidence to resumes@cmgl.ca.

No phone calls please. We thank all applicants for their interest in advance. Only those chosen for interviews will be contacted.

CMG Compensation and Benefits Overview – Canada

CMG’s total rewards program includes:

  • A competitive salary
  • A performance-based bonus program
  • Learning and development opportunities
  • RRSP contributions
  • Top of the line medical and dental benefits including a health spending account
  • 20 days of vacation per year plus flex days
  • Choice of transit pass or underground parking (Calgary)
  • Car wash (Calgary)
  • Cafeteria and complimentary barista style coffee and more (Calgary)

No need to call us about the status of your application. We promise—we’re reviewing every submission, and if your skills are a match, you’ll hear from us!

We kindly request that external recruiters and agencies refrain from submitting unsolicited resumes or candidate profiles. Submissions without a signed agreement in place will not be considered and will become the property of CMG.

Rose Subsurface Assessment is now a part of Computer Modelling Group Ltd.