Full Stack Engineer, Scientific Modeling Tools
Terra AI
Location
US remote
Employment Type
Full time
Location Type
Remote
Department
Engineering
About Terra AI
We are building the state-of-the-art AI platform for the discovery and development of clean energy and mineral resources. We bring the most advanced techniques in generative AI, foundation modeling, and autonomous decision optimization to tackle the most important problems in the geosciences. These systems can help more reliably identify critical resource deposits, more rapidly measure and characterize them, and design more efficient and sustainable production plans.
We are backed by Khosla Ventures and other leading venture investors. We are now looking to grow our team from ~15 to ~30 by the end of the year to continue to mature our technology and support deployment with our world-class mineral and clean energy partners.
Role
Professionalize and extend internal modeling tools used to generate subsurface outputs. You will take software built around scientific workflows and make it robust, maintainable, and easier to run, inspect, and extend. This role is for someone who can bridge product-quality engineering with scientific computing. We are prioritizing candidates who can do both the GIS execution and the automation, but we will consider strong candidates who lean more heavily toward one side.
This team is building a durable foundation for multiple scientific domains, including geophysics and reservoir simulation. Candidates may lean toward one or the other, but the core engineering shape is the same.
What you’ll do
Collaborate closely with domain experts to translate requirements into software that is correct, usable, and extensible.
-
Own and improve internal modeling stacks, including:
Refactoring and modularization for clarity and reuse
Testing strategies that match scientific software realities (golden tests, invariants, property-based testing where useful)
Performance profiling and optimization where it matters
Documentation and developer experience improvements
Design and implement APIs and interfaces that turn working examples into maintainable components.
Build configuration management patterns that make runs reproducible and debuggable.
Implement and maintain orchestration pipelines for simulation ensembles and data validation.
Establish versioning and release practices for internal tooling, including metadata management.
Work primarily in Python and Julia.
Integrate with ML-adjacent components and artifacts (inputs, outputs, model wrappers), without being responsible for inventing new ML methods.
Requirements
Strong software engineering fundamentals and proven ability to take ownership of complex codebases.
Production-grade Python skill.
Comfort working in Julia or willingness to go deep quickly.
Experience designing APIs, handling configuration, and building reliable execution paths for complex workflows.
Familiarity with performance profiling and optimization tooling.
Familiarity with ML frameworks at an integration level (PyTorch preferred, TensorFlow or JAX also relevant), including artifacts, I/O, and runtime concerns.
Experience with orchestration or workflow tooling (Flyte, Prefect, Dagster, or similar), or equivalent patterns built in-house.
Nice to have
Geophysics or geomodeling experience, including survey simulation or related tooling (SimPEG or similar).
Reservoir simulation experience (Eclipse, Intersect, JutulDarcy, or similar).
Experience solving PDE-based problems in HPC environments.
Familiarity with Fortran or C++ codebases common in scientific stacks.
Experience in simulation, CAD, CFD, or other engineering/scientific software domains.
Experience supporting scientific users and workflows, where communication and shared language matter.
Experience with batch pipelines and data-intensive systems.