You can call me on 07480924132, email me at hi@leakypixel.net, or see additional details at leakypixel.net.
I've been developing for the web for around 14 years and I'm still as eager as ever to push my skills and learn new things. I specialise in JavaScript - particularly React, but have worked with many languages, libraries and tools appropriate to the task at hand and often managing the entire stack from development to production. I primarily work remotely, and have worked for both large brands and startups alike.
A short description of my last few roles and what they entailed. I'd be happy to discuss these further, but for now I'll keep it brief.
2021 - 2022
Worked with a medium sized team to refine and develop a cross-platform app to allow customers to manage and analyse their penfold pension. Primary responsibilities included finding and fixing complex multi-layer bugs, developing new features to match stakeholder specifications and performance analysis and recommendations.
Skills used: TypeScript React NPM WebPack Babel React-Hooks NextJS NodeJS Apollo
2020 - 2021
Headed up a 3-person front end team, replacing an underpeforming angular site with a fully modularised and modern react-based solution for a high traffic betting company based in South Africa.
Skills used: TypeScript React Docker NPM WebPack Babel React-Hooks React-Sagas
2020
Worked as part of a 10-person team to deliver new functionality to a greenfield implementation of a high-traffic sports betting website, using VueJS and Vuex.
Skills used: TypeScript VueJS Docker NPM WebPack Babel Vuex
2020
Worked as the lead developer on a complete rebuild of a React and TypeScript component based whitelabel system. Built an MVP with functioning cross-module themeing, configuration injection and a reference implementation as the sole developer, which was reviewed and discussed with the technical and design team on a continual basis.
Skills used: TypeScript React Docker NPM WebPack Babel
2019 - 2020
Reverse engineered an existing in-store product showcase solution, requiring use of Erlang/Phoenix, vanilla JS/HTML/CSS, associated animations and the existing custom build and deploy system for a multinational retailer end client.
Skills used: Erlang/Phoenix JavaScript CSS HTML CSS3-animations
2019
Worked on a high-profile project for a well-known international clothing brand, using React, TypeScript, Netlify, Next.js, AWS lambda, nodeJS and AWS dynamoDB to deliver an integrated customer experience across in-store devices, mobile websites and a facebook messenger bot. Working remotely as part of a small, internationally distributed team to deliver a time-critical project with many challenges and tight deadlines.
Skills used: TypeScript React Netlify Next.js LambdaFunctions NodeJS DynamoDB MessengerAPI
2018 to 2019
Worked closely with a worldwide distributed team to develop a deliveroo-like service for fuel and related product delivery. As the only JavaScript developer on the team, I built a react and apollo based web application to interact with an erlang graphql service that was being developed in tandem by other members of the team.
Skills used: JavaScript React LeafletJS Apollo GraphQL Erlang/Phoenix
2018
As part of the ventures team, built a new marketplace application using react for the frontend and python with flask for the backend. Worked in a team of 2 to get the project off the ground and into production. This project was more focused toward user research and constant iteration than technical challenges, something I really enjoyed.
Skills used: JavaScript React Redux Python Flask SQLAlchemy Docker
2017 to 2018
Upskilled team into react development and assisted with building a greenfield project:
Upskilling team with limited to no prior knowledge of react through pairing, presentations and walkthroughs.
Built a new application to gather information from customers through a conditional, staged questionnaire with complex dependencies.
Various devops related tasks from scratch, such as docker scripts.
Advising management on various technical decisions vital for the company.
Skills used: JavaScript React Redux Git Docker
2017 - Tyres on the Drive - JavaScript consultant (12 months)
2016 - The Hut Group - JavaScript developer (12 months)
2015 - Bet365 - JavaScript developer (6 months)
2013 to 2015 - On The Beach ltd. - Front end developer, Permanent
I'm sometimes lucky enough to get to work on small projects, which can be quite varied. A few of my favourites have been:
Some of the skills I've picked up along the way and tools I've used.
I've around 10 years experience with JavaScript, and consider myself highly proficient. I take an active interest in new developments, often spending my free time checking out new features and frameworks.
In the past few years, I've taken a keen interest in devops-related skills. Initially, this started as a passion project to containerise and self host infrastructure, but quickly developed into managing the full stack in my commerical roles.
Developing the front end of a project was my main focus for many years, picking up a history of tools and techniques. It's still something I find very satisfying, especially in first iterations of products.
I've also picked up a few odds and ends that don't fit anywhere else, often from interested coworkers or personal projects.
Working on many projects has given me contact with quite a few back end environments, with varying degrees of depth.
Things people have said about working with me, taken directly from my LinkedIn.
October 2019
Craig worked with us on an extremely intense project with tight timelines. He was able to help deliver the project and put in additional effort above and beyond what was expected of him. He was able to ramp up quickly and own the solutions he worked on, as well as reacting to changing requirements and challenges. Craig worked closely with an external API team to overcome issues and deficiencies with data, and collaborate around improvements with how data was retrieved to optimize for performance. He also produced the frontend for a web experience in ReactJs to design specifications, and with impressive turn-around. Craig also owned and delivered a Facebook Messenger Bot as part of the solution.
This was an unusually challenging and stressful project, and we were lucky to have Craig staying focused and committed to the delivery of the end experience.
June 2019
I had the pleasure of working with Craig on a few month long project implementing an Elixir based app. As our frontend expert he had an additional challenge being the only representative of his field on a distributed team of backend engineers. With members located all over Europe, taking on intertwined tasks, there was an additional requirement of communicating effectively within the team to make sure everyone progresses with their work and does not block others. The success hinged on developers actively coordinating with each other and keeping the conversation going. Craig’s friendly attitude, sense of humour and opened mind played a huge role in making that happen.
Craig managed to combine the requirements of being the sole expert in his field with being a team player aiding other people and overall team progress. He took initiative, was able to advise and guide the customer towards certain solutions, he listened to feedback and changing requirements and moved forward in a steady, confident pace. He is not the loudest voice in the room and not the one to initiate edgy endeavours, but his advice is well thought out, meaningful and opened for debate. He is not afraid to admit mistakes and raise flags if he thinks something is going wrong, which builds trust within the team and allows management to make good decisions.
It is my opinion Craig’s personality will match any team and combined with his expertise as a seasoned frontend developer will help projects reach a successful delivery.
I have quite a few hobbies outside of my development work, and try to keep myself as active as I can - especially during the summer, when I can get outside.