I am a Lecturer of CyberSecurity at the University of Strathclyde as part of Computer & Information Sciences , where I am principally a member of StrathCyber group and a bridge with the MSP Group. I am also part of the wider Scottish Programming Languages Institute that offers a framework to better the interaction of programming language researchers across Scotland, and SICSA, The Scottish Informatics & Computer Science Alliance.

My research investigates how we can take programming language theory and technologies, namely type-systems, dependent types, & functional programming, and use them to fundamentally change systems to make them more trustworthy: Secure and Safe.

If you are interested in student projects or research studies with me then please read this. If you are interested in working with me as a research associate then please read this

Prior to my time at Strathclyde I was a Research Associate at the School of Computing, University of Glasgow.

During my time at Glasgow I was a member of the Glasgow Parallelism Group (GPG) as part of the Glasgow Systems Section (GLASS), and I maintained strong links with the Formal Methods Research Group in Formal Analysis, Theory & Algorithms (FATA) Section through membership of the Programming Languages (PL) Theme.

Before I came to Glasgow I was a Research Fellow (and Teaching Fellow) at the School of Computer Science, University of St Andrews. I completed both my PhD and undergraduate degrees at the University of St Andrews, and in between these degrees I was a Master student (as part of the now defunct Kerckhoffs Institute) at the Institute for Information & Computer Science, Radboud Universiteit Nijmegen in the Netherlands.