Andrew Fowler

Senior Researcher at Microsoft

Cambridge, 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
Andrew Fowler is a senior researcher based in Cambridge with 13 years’ experience at the intersection of research, software engineering and data science. He holds a PhD in Materials Science and an MPhil in Scientific Computing from Cambridge, and has applied that quantitative background to roles from research software engineering to senior data-science consulting. Now at Microsoft, he focuses on rigorous back-end and formal methods work—evidenced by contributions to the Oak project where he developed a Coq runtime model and refined non-interference semantics for secure distributed systems. Comfortable bridging academic rigor and production needs, he has a track record of turning formal specifications into maintainable implementations. Colleagues rely on him for deep technical thought alongside pragmatic delivery across research and industrial settings.
code13 years of coding experience
job3 years of employment as a software developer
bookDoctor of Philosophy - PhD, Materials Science, Doctor of Philosophy - PhD, Materials Science at University of Cambridge
bookBsc,MPhys, Physics, Bsc,MPhys, Physics at University of Warwick
github-logo-circle

Github Skills (5)

formal-verification10
coq10
distributed-systems8
enclave8
policies8

Programming languages (9)

C#C++LeanRustCOCamlScalaGo

Github contributions (5)

github-logo-circle
project-oak/oak

Jul 2020 - Jan 2021

Meaningful control of data in distributed systems.
Role in this project:
userBack-end Developer
Contributions:118 reviews, 50 commits, 77 PRs in 6 months
Contributions summary:Andrew's commits primarily focused on the development of a formal Coq runtime model for the Oak project. Their contributions involved defining security levels, commands, system states, and single-call semantics. Key changes included the introduction of an event-augmented semantics, refactoring the state transition as an inductive proposition, and refining the low projection definition for non-interference.
distributed-systems
apl-cornell/ChiselFlow

Feb 2017 - Aug 2017

Contributions:48 commits in 6 months
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