I'm Patrick, a software engineer based in London. I have experience working across backend, web and mobile.
Node
Java
Terraform
Python
Scala/Akka
Postgresql
C/C++
Angular
React
JavaScript
TypeScript
HTML
CSS/SCSS
Swift
Kotlin
GCP
AWS
Docker
Kubernetes
Heroku
The following are a mix of personal projects, theses and past assignments. More projects can be found on my blog or GitHub.
My team's Hack Cambridge entry, which used Microsoft's Cognitive APIs to display adverts based on the general age, emotion and sex of a group of people. For example, an H&M advert would be shown if the majority of people seen by a camera were young, happy women. My main responsibility was implementing a REST Controller that would decide which advert to display and a dashboard in React.
For my masters thesis at the University of York, I sought to measure the impact of macroeconomic data, such as unemployment rate and GDP, and other global markets when predicting the direction of the FTSE Index. This project was entirely written in Python and made use of the TensorFlow library. It was also my first exposure to Google Cloud.
This was an assignment for a Service Oriented Architecture module, where we had to implement a food ordering and delivery system from scratch. I used a microservice approach, using Spring-Boot and Netflix Spring-Cloud tools (Data, Security, Rest, Eureka, Feign and Ribbon). As they weren't a requirement, it's on my todo-list to build a nice UI and containerise this application.
This is a simple realtime, shared takeaway menu that I implemented in React. The main aim of this project was to brush up my knowledge of React, learn Redux, and try out Cloud Firestore. Everything is in realtime, so if you open the application (link below) in multiple windows, you should see everything being updated seamlessly. I'm not sharing my code for security reasons (API keys).
This is quite an old project of mine (2015!). As the title implies, this is an implementation of person identification using Histograms of Oriented Gradient (HOG) descriptors. Given a training set, the HOG algorithm is capable of eliminating information irrelevant to human detection. Check out my blog and GitHub for an explanation of how it works.
This was my undergraduate dissertation, where I explored two approaches for preparing face pencil sketches for automatic face recognition. These were: generating a realistic photo from a sketch, or converting photos from a database to sketches, and training face recognition software on these sketches.