About our customer:
Our client is a global company specializing in software development and consulting who combines science and technology with deep industry expertise to solve complex subsurface and surface challenges in the evolving energy sector.
The client headquartered is located in Canada, with offices around the world. The company serves organizations globally, providing cutting-edge software technology and unparalleled customer support.
Key Software Solutions:
Our client offers a range of reservoir simulation software, including:
- IMEX – A black oil simulator for primary, secondary, and tertiary recovery processes.
- GEM – An advanced simulator for compositional, chemical, and unconventional reservoir modeling.
- STARS – The industry standard for thermal and advanced recovery processes.
- CMOST – An intelligent optimization and analysis tool that integrates statistical analysis, machine learning, and unbiased data interpretation to determine optimal reservoir solutions.
The company invests in research and development, continuously improving its products and delivering state-of-the-art solutions for energy modeling and optimization.
About the Role:
We seek a skilled 2D/3D Visualization engineer to design and implement high-performance visualization components for Windows-based modelling software. This role involves leveraging advanced 3D rendering technologies and optimization techniques to create an interactive and efficient visualization system.
Candidates with backgrounds in scientific visualization and/or video game development are encouraged to apply, as expertise in real-time rendering, performance optimization, and interactive 3D graphics are highly relevant.
Key Responsibilities:
Visualization Development:
- Design and develop advanced 3D visualization components for HPC modeling applications.
- Implement real-time rendering pipelines using tools 3D Libraries
Integration with Backend Systems and Frontend:
- Collaborate with backend and computation teams to integrate visualization with HPC workflows.
- Use APIs / gRPC / GraphQL for seamless interaction between 3D visualization components and other modules.
Performance Optimization:
- Implement lazy loading and rendering techniques based on camera position and user interaction.
- Develop level-of-detail (LOD) algorithms to optimize rendering for large datasets.
- Profile and optimize rendering pipelines for performance across GPU and CPU.
Parallel Visualization:
- Develop parallel rendering solutions for handling large-scale data efficiently.
- Optimize data transfer and rendering processes for CPU/GPU systems.
Testing and Debugging:
- Develop parallel rendering solutions for handling large-scale data efficiently.
- Optimize data transfer and rendering processes for distributed systems.
Documentation:
- Document visualization workflows, algorithms, and optimization techniques for maintainability and team knowledge sharing.
Qualifications:
Education:
Bachelor’s or Master’s degree in Computer Graphics, Computer Science, Game Development, or related fields.
Experience:
- 3+ years of experience in 3D visualization development
- Proven experience with 3D visual frameworks in at least one of the toolsets:
- Paraview, VTK or Trame by Kitware
- GetToolKit e.g. Petrel, Decision Space
- Techsoft 3D Ansys
- HueSpace 3D
- Proven experience with 2D visualization (at least one):
- GetToolKit 2D
- Lighting Chart
- SciChart
- HoloView
- Hands-on experience with large-scale data visualization and rendering optimization.
Technical Skills:
- Programming Languages: (nice to have, at least one): Proficiency in C++, C# , Python .
- Optimization Techniques: Lazy loading, LOD rendering, parallel visualization, and data virtualization.
- GPU Programming: Familiarity with CUDA or similar for GPU-accelerated rendering.
- 3D Graphics Pipelines: Strong understanding of shaders, buffers, and real-time rendering.
- GPU Direct Memory Access is desirable. E.g. Microsoft DirectStorage API
Soft Skills:
- Strong problem-solving skills and ability to handle complex data structures.
- Excellent communication skills for cross-functional collaboration.
- A passion for creating interactive and visually stunning user experiences.
Preferred Qualifications:
- Experience with geospatial and scientific data visualization.
- Knowledge of rendering large-scale volumetric data and point clouds.
Nice to have:
- Familiarity with containerized environments (e.g., Docker, Kubernetes).
We offer:
- Flexible working format - remote, office-based or flexible
- A competitive salary and good compensation package
- Personalized career growth
- Professional development tools (mentorship program, tech talks and trainings, centers of excellence, and more)
- Active tech communities with regular knowledge sharing
- Education reimbursement
- Memorable anniversary presents
- Corporate events and team buildings
- Other location-specific benefits