Senior Product Security Engineer - Code Analysis
GitHub is changing the way the world builds security software and we want you to help change the way we secure GitHub. The Code Analysis team within GitHub's Product Security Engineering organization is responsible for automatically detecting and tracking vulnerabilities throughout the software development lifecycle.
We're looking for senior engineers with a passion for security to establish our new Code Analysis team. You will be responsible for architecting and building our new static analysis pipeline, which will integrate CodeQL, Semgrep and custom static analysis tools. You'll be responsible for modernizing our Ruby and Go analysis pipeline to ensure that it provides actionable information to engineers during development. We're also building out new capabilities for analyzing cloud infrastructure configs such as Docker, Terraform, AWS and Azure.
You will be working with other members of Product Security Engineering to understand the root cause of vulnerabilities identified through our manual code review process, red team operations or Bug Bounty program, then developing static analysis rules to prevent future occurrences.
We can't detect all vulnerabilities statically, so we need to analyze some applications in production. You'll be responsible for prototyping our new dynamic analysis pipeline to automatically determine which of our web applications are consistently following our baseline security standards.
Discovering vulnerabilities is only the first step in the vulnerability lifecycle. The Code Analysis team is responsible for tracking vulnerabilities from discovery to remediation. You'll be responsible for improving our current vulnerability lifecycle tooling to ingest vulnerabilities from our new static and dynamic pipelines. You'll also be responsible for integrating with GitHub product security features such as Dependabot, Secret Scanning and Code Scanning. As part of this work, you will also be involved in socializing static and dynamic analysis within the company and driving adoption by engineering teams.
Your responsibilities will include:
- Providing technical direction for our new static and analysis pipelines
- Developing custom static analysis tools using Ruby and Go
- Performing root cause analysis of vulnerabilities and developing new static analysis rules
- Developing custom CodeQL and Semgrep queries for internal projects
- Developing tools to track vulnerabilities from discovery to remediation by engineering teams
- Being an internal advocate for static analysis and other security tools
- 5+ years of professional experience in developing software
- Strong written and verbal communication skills
- Comfort collaborating with other security teams and engineers in an asynchronous environment
- Practical software development skills using Ruby or Go
- Solid understanding of testing principles and high quality software
- Experience providing leadership on existing and new projects
- Experience providing technical mentorship to other team members
A bonus if you have:
- Experience using static analysis tools such as CodeQL, Semgrep and Brakeman
- Experience of cloud infrastructure such as Docker, Kubernetes, AWS or Azure
- Experience with dynamic web testing tools
- Git and GitHub experience