Python Software Engineer | Research Engineer | Python Analysis Engineer

Do you have an interest and experience in the intricacies of the Python programming language? Are you fascinated by program analysis, tooling or the compiler internals of any software language? Would you like to help us secure the code that runs the world?

The main thing we look for in candidates is intelligence and the ability to learn. We are interested in talking to people at any point in their career: from Interns to Seniors and above. 

  Essential Requirements
  • Strong experience of programming in Python with a sound knowledge of the language reference
  • A rigorous foundation in Computer Science (BSc, MSc, PhD or equivalent practical experience) 

  Desirable skills
  • Deep understanding of Python as a language (its flaws and limitations) including a variety libraries and frameworks such as Django, Flask, Tornado, numpy, Scipy, scikit-learn
  • Experience of other programming languages e.g.  C / C++, C#, Java, JavaScript, Go 
  • Open-source software development and contributions to software repositories/communities (GitHub, StackOverflow, Bitbucket)
  • Program analysis or Programming language design
  • Compiler construction
  • Logic programming and Declarative Programming (e.g. Prolog, Datalog)
  • Functional Programming (e.g. Rust, Haskell, OCaml, Lisp, Elm etc.)
  • Abstract interpretation
  • Formal verification

As a Python program analysis/research engineer, you would be part of a team of code analysis and compiler experts working to redefine what’s possible through static analysis of Python as a language. You’ll use Semmle QL to develop sophisticated analyses for security and code quality issues, and make sure that Python and it's thousands of applications are fully supported. You’ll collaborate with the Semmle Security Research team, and with the world's leading Python Software Engineers, on creating the best analysis libraries possible. 
Much of your work would be out in the open, and would directly benefit tens of thousands of open-source projects via; the only variant analysis platform that combines deep semantic code search with data science insights to help developers ship secure code.

About Semmle
Semmle believes security is a shared responsibility. Our mission is to secure the code that runs the world by bringing the security and development communities together. Google, Microsoft, NASA, Uber, Palantir and many others rely on Semmle’s products to scale their security expertise and quickly explore any codebase to discover zero-days and all variants of vulnerabilities. We empower product security teams to deliver variant analysis results to development teams using LGTM to ship safe code and protect their customers. Semmle's platform enables the security community to collaborate and share their expertise in the field of variant code analysis and security research.

We offer intellectually stimulating work, competitive salaries, and a relaxed work environment in Oxford, Valencia, Copenhagen, New York, San Francisco or Seattle.

How do you apply?
Semmle aims to hire outstanding people who have a diversity of perspectives, ideas and cultures. We actively support diversity and inclusion in the workplace and are committed to equal employment opportunity regardless of race, colour, ancestry, religion, sex, national origin, sexual orientation, gender identity, age, citizenship, marital status or disability status.

Please complete the following form to apply or feel free to get in touch with Zac Wallis at for more information. 

We encourage applicants to let us know of any accessibility requirements, so that we may provide the best possible support during the application process and your time at Semmle.

Want to apply later?

Type your email address below to receive a reminder

ErrorRequired field

Apply to Job

ErrorRequired field
ErrorRequired field
ErrorRequired field