Applied Scientist, Agentic Automated Reasoning
Required skills
PhD, or a Master's degree and experience in CS, CE, ML or related field research, Experience in patents or publications at top-tier peer-reviewed conferences or journals, Experience programming in Java, C++, Python or related language, Experience in any of the following areas: algorithms and data structures, parsing, numerical optimization, data mining, parallel and distributed computing, high-performance computing
Preferred skills
Experience with model checking tools and techniques, SAT/SMT solvers, Knowledge of one or more methods of defining semantics: operational, denotational, axiomatic, etc., Experience applying machine learning and generative AI tools.
Technologies
Java, C++, Python, model checking tools, SAT/SMT solvers, generative AI tools, interactive theorem provers, property-based testing, automated test generation
Responsibilities
Work with customer teams to understand the nature of their software and the properties they need to establish of it, Identify tools and methods capable of addressing the verification needs of customers, including any novel analysis capabilities required, Use techniques spanning property-based testing to model checkers, and interactive theorem provers to establish program properties, Explore generative AI techniques to help customers formalize their requirements, find revealing tests, generate required boiler plate for testing and model checking, and find and repair program proofs.
Seniority
Not specified
Domain
Software verification, formal methods, automated reasoning, AI based agents, provable security, cloud computing, cryptography, Infrastructure as Code