Michael Spencer

Compiler Engineer at Apple

Redwood City, California, United States
email-iconphone-icongithub-logolinkedin-logotwitter-logostackoverflow-logofacebook-logo
Join Prog.AI to see contacts
email-iconphone-icongithub-logolinkedin-logotwitter-logostackoverflow-logofacebook-logo
Join Prog.AI to see contacts

Summary

🤩
Rockstar
🎓
Top School
Michael Spencer is a compiler engineer with 15 years of experience designing and refining compiler tooling for high-performance platforms, currently building compiler technology at Apple from Redwood City. His work spans deep frontend and driver-level changes in Clang—refactoring option parsing, adding command-line prefixes, and improving MSVC intrinsic support—reflecting a pragmatic focus on maintainable, production-grade compiler internals. He progressed from hands-on engineering roles at Sony and startups to leading the Clang team at Apple, blending individual contributor craftsmanship with brief management experience. Known for contributing to the canonical LLVM/Clang mirror, he brings both long-term stewardship of foundational open-source infrastructure and a track record of shipping robust compiler features used across large codebases.
code16 years of coding experience
job13 years of employment as a software developer
bookGainesville State College
github-logo-circle

Github Skills (13)

compiler10
compiler-compiler10
c-language10
driver10
clangd10
cprogramming-language10
clang10
api8
apim8
api-design8
backend8
cplus7
cpp7

Programming languages (15)

JavaC++BikeshedCRPCTeXHTMLPerl

Github contributions (5)

github-logo-circle
llvm-mirror/clang

Jul 2010 - Oct 2019

Mirror kept for legacy. Moved to https://github.com/llvm/llvm-project
Role in this project:
userBack-end Developer
Contributions:78 commits in 9 years 4 months
Contributions summary:Michael primarily focused on modifying and updating the Clang compiler's internal components. Their contributions involved making changes to the option processing, specifically refactoring and enhancing the `Option` class. These modifications extended to the driver, tools, and front-end code, where they added support for prefixes, integrated new command-line options and refined how options were parsed and utilized within the Clang infrastructure. The user also updated internal components related to MSVC intrinsics.
llvmcompilerc-plus-pluscobjective-c
Bigcheese/llvm-project

Dec 2019 - Jun 2026

The LLVM Project is a collection of modular and reusable compiler and toolchain technologies. Note: the repository does not accept github pull requests at this moment. Please submit your patches at http://reviews.llvm.org.
Contributions:87 pushes, 92 branches in 6 years 7 months
compilerstechnologiesclangbazelsubmit
Find and Hire Top DevelopersWe’ve analyzed the programming source code of over 60 million software developers on GitHub and scored them by 50,000 skills. Sign-up on Prog,AI to search for software developers.
Request Free Trial