Come help improve the programming languages used for developing systems software. The Checked C project is looking for a talented compiler engineer to join our project.
The world’s most important software is written in C and C++, including operating systems, browsers, and networking software. Low-level programming errors can turn into security and reliability problems. The Checked C project is incrementally extending C with checking to detect or prevent these errors. For information on the Checked C project, see https://github.com/Microsoft/checkedc.
As a Senior Engineer, you will design, implement, and be responsible for features of the Checked C compiler implementation. You may also help with the design of new features of the Checked C extension. Your responsibilities will depend on your experience and interests: you may work on the compiler front-end, type checker, static checker, or the implementation and optimization of runtime checks. In addition, you may work on automatic conversion tool. We are looking for an engineer who is passionate about compilers and programming languages.
- Design and implement compiler features for Checked C in a fork of the clang/LLVM compiler.
- Deliver a product-quality implementation by creating tests that show that features work properly.
- Diagnose and fix bugs reported by programmers.
- Follow established high-quality software development processes.
- Participate in the open-source compiler community.
- Participate in the Checked C extension design.
- 5 or more years of software development experience
- 3 or more years of experience implementing compilers or programming languages. Time spent on advanced course work or research may be counted toward this requirement
- A bachelor's degree in computer science, engineering, or math
- Experience developing production code in C++, C#, or Java
- Masters or Ph.D. preferred
- At least 2 years of experience shipping or creating production-quality compiler implementations
- Experience with clang/LLVM
- C or C++ programming experience
- Knowledge of programming language semantics or experience working from programming language specifications
Ability to meet Microsoft, customer and/or government security screening requirements are required for this role. These requirements include, but are not limited to the following specialized security screenings: Microsoft Cloud Background Check: This position will be required to pass the Microsoft Cloud Background Check upon hire/transfer and every two years thereafter.