Jobs · Engineering

Senior Principal Software Engineer

Oracle · United States · 2 days ago
RemoteRemoteEngineering$135k–$306k/yrFull-time

About the role

OCI is expanding its in-house formal verification team to handle major new development initiatives. We are building our next generation of core data-planes and cloud automation, where correctness and reliability are critical. We are looking for self-motivated engineers with passion and expertise for practical application of formal methods to complex problems.

Responsibilities

  • Help engineers to state their requirements and algorithms much more precisely than conventional design docs, uncovering many ambiguities and invalid assumptions – i.e. design bugs.
  • Provide additional ways to describe and think about requirements and design, revealing problems.
  • Review critical sections of code to reverse-engineer the higher-level algorithm or design that has been implemented, and formally verify it against its intended properties.
  • Use tools such as model-checkers, constraint solvers, and increasingly AI, to check a precise design against precise correctness properties.
  • Create new methodologies and tools to enable safe and productive use of Generative AI for designing, implementing, and testing mission-critical components and services.
  • Automatically generate formal specifications from informal descriptions to remove ambiguity, validate that they accurately capture the intent of the author, and validate that the resulting formal specifications allow desired behaviors while disallowing prohibited ones.
  • Generate implementation code from a formal specification and validate that it satisfies the specification, e.g., via trace-validation/conformance testing, or by using code-level verification systems such as Verus, or by other techniques.
  • Reverse-engineer a formal specification from code at an appropriate level of abstraction, allowing it to be verified against high-level correctness properties.
  • Use AI to find inductive invariants and write mechanically checked proofs.

Requirements

  • MS degree or higher in Computer Science, involving a significant amount of formal specification and verification.
  • 5+ years of full-time professional software development of concurrent and distributed systems, ideally cloud services.
  • Ability to write correct high-performance concurrent code in at least one of C/C++, Java, GoLang, or Rust.
  • Deep knowledge of standard distributed algorithms used in cloud dataplanes, e.g. Paxos, Raft, Viewstamped Replication, leases, methods of concurrency control, storage systems, and transaction systems.
  • Skilled in reading informal requirements, system designs, and code.
  • Skilled in identifying the most critical and complex/subtle parts, and writing formal specifications for those parts at a level of abstraction appropriate for verifying correctness of the system.
  • Knowledge and experience of other specification methods and tools is also highly valued.
  • Skilled in verifying safety and liveness using model checkers such as TLC and Apalache.
  • Ideally, skilled at applying mechanical proof tools such as TLAPS, with associated experience of finding inductive invariants for concurrent algorithms.
  • Excellent at collaborating with software engineers to help verify correctness of their work.

Qualifications

  • Disclaimer: Certain U.S. based or U.S. customer or client-facing roles may be required to comply with applicable requirements, such as immunization/occupational health mandates, and/or drug testing requirements.
  • Hiring Range in USD from: $135,200 - $306,400 per year.
  • May be eligible for bonus, equity, and compensation deferral.
  • Broad salary ranges for roles are maintained to account for variations in knowledge, skills, experience, market conditions and locations, as well as reflect Oracle's differing products, industries and lines of business.
  • Candidates are typically placed into the range based on the preceding factors as well as internal peer equity.
  • Oracle US offers a comprehensive benefits package which includes medical, dental, and vision insurance, short term disability and long term disability, life insurance and AD&D, supplemental life insurance, health care and dependent care, flexible spending accounts, pre-tax commuter and parking benefits, 401(k) savings and investment plan with company match, paid time off, paid sick leave, paid parental leave, adoption assistance, employee stock purchase plan, financial planning and group legal, and voluntary benefits including auto, homeowner and pet insurance.

Similar jobs

Senior Software Engineer

Volund ManufacturingHuntington Beach, CA· 1 mo ago
Education$145k–$185k/yrapply on app.jazz.co

Senior Software Engineer

RobinhoodMenlo Park, CA· 2 wk ago
Information Technology$214k–$230k/yrapply on boards.greenhouse.io

Senior Software Engineer

Northwestern MutualMilwaukee, WI· 5 days ago
Engineering$119k/yrapply on careers.northwesternmutual.com