Staff Software Engineer
Role details
Job location
Tech stack
Job description
We are looking for a Senior Software Engineer to join one of the distributed software engineering teams responsible for building and expanding code analysis engines and agents at GitHub. In this role you will work in one of the following areas, selected based on your own experience and interests, and the needs of the organization at the time of hiring:
Code analysis:
- Maintaining detection support for multiple programming languages, including:
building source code extractors that translate code written in each language into data that CodeQL can understand, keeping up with the latest version of each supported language
- writing and maintaining queries in the CodeQL query language that accurately detect security vulnerabilities and undesirable coding patterns
ensuring the quality of LLM-powered Copilot Autofix suggestions for fixing the alerts found building analysis libraries in the CodeQL query language that reason precisely about the semantics of programming languages, supporting the development of queries across all languages
- experimenting with and robustly evaluating LLM-powered detection engines and integration between LLMs and traditional static analysis.
Foundations:
- Developing QL, the query language powering CodeQL analysis, and its underlying query compiler and evaluator within the CodeQL CLI.
- Expanding the expressive power of the CodeQL query language and speeding up the performance of the underlying query engine, empowering other teams to write high-quality analysis, and ensuring that CodeQL scales to the largest codebases in the world.
AI agents:
- LLM-based code review: Building, improving, and evaluating the detection agent for Copilot code review, using LLMs and contextual information from a codebase to produce AI-powered review comments on pull requests.
LLM-based fix generation: Building, improving, and evaluating the Copilot Autofix agent, using LLMs and contextual information to produce actionable AI-powered fix suggestions for code security and quality findings.
- Improving the security and quality of code produced by Copilot coding agent, using the above engines and other security products at GitHub.
In any of the above tracks, you will work closely with various engineering teams, product managers, designers, and technical writers that build different aspects of the code scanning product, to influence product direction and deliver features to users, with clear focus on quality, reliability, and user experience. You will engage with internal users and external users (both from enterprise customers and the open-source community) to help them succeed with the product. You'll influence and provide feedback on the organizational culture and processes, always looking for opportunities to improve in a continuous pursuit of excellence.
Requirements
Do you have experience in TypeScript?, Do you have a Master's degree?, * 9+ years' experience in software engineering, computer science, or related technical discipline with proven experience maintaining and delivering production software coding in languages including, but not limited to, Go, Ruby, Rust, Python, JavaScript, C, C++, C#, Java
- OR associate's degree in Computer Science, Electrical Engineering, Electronics Engineering, Math, Physics, Computer Engineering, Computer Science, or related field AND 8+ years' experience in software engineering, computer science, or related technical discipline with proven experience maintaining and delivering production software coding in languages including, but not limited to, Go, Ruby, Rust, Python, JavaScript, C, C++, C#, Java,
- OR bachelor's degree in Computer Science or related field AND 7+ years' experience in software engineering, computer science, or related technical discipline with proven experience maintaining and delivering production software coding in languages including, but not limited to, Go, Ruby, Rust, Python, JavaScript, C, C++, C#, Java,
- OR master's degree in Computer Science, Electrical Engineering, Electronics Engineering, Math, Physics, Computer Engineering, Computer Science, or related field AND 5+ years' experience in software engineering, computer science, or related technical discipline with proven experience maintaining and delivering production software coding in languages including, but not limited to, Go, Ruby, Rust, Python, JavaScript, C, C++, C#, Java,
- OR doctorate in Computer Science, Electrical Engineering, Electronics Engineering, Math, Physics, Computer Engineering, Computer Science, or related field AND 3+ years' experience in software engineering, computer science, or related technical discipline with proven experience maintaining and delivering production software coding in languages including, but not limited to, Go, Ruby, Rust, Python, JavaScript, C, C++, C#, Java,
- OR equivalent experience.
- 3+ years of experience with one or more of the following areas:
- Software security, including static analysis, dynamic analysis, software supply chain security, and best practices in creating high-quality, secure code.
- OR Experience building developer tools that operate on source code, such as compilers, parsers, linters, static analyzers, debuggers, CLI tools, or IDE extensions.
- OR Machine learning and AI applied to understanding source code, specifically building systems that use large language models (LLMs) to generate or reason about code, and systematic benchmarking and evaluation of those systems.
Preferred Qualifications
- Experience with two or more of the areas listed above
-
Experience designing and running statistically-sound experiments to measure performance and quality, evaluating results to minimize bias and noise.
-
Industry or research knowledge of compilers, program analysis, programming language design and implementation. o OR Knowledge of logic programming or database query languages (e.g. SQL, Prolog, Datalog, Kusto Query Language).
-
Experience in security research, demonstrated by a history of identifying, analyzing, and disclosing vulnerabilities in open-source projects. Comprehensive understanding of security best practices, attack vectors, and the vulnerability management lifecycle from discovery to remediation and disclosure.
GitHub Leadership Principles:
GitHub values
- Customer-obsessed
- Ship to learn
- Growth mindset
- Own the outcome
- Better together
- Diverse and inclusive
Manager fundamentals
- Model
- Coach
- Care
Leadership principles
- Create clarity
- Generate energy
- Deliver success