Tim Northover

Compiler Engineer Of Some Stripe at Apple

Keynsham, England, United Kingdom
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
Tim Northover is a compiler engineer with 13+ years of experience focused on LLVM and ARM/AArch64 backends, currently working at Apple after implementing the AArch64 backend while at ARM. He blends deep mathematical training (Cambridge and a PhD from Edinburgh) with hands-on compiler lowering, codegen and ABI work, notably contributing to llvm/clang and swift-llvm by legalizing va_arg in GlobalISel and tightening ARM atomic and calling-convention handling. Tim excels at target-specific optimizations and low-level correctness, with a track record of simplifying exception logic and enabling ARM intrinsics across large, widely used open-source compiler trees. Colleagues rely on him for subtle, correctness-first fixes that often prevent costly runtime bugs across platforms.
code13 years of coding experience
job3 years of employment as a software developer
bookMaster's degree, Mathematics, Master's degree, Mathematics at Cambridge University
bookDoctor of Philosophy (PhD), Mathematics, Doctor of Philosophy (PhD), Mathematics at Edinburgh University
github-logo-circle

Github Skills (18)

assembly10
c-language10
architecture10
atomics10
llvm10
internals10
compiler-construction10
assemble10
atomic10
assembler10
compiler10
arm10
g10
architectures10
cprogramming-language10

Programming languages (9)

C++CRustLLVMRPCGoHTMLVim Script

Github contributions (5)

github-logo-circle
apple/swift-llvm

Nov 2015 - Oct 2019

Role in this project:
userBack-end Developer
Contributions:172 commits, 112 pushes in 3 years 11 months
Contributions summary:Tim contributed to the LLVM project by implementing and legalizing the `va_arg` instruction within the GlobalISel framework for the AArch64 architecture. Their work involved translating and legalizing the `va_arg` instruction, verifying the inclusion of memory operands for generic loads and stores, and adding support for merge/unmerge nodes in the legalizer. They also made changes to handle trivial inlineasm calls, and added more robust handling of G_INSERT, ensuring it was correctly implemented.
apple/swift-clang

Nov 2015 - Mar 2019

Role in this project:
userBack-end Developer
Contributions:47 commits, 42 pushes in 3 years 4 months
Contributions summary:Tim's primary contributions involve modifying code related to the `apple/swift-clang` project. These changes include adapting to watchOS ABI changes, simplifying exception handling logic, and enabling certain ARM intrinsics. The user also appears to be involved in merging upstream changes and fixing syntax errors, indicating work across different parts of the project. These contributions suggest a focus on compiler internals and target-specific code optimization.
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