Senior Systems Engineer, Semgrep Analysis Foundations
About Semgrep
Our mission is to make world-class software security available to everyone. This means building program analysis tools that are open source, easy to use, powerful, and fast. It also means building a team with security expertise and a passion for great developer experiences. Most of all, it means working with honesty and respect in a diverse community of dreamers and builders. We’ve redefined static analysis tooling by committing to all of these, and turned our project, Semgrep, into an essential safeguard for code at Snowflake, Dropbox, and more.
About the role
As a member of the Semgrep Analysis Foundations team, you’ll own the code analysis that underlies our products, doing whatever is needed to make it work seamlessly for our users. You’ll help Semgrep scan ever-larger repositories, run in environments ranging from continuous integration containers to developer IDEs, understand the semantics of a wide range of programming languages, and build for different operating systems. All the while, you’ll ensure we release improvements frequently and painlessly, supporting our culture of fast experimentation. Through Semgrep’s culture of transparency, you’ll see and influence the decisions that make a startup successful. Your decisions will be key to making Semgrep a world-leading static-analysis project, giving you lasting influence not only at Semgrep, but in the world’s developer community.
You will:
- Ensure that our changes are released frequently and reliably through a number of distribution methods, including pip, homebrew, and docker
- Build tooling that allows us to support our users more effectively when they encounter problems
- Make fundamental improvements to Semgrep’s analysis capabilities that affect all users, including to its performance, availability, and precision
- Advocate for architectural decisions that make our code easy to reason about and allow us to scale with an exponentially growing number of users
- Help set the technical roadmap for our foundational analysis, listening to our users as well as program analysis engineers and security researchers across the company
- Advise and mentor other engineers via thoughtful code reviews, planning discussions, technical documentation, and formal mentorship
You are ideal for this role if you have:
- Interest in code analysis. If you’ve ever spent time studying how your interpreter, compiler, linter, or garbage collector works, come work with us!
- 3+ years experience owning the success of a critical service with a large and exponentially growing number of users, particularly its performance and reliability, with the help of frameworks like Opentelemetry
- Experience building for multiple operating systems, such as Linux, Apple Silicon, and Windows, including in CI environments
- Experience working in a functional programming language (OCaml, Haskell) or the excitement to learn
- Passion for shipping quickly and safely, caring deeply about solving real problems for our users and allowing them to depend on us
- Excellent and proactive communication, both verbal and written
Some examples projects you might work on include:
- Improve our observability tooling to reduce the time taken to identify the root cause of bugs found when analyzing customers’ code
- In partnership with our Managed Scanning team, propose and lead the implementation of a release process that reduces release cycles from weekly to daily or continuously for most users
- Deliver support for running Semgrep natively on Windows
- Optimize how Semgrep infers the relationships between functions to speed up dataflow analysis
- Build a robust performance testing platform that allows every change to be confidently verified for performance regressions
- Design a new rule syntax based on requests from the product teams to simplify rule writing in the presence of common frameworks
eveloper community.
You will:
- Work on major initiatives end-to-end, from investigation through design, implementation, and deployment
- Help set technical and product direction, collaborating with the team to determine the future of the internal platform, what features to build, and how to build them
- Architect and build elegant, maintainable, extensible software systems
- Learn from internal and external users to understand their needs, build solutions that solve their biggest pain points
- Advocate for and develop intuitive, simple, robust APIs that solve a wide variety of complex problems using simple, elegant abstractions
- Ensure continual, high-availability operation of services using modern site-reliability practices, including participation in an on-call rotation
- Advise and mentor other engineers via thoughtful code reviews, planning discussions, technical documentation, and formal mentorship
- Work with urgency, understanding that your impact generates immediate value for customers
- Collaborate with engineers, product managers, designers, and security researchers to build the best product possible
You are ideal for this role if you have:
- 6+ years of experience writing production software and building web applications. Our stack includes Python, TypeScript, Javascript, React, and Postgres on AWS with Kubernetes
- Excitement about building for internal and external customers, learning their needs, iterating fast, and seeing your solutions solve their core problems
- Comprehensive full stack experience up and down the stack
- Excellent and proactive communication, both verbal and written
Some examples projects you might work on include:
- Implementing Role-Based Access Control
- Developing unified APIs that provide functionality like posting comments and fetching file contents across a several source control systems
- Scaling the systems that power Semgrep scans while improving their performance and fault-tolerance characteristics
- Rethinking the Semgrep rule registry web app
Location
This role must come in office 2-3 days per week to either or San Francisco, Boston or New York locations.
Compensation
Salary Range: $166,000-196,000 USD
Our compensation package includes equity and benefits in addition to salary.
Please note that the range listed is for someone based in the San Francisco Bay Area.
What we offer
Our goal is to competitively and fairly compensate every Semgrep employee with a system that equally rewards those who are vocal and those who are less comfortable making demands during the final steps of the hiring process. To that end, we generate internal compensation bands that are used when discussing and negotiating salaries. We update these based on market data to make sure they’re above the average for comparable roles.
We also invest in our employees’ well-being and long term success with comprehensive health plans, generous vacation time, 401k, learning stipends, and more. Our benefits are for everyone, so that you’re taken care of, and we work with individuals to make sure they have what they need, whether that’s quiet work space, adjusted hours, or something else.
Who we are
We have people from France and the Philippines, physics and philosophy, formal methods research and full fledged corporations. We’re new parents and new grads, aspiring authors and aspiring Americans, dog lovers and dogfooders. We get together often to bike, bake, and meet up in parks. In our interactions, we believe respect and honesty go hand in hand, and prioritize both.
Semgrep is an equal-opportunity employer seeking a diverse range of backgrounds. We value who you are — including your cultural heritage, your socioeconomic status, your age, your race, your gender, your sexual orientation, your disabilities. We value what’s vitally important to you — your family, your religion, your politics. We value what you love in this world — your music, your weekend pursuits. We believe in welcoming varied professional backgrounds, educations, and interests. If you’re exceptional in your role, believe in Semgrep’s mission, and treat Semgrep’s values as your own, you belong here.
Apply for this job
*
indicates a required field