Awards and Fellowships
- Recipient of Best Paper Award at EuroSys 2024 for Validating Database System Isolation Level Implementations with Version Certificate Recovery, joint with Jack Clark, John Wickerson and Manuel Rigger
- Recipient of Best Paper Award at the Industry track of ICST 2024 for Randomised Testing of the Compiler for a Verification-Aware Programming Language, joint with Dilan Sheth, Jean-Baptiste Tristan and Alex Usher
- Recipient of Distinguished Paper Award at ISSTA 2023 for GrayC: Greybox Fuzzing of Compilers and Analysers for C, joint with Karine Even-Mendoza, Arindam Sharma and Cristian Cadar
- Recipient of Most Influential Paper Award at OOPSLA 2022, for OOPSLA 2012 paper GPUVerify: a Verifier for GPU Kernels, joint with Adam Betts, Nathan Chong, Shaz Qadeer and Paul Thomson
- Recipient of Best Paper Award at MET 2021 for Dreaming up Metamorphic Relations: Experiences from Three Fuzzer Tools, joint with Andrei Lascu, Matt Windsor, Tobias Grosser and John Wickerson
- Winner of an Imperial College President’s Medal for Excellence in Innovation and Entrepreneurship, 2019
- Recipient of Best Paper Award at IISWC 2019, for One Size Doesn’t Fit All: Quantifying Performance Portability of Graph Applications on GPUs, joint with Tyler Sorensen and Sreepathi Pai
- Recipient of Distinguished Paper Award at IWOCL 2019 for Performance evaluation of OpenCL standard support (and beyond), joint with Tyler Sorensen and Sreepathi Pai
- BCS Roger Needham Award, 2017
- Receipient of Best Experience Report at ASE 2017 for Floating-Point Symbolic Execution: A Case Study in N-version Programming, joint with Daniel Liew, Daniel Schemmel, Cristian Cadar, Raphael Zahl and Klaus Wehrle.
- Recipient of Best Paper Award at ESEC/FSE 2017 for Cooperative Kernels: GPU Multitasking for Blocking Algorithms, joint with Tyler Sorensen and Hugues Evrard.
- Imperial College London President’s Award for Excellence in Teaching, 2016
- EPSRC Early Career Fellow, 2016-2021
- Recipient of Best Paper Award at ICST 2016 for Symbooglix: A Symbolic Execution Engine for Boogie Programs, joint with Daniel Liew and Cristian Cadar.
- Recipient of a HiPEAC Technology Transfer Award for integration of CLsmith with the Collective Knowledge framework, with dividiti, 2016
- Two HiPEAC 2016 paper award for a paper at POPL’16 and a paper at PLDI’16
- Three HiPEAC 2015 paper awards, for a paper at ASPLOS’15 and two papers at PLDI’15 (1), (2)
- Shortlisted for Best Innovation in Teaching category at the Imperial College Union Student Academic Choice Awards 2014
- Recipient of Best Student Paper Award at PPoPP 2014 for Concurrency Testing Using Schedule Bounding: an Empirical Study, led by Paul Thomson and co-authored with Adam Betts
- Recipient of a HiPEAC Technology Transfer Award for technology transfer of GPUVerify to ARM, 2013
- Recipient of an Intel Early Career Faculty Research Award, 2013
- Best Teaching for Undergraduates award at the Imperial College Union Student Academic Choice Awards, 2013
- Nominated for an ETAPS 2013 Best Paper Award for Interleaving and Lock-Step Semantics for Analysis and Verification of GPU Kernels (ESOP 2013), co-authored with Peter Collingbourne, Jeroen Ketema and Shaz Qadeer
- Non-Stipendiary Research Fellow of Wolfson College Oxford, 2010-2011
- EPSRC Postdoctoral Research Fellow, 2009-2012
- Winner (as part of the team at Codeplay Software Ltd.) of Research & Design Award, European Electronics Industry Awards 2008 for the Sieve Parallel Programming System
- PhD thesis, Automatic Techniques for Detecting and Exploiting Symmetry in Model Checking (University of Glasgow, supervised by Alice Miller), nominated for the 2008 British Computer Society Distinguished Dissertation Award
Invited Presentations at International Meetings and Schools
- Roger Needham Award lecture, The Royal Society, London, November 2017
- Tutorial at 28th International Conference on Concurrency Theory (CONCUR), September 2017
- Programming Language Implementation Summer School (PLISS), Bertinoro, May 2017
- International Workshop on Dynamic Analysis, part of SPLASH 2016 in Amsterdam
- 6th Halmstad Summer School on Testing (HSST), June 2016
- Imperial Outreach Lecture: What Makes Software Go Wrong?, June 2016
- High Integrity Software Conference, Bristol, November 2015
- UPMARC Multicore Computing Summer School, June 2015
- 14th International Workshop on Automated Verification of Critical Systems (AVoCS), September 2014
- Invited lecturer at École de Recherche on Semantics and Tools for Low-Level Concurrent Programming, École Normale Supérieure Lyon, France, January 2013
- First Workshop on Validation Strategies for Software Evolution (VSSE), March 2012
- Invited lecturer at International Summer School on Advances in Programming Languages, Heriot-Watt University, Edinburgh, UK, August 2009