Research Engineer at Galois
Portland, Oregon, USA -
Full Time


Start Date

Immediate

Expiry Date

19 Nov, 25

Salary

0.0

Posted On

20 Aug, 25

Experience

0 year(s) or above

Remote Job

Yes

Telecommute

Yes

Sponsor Visa

No

Skills

Cs, Software Engineering Practices, Vhdl, Bluespec, Systemverilog, Sysml, Security, Citizenship, Access, Verilog, Software, Formal Methods, Programming Languages, Presentation Skills, Platforms, Computer Science, Haskell, Model Checking

Industry

Information Technology/IT

Description

ABOUT GALOIS

Galois tackles the hardest problems in computer science. Our mission is to assure trust in critical systems that protect the privacy and integrity of information in the real world. Core to this is the application of formal analysis techniques that allow systems to be modeled, analyzed, and mathematically proven correct to ensure that a system behaves exactly as we intend under all circumstances.
We are a community of researchers, engineers, and operations people dedicated to creating trustworthiness in critical systems in every functional area of the organization. Our organization is highly collaborative, and we pursue working from first principles, transparency, building deep trust, learning and innovating, and creating space for you to be authentically you. Our unique organizational structure enables us to adapt to the needs of the innovative projects we deliver.
We are employee-owned and aspire to provide employees with a sense of freedom to pursue passions in and out of work — whether it be opportunities to learn, career growth, a sense of community, or whatever else brings you value as a person.
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.
Our research engineers work in small teams and successfully interact with clients, partners, and other employees in a highly collaborative environment. We’re looking for people who can invent, learn, think, and inspire.
For more on our organizational structure, visit Life at Galois.

KEY QUALIFICATIONS

  • 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 expertise in at least one such area.
      • Experience in all aspects of software engineering practices.
      • Fluent in using semi-formal methods such as Haskell or other functional programming languages, including executable formal specifications.
      • Required General Skills:


        • Must work well with customers, including building rapport, identifying needs, and communicating with strong written, verbal, and presentation skills.

        • Must be highly motivated and able to self-manage deadlines and quality goals.
        • Preference will be given to candidates with one or more of the following technical expertise:


          • Direct experience in developing high-assurance systems and/or security products.

          • Experience with Model Based Systems Engineering tools, with expertise in SysML and AADL.
          • Knowledge of hardware engineering languages and platforms such as VHDL, Chisel, Bluespec, SystemVerilog, and Verilog.

          How To Apply:

          Incase you would like to apply to this job directly from the source, please click here

          Responsibilities

          ABOUT THIS ROLE

          Galois 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

          As a Research Engineer, you will have the following 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.
          Loading...