Joe Richey is a software engineer with a decade of experience specializing in low-level systems and applied cryptography, currently at Google (DeepMind) after several years on the Platform Encryption team for Google Cloud. He regularly contributes to open-source Go and Rust ecosystems—allocating 20% of his time to improving Go—and has shipped work across TPM tooling, filesystem encryption (fscrypt), Argon2id, secure randomness (getrandom), and kernel/UEFI interfaces. His contributions bridge userland and firmware/OS boundaries, including Windows TBS support, syscall bindings, UEFI/GDT tooling, and TPM event log parsing, demonstrating deep cross-platform systems expertise. A University of Michigan math and CS graduate, he also published undergraduate research in modular forms, an uncommon academic background that informs his rigorous approach to security and correctness.
10 years of coding experience
1 year of employment as a software developer
Bachelor's degree, Mathematics and Computer Science, Bachelor's degree, Mathematics and Computer Science at University of Michigan
Student Leaders Exchange, Summer 2012, Student Leaders Exchange, Summer 2012 at National Committee on United States - China Relations
Intensive five-week mathematics program, Mount Holyoke College, South Hadley, Massachusetts. Summer 2010., Intensive five-week mathematics program, Mount Holyoke College, South Hadley, Massachusetts. Summer 2010. at Canada/USA MathCamp
Kansas City, Missouri area, Kansas City, Missouri area at Park Hill South High School
A small cross-platform library for retrieving random data from (operating) system source
Role in this project:
Back-end Developer
Contributions:294 reviews, 198 commits, 310 PRs in 3 years 8 months
Contributions summary:Joe significantly contributed to the `getrandom` crate, a cross-platform library for retrieving random data. Their work focused on enhancing the Linux/Android implementation by adding support for the `getrandom` system call, improving error handling, and optimizing buffer handling. Furthermore, the user addressed platform-specific issues on other systems, such as macOS, and corrected code for the wasm32 target. Their contributions also encompassed adding support for x86/x86_64 and adding tests to ensure proper functionality.
Contributions:12 releases, 30 reviews, 292 commits in 5 years 11 months
Contributions summary:Joe primarily focused on the implementation and maintenance of cryptographic key management within the `google/fscrypt` repository, specifically for Linux filesystem encryption. They were responsible for creating the "Key" struct for secure data handling, and also built functions for key wrapping, unwrapping, and passphrase hashing, utilizing cryptographic primitives such as AES256-CTR, HMAC-SHA256, and Argon2id. The user also integrated the keying functionality with the kernel's keyring by creating and managing the policy and user key inserts.
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.