Research Engineer
Listed on 2025-12-30
-
Engineering
Software Engineer, Systems Engineer
About Galois
From building digital engineering tools that make space exploration safer to verifying cryptographic libraries that protect some of the world's most valuable data, Galois develops technology to guarantee the trustworthiness of systems where failure is unacceptable.
Who We AreWe are a community of researchers, engineers, and operations people dedicated to creating trustworthiness in critical systems in every functional area of the organization. Our unique organizational structure enables us to adapt to the needs of the innovative projects we deliver.
What We DoWe believe trustworthy systems are built on a formal mathematical foundation. Our researchers apply formal analysis techniques to the design and verification of critical software systems, allowing us to model, analyze, and mathematically prove that a system behaves exactly as intended under all circumstances. With clients including NASA, DARPA, AWS, and the DoW, we leverage our cutting‑edge research to deliver high‑assurance solutions and tools that enhance security, reliability, and operational efficiency across sectors including aerospace & defense, healthcare, semiconductors, and fintech.
ResearchEngineers
Research Engineers at Galois design and develop advanced technologies for safety‑ and security‑critical systems, networks, and applications. Engineers work in small team settings and must successfully interact with clients, partners, and other employees in a highly cooperative, collaborative, and intellectually challenging environment.
Life at GaloisPeople are the foundation of Galois's success. As an employee‑owned company, we care not only about the technologies we develop, but also the path we take to create them. Galois operates under a highly collaborative organizational model that encourages leadership and teamwork and respects the individuals.
For more on our culture and organizational structure, visit Life at Galois.
About This RoleGalois is hiring a Software Engineer/Researcher to join our team! This role will primarily focus on advancing the state of the art in programming language theory research and implementation. Researchers in this role will use their expertise in Formal Methods and Programming Languages to conduct rigorous formal verification of software and systems, ensuring they meet the highest security standards.
Responsibilities- Requirements gathering: engaging the client in a series of discussions, where each iteration refines the needs of the client, and leads to the suggestion of means to meet those needs.
- Architecture and design: constructing high‑level architectural descriptions of software systems, and constructing deeper program designs by fleshing out architecture prototypes. Architectures must be designed with assurance in mind, determining where and how formal methods are to be applied.
- Implementation: extending design prototypes through to a finished product, with care taken to ensure robustness and ease of use.
- Formal verification: use mechanical reasoning tools such as theorem provers and model checkers to demonstrate or analyze desired security and correctness properties of systems.
- Testing and validation: constructing and regularly conducting system, unit, and regression tests, and conducting semi‑formal validation and verification.
- Technology research and development: conducting speculative research and development of cutting‑edge technology, and incorporating that technology in product prototypes.
- Technical infrastructure development: developing (designing, implementing, and maintaining) tools to be used within Galois, and developing library code to be shared among projects.
- Education:
- A minimum of a Bachelor's degree in computer science or equivalent is required.
- An MS or PhD in CS or a related field is desirable but optional.
- Required Technical Expertise:
- A programming languages background and experience with formal methods.
- Must have hands‑on experience developing software and applying formal verification techniques.
- Familiarity with diverse formal methods, such as model checking, theorem proving, program analysis, and formal semantics of programming languages, and demonstrated…
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).