Graphical Software Developer
Develop graphical applications for 3D subsurface imaging using modern C++, Qt, and OpenGL to help scientists visualize complex geoscience data.
- Compensation
- Not disclosed
- Location
- Houston, United States of America
- Work setup
- Not specified
- Seniority
- Junior
- Employment
- Not specified
- Experience
- Not specified
- Category
- Software engineering
- Posted
Skills
Must have
- Master’s degree (or higher) in Computer Science or a related field with strong programming experience, or equivalent hands-on experience
- Strong proficiency in modern C++ and experience working in large native codebases
- Familiarity with Qt or comparable desktop GUI frameworks
- Understanding of object-oriented design, API design, and maintainable C++ interfaces
- Experience debugging native applications and investigating crashes, memory issues, or performance bottlenecks
- Familiarity with CMake/build systems and the software development lifecycle: building, testing, packaging, and releasing applications
- Strong problem-solving skills and clear communication in a collaborative engineering team
- Curious, pragmatic, and eager to learn complex domain software
Nice to have
- Experience with OpenGL/GLSL or other real-time visualization/rendering technologies
- Foundation in 3D math, linear algebra, coordinate transforms, or numerical methods
- Experience with multi-threaded or parallel programming, e.g. std::thread, Qt threading, or OpenMP
- Experience working on cross-platform, large-scale, or legacy software projects
- Exposure to scientific, geoscience, seismic, imaging, CAD, simulation, or other data-heavy visualization domains
- Familiarity with Python/C++ integration or scripting APIs
- Working knowledge of Java, or willingness to work across both native C++ and Java codebases
- Basic understanding of operating systems concepts, file I/O, and performance profiling
- Basic networking/IPC knowledge, if relevant to integration work
Full description
Viridien () is an advanced technology, digital and Earth data company that pushes the boundaries of science for a more prosperous and sustainable future. With our ingenuity, drive and deep curiosity we discover new insights, innovations, and solutions that efficiently and responsibly resolve complex natural resource, digital, energy transition and infrastructure challenges.
Job Details
Build your career developing cutting-edge visualization tools for subsurface imaging. In this role, you’ll help create and improve the graphical applications that enable scientists and engineers to explore complex 3D subsurface data. You’ll gain hands-on experience developing scalable software, working with modern development practices, and collaborating with a global team in advanced computing environments.
At Viridien, we believe diverse perspectives drive innovation. If you’re passionate about technology, visualization, and solving complex problems—we’d love to have you on our team.
Must have current U.S. work authorization or qualify for sponsorship.Key Responsibilities:
- Design and develop software tools and core application components for subsurface imaging platforms
- Contribute to backend systems, data handling, user-facing features, and supporting 3D visualization technologies
- Support build, testing, and release processes for production software
- Collaborate with researchers and engineers to gather requirements and deliver practical solutions
- Debug, optimize, and improve application performance and scalability
- Participate in design discussions and contribute to technical decisions
- Deploy and support applications used in large-scale, global computing environments
Required:
- Master’s degree (or higher) in Computer Science or a related field with strong programming experience, or equivalent hands-on experience
- Strong proficiency in modern C++ and experience working in large native codebases
- Familiarity with Qt or comparable desktop GUI frameworks
- Understanding of object-oriented design, API design, and maintainable C++ interfaces
- Experience debugging native applications and investigating crashes, memory issues, or performance bottlenecks
- Familiarity with CMake/build systems and the software development lifecycle: building, testing, packaging, and releasing applications
- Strong problem-solving skills and clear communication in a collaborative engineering team
- Curious, pragmatic, and eager to learn complex domain software