What I do

For Work

I work at the Cambridge-based startup Avos Technology Ltd, as a full stack engineer. At work I write a lot of Typescript, React and Golang. Additionally I do my fair share of fiddling with AI. Sorry - that’s all I can tell you!

For Fun

In my spare time I like to read nonfiction, edit openstreetmap, cook, run, go to the gym and play squash. I used to cycle a lot (20+ miles/day), but I need to get back into it to be frankly honest, I miss it dearly.

I spend a good fraction of my time learning computer science topics, and tinkering with both software and hardware. A fun challenge I sometimes enjoyed working on is Project Euler. While I am still relatively new to Project Euler, I am fond of the open-ended process of learning more about difficult mathematical problems, that are combined with solutions requiring optimised computer programs.

What I used to do

I recently finshed my DPhil in Free Space Visible Light Communications at University College, University of Oxford, supervised by Prof. Steve Collins. I believe I was very successful with my research, attending three conferences and publishing tirteen papers with (at least two) more in draft, and possibly a patent. ORCID iD icon https://orcid.org/0000-0002-2388-4369

The focus of my research was using silicon photomultipliers to achieve high-speed free space optical links with the twist of being in the presence of ambient light, as would be in a real-world scenario. Through these studies I’ve written a very fast and accurate (C++ based) simulation of silicon photomultipliers, which has been backed by experiments. This simulator which will enable rapid experiments for other researchers in the future at Oxford and beyond, I hope!

What I’m looking for

I’m currently looking to collaborate with someone for research, I’m pretty keen on electrical and software, and would prefer to keep to those topics, however I am comfortable with statistics too. In my spare time I have been playing with machine learning, I’ve so far written an autograd, and been able to train a multi layer perceptron from the ground up (entirely in my code).

I’ve become a bit incensed the current ml frenzy, and I hope to extend my hacking/research to model architecture, langauge models and more. It looks like the field is ripe for the picking and I might as well have a go at building some things and trying out weird ideas. You never know, you might have a bright idea eventually. If this sounds like something you’d be interested in cooperating with me on, reach out via E-Mail or LinkedIn!

Additionally, if anybody wants to pick my brain for SiPM or OWC knowledge, please reach out.

My Experience

I graduated from my Engineering Science degree in 2019 with a Class 1 MEng from The University of Oxford. For the the last half year of my MEng and the first year of my DPhil, I assumed the role as an engineering manager for the electrical and embedded software team on the Oxford race car.

I completed my Fourth Year Project on simulations and optimisation of advanced modulation schemes.

During my undergraduate I worked two summers as an engineer at the startup PrOXisense, with a focus on analysing Blade Tip Timing, Blade Tip Clearance, and Thermal Product sensors. I created simulations and data analysis tools in Python and MATLAB to interrogate and understand data generated from PrOXisense’s novel sensors. This work, along with experiments, guided future development work and allowed for technical presentations to customers. I also spent a lot of effort on automation and data acquisition on various test setups.

I briefly consulted for an algorithmic trading company and suggested some effective strategies for arbitrage.

Technical Strengths

My Specialties

I normally program in Python and C++, and am very comfortable with both. MATLAB was used for my undergraduate and DPhil, as I had to interact with a vast array of test and measurement tools, and write in a language that the majority of my faculty uses. I am comfortable programming in Type/JavaScript, PHP, Go, C and Haskell (but might need a refresher and documentation open when playing with monads). When writing documents, I like to use LaTeX, but have an excellent understanding of other markup languages like CSS and HTML.

My Dreams

In the future it is my hope that I will learn Erlang, some HDL/Verilog and maybe RISC-V assembly too. I also hope that the future allows me more play around far more with Haskell, as using it requires thinking in a completely different way to “normal” programming, and is a fun way to expand your mind.

My Everyday Tools

My tool-set for general computer work is using zshell, tmux, vim, git and ssh. I run GNU/Linux for my desktop and have a multiple GNU/Linux servers. In the past I have sported BSD but I wouldn’t claim to be all knowing with it. I live in and love the terminal, for which I use zshell with oh-my-zsh, and tmux. My dotfiles are available if you would like to look at my config (I have some useful scripts I’ve written in there).

My CV has an accurate up to date list of all the software I am comfortable with, and various methods I use day to day.

My Education

In my Final year of my Undergraduate, I specialised in Mathematical Methods, ‘Computer Vision & Robotics’, Machine Learning, Advanced Communications, Microelectronics and finally ‘Optics, Optoelectronics, Metamaterials & Plasmonics’. Other courses I enjoyed were Information Engineering, Optimisation, Control Systems, ‘Biomedical Modelling and Monitoring’ and Engineering Computation.

In my DPhil, I became a lab gremlin: a fully fledged ‘scopemaster’ as Grahame would put it, and one hell of an experimentalist. I’d get less than one hour of natural light a day and not have a haircut for over a year, but every cause deserves sacrifice.

Through surviving my studies, I have a wealth of experience in RF PCB and system design (and debugging), optics (lasers and more), 3D printing, experimental technique, simulink, signal processing, the list goes on. I truly feel like a changed man post-DPhil, and I am excited to keep this energy going forward.

My End Goals

I’m still figuring this out for myself. I like the idea of doing AI research, but I also like the idea of doing a startup.

Watch this section, as it will change as I figure things out.