The company is a new nuclear energy technology and engineering firm working to commercialize a fluoride-salt-cooled, high-temperature reactor (FHR) built for safe operation, controlled costs, and flexible output that can support growing use of variable renewables.
This is a hands-on individual contributor role on a small software and infrastructure team that serves the design, research, and development groups.
You will design and build the scientific software, developer tools, and delivery systems that nuclear engineers and computational scientists use to design and analyze nuclear power systems.
The group prefers simple, proportionate designs built from standard, well-supported technologies, and you will be a leading advocate for that approach. Success means producing software that engineers other than its author can run, change, and maintain.
Responsibilities
Write, test, and maintain Python and C++ scientific code, including computational modeling methods and numerical algorithms.
Set the architecture for in-house engineering tools, choosing data structures, interfaces, and algorithms that fit the real problem rather than a guessed future one.
Work with nuclear and other non-software engineers to scope software projects that support the company's core work.
Profile and tune performance when a measured requirement justifies it, and record the results.
Own CI/CD for in-house software using GitHub Actions or similar tools, covering automated tests, quality gates, and controlled releases.
Build reproducible pipelines for Python packages, Conda environments, and C++ binaries and libraries, including control of compilers and dependencies.
Publish and version artifacts so users can see exactly what they are running and rebuild it later.
Find and fix compilation, dependency, environment, and runtime failures across the scientific software stack.
Set container build and run patterns for Docker and Apptainer across development and HPC use, and keep base images current and upgradable without breaking the workflows that depend on them.
Enforce internal software quality requirements through automation, so compliance is built into the pipeline rather than done by hand.
Define the artifacts, records, and gates needed for controlled delivery, and make them reproducible from the build system.
Produce audit evidence from tooling for software quality audits.
Build and support HPC workflows covering Slurm, Open OnDemand interactive access, MPI, and GPU computing.
Make these platforms easier for the engineers and scientists who use them, and cut friction in their modeling and simulation work.
Create self-service workflows and documented procedures so users can handle common problems without filing a request.
Set design, documentation, and maintainability standards for other teams, and enforce them through design and code review.
Review software across the group, including internal applications, so no system depends on a single person.
Mentor engineers, pass on knowledge deliberately, and remove single-person dependencies through documentation and shared ownership.
Weigh build versus buy, favoring standard, well-supported libraries and tools over custom frameworks unless a requirement clearly calls for one.
Keep designs as small as the real requirement allows, and find and retire technical debt, premature abstraction, and needless complexity.
Take on deep technical issues from the team's engineering help queue and explain the fixes clearly to the people who reported them.
Requirements
Bachelor's degree in computer science, engineering, physics, mathematics, computational science, or a closely related technical field, or an equivalent mix of education and hands-on experience.
5+ years of software engineering experience, including technically complex work such as scientific, engineering, or computational software.
Proven depth in both Python and C++ for scientific or engineering software.
Experience implementing computational modeling, numerical methods, or similar quantitative algorithms.
Demonstrated architecture skill: breaking down a problem, defining interfaces, and judging maintainability, performance, and long-term cost.
Experience with automated unit and integration testing using frameworks such as PyTest or GoogleTest.
Working proficiency with Git, Linux, Bash, and SSH.
Experience mentoring engineers and running design and code reviews, and a willingness to accept and act on feedback.
A record of building software that other engineers can run, extend, and maintain, backed by clear documentation and deliberate knowledge transfer.
Strong grasp of design fundamentals, including object-oriented programming, data structures, and algorithms.
Skill at diagnosing complex software, build, dependency, environment, and runtime problems to find root causes.
Ability to design and maintain reproducible build, test, packaging, and delivery processes.
Ability to apply quality assurance principles such as traceability, testing, documentation, and controlled delivery, scaled to the software being built.
Ability to explain technical tradeoffs to nuclear engineers, computational scientists, and other non-software specialists, and to turn their requirements into working software.
Ability to work well in a highly collaborative team and to solve problems quickly and efficiently.
Puts safety first for yourself and others.
Ability to gather, manage, and pass on knowledge proactively.
Ability to make efficiency gains tied to a measurable engineering need such as safety, reliability, performance, usability, or maintainability.
Ability to use architectural judgment and favor the simplest design that meets the requirement.
Ability to give direct technical feedback, accept it, and change course when a review shows a better approach.
Ability to own software across its full lifecycle, including testing, documentation, support, and retirement.
Desirable: Master's or Ph.D. in computational science, physics, engineering, or a related discipline, particularly with research experience in numerical methods.
Desirable: experience with containerization using Docker, Apptainer, or comparable tools.
Desirable: experience with Python packaging and environment management, including Conda, and with versioned artifact publication.
Desirable: experience with build systems such as CMake, and with compiler and dependency management for compiled software.
Desirable: experience with CI/CD systems such as GitHub Actions, including pipeline design and release automation.
Desirable: experience with performance profiling and optimization driven by measurement rather than assumption.
Desirable: experience with software quality assurance practices and controlled software delivery.
Desirable: experience with high-performance computing environments, including Slurm, Open OnDemand, MPI, and GPU computing.
Desirable: experience with software quality assurance in a regulated or safety-conscious engineering environment.
Desirable: experience with documentation tooling such as Doxygen or Sphinx.
Desirable: experience with relational databases, backend APIs, or cloud platforms such as AWS or Google Cloud.
Desirable: familiarity with infrastructure as code and the operational side of software delivery.
Conditions
Physical demands: long periods standing or sitting, moving around to complete tasks or travel between worksites, and regular communication with others.
Environment: the role is listed as remote, and the setting may also include a general office. The work is demanding and requires high concentration.
Safety: you may need to read and interpret hazardous warning signs and handle, clean, and dispose of hazardous materials.
Travel: about 5% travel may be required for workshops and project support.
Schedule: occasional weekend work, schedule flexibility, and extended hours around launch and critical project deadlines may be needed.
Pay: the salary range is $140,611 to $165,425 for onsite work at the Alameda, CA headquarters. This is the typical range for California hires. Actual pay may depend on education, experience, knowledge, skills, ability, local market data for the work location, and comparison with others already in the role.
Export control: the facility handles information restricted by the Department of Energy under 10 CFR Part 810, and working there requires Department of Energy authorization to access that information. Foreign nationals who are citizens of countries not on the Department of Energy's general authorization list are not permitted to work in the facility unless the Department issues the company an export control license for that individual. Licensing questions are used to determine which rules apply.
Benefits
Competitive compensation packages.
Medical, dental, and vision coverage for employees and their dependents.
Paid vacation.
401(k), plus pre-tax options for health insurance, dependent care, and commuter costs through an FSA.
Full-time employees, not interns, have access to these benefits.
Where you’d work
Fully remote
You can work from
United States
About the company
K
Kairos Power
Industry: Climate
Also hiring in TN, United States, CA, United States and NM, United States