Work history
I’ve had a varied work history before becoming a Software Developer in 2018 - from telephone based tech support to Taxi driving, and running medium-sized business - but I’ve always had one eye on software and how to build it.
2023 → Present
Raviga
Key technologies used:
- PHP (Laravel)
- Javascript (React, Vue)
- MySQL, Redis, DynamoDb
- Git (version control)
- Laravel Vapor (fully automated deployments)
2022 → 2023
CoreBlue
Key technologies used:
- PHP (Laravel, Symfony)
- Javascript (Vue, React)
- MySQL, Postgres, Redis
- Git (version control)
- AWS (fully automated deployments)
2021 → 2022
CarePlanner
Key technologies used:
- PHP (Symfony)
- Javascript (Vue)
- Git (version control)
- AWS (fully automated deployments)
2019 → 2021
The Range
Key technologies used:
- PHP (no frameworks)
- Javascript (no frameworks)
- MySQL, Redis
- CVS (version control)
- Linux (servers, manual deployments)
2018 → 2019
I started my career in software development as a junior at a company whose business is importing motorcycles and selling them through UK-wide distributors. They also kept a warehouse stocked with official spare parts for those bikes, and their own brand of third party parts for other motorcycle brands. Nearly all software used to managing the business was web-based apps, including:
- Ordering and tracking shipments of motorcycles as they were imported
- Stock management and automatic replenishment for spare parts
- Picking, packing, and shipping of orders through the warehouse
- 2 customer-facing websites for selling parts
- A customer-facing website to advertise the motorcycles
- A CRM system for managing distributors and the dealer network
There was rarely a dull moment handling with so much of the system built and maintained in-house, but after 6 months I outgrew the position and needed to move on to progress my career.
Key technologies used:
- PHP (no frameworks)
- Javascript (jQuery)
- MySQL
- Git (version control)
- Linux (servers, semi-automated deployments through scripts)
2015 → 2018
I worked for BT as a Technical Support Advisor, helping customers with their broadband and phone line issues. This taught me a lot about how to communicate technical information to non-technical people, and how to handle tricky customers (complaints). I also learned a lot about the technical side of how broadband internet (and fibre) worked which was a fascinating insight. When BT added mobile handsets to their mobile service around 2017, I pivoted to learning about mobile networks and how they work, and had to learn a lot about how BT’s software worked to tackle issues that were configuration related. This ended up with me being in a 2-person team handling “data integrity” problems - a huge task with hundreds of tickets per day coming through.
During my time at BT I was sent on a number of extra training courses including team management (and completed a few months of cover management), staff training (as in, learning how to train staff), and project management.
I also applied my software skills to a few little helper tools - a note formatting web page to standardise the way notes were recorded in the system, a timer to track call/ticket handling times, a knowledge base website, and some other bits and bobs lost to memory.
2007 → 2014
First working for my father (manning the phone lines and shuffling the paperwork), then working with him (dealing with the drivers, contracts with customers, and the day-to-day running of the business). It was whilst juggling the phone calls in our paper diary that I realised we could be much more efficient with a computerised system, so I put one together. Over the course of a few months in spare time, I built us a full calendar booking system. Some of the highlights:
- Scheduling of taxi drivers to know how many simultaneous jobs we could take on
- Support for recurring bookings (e.g. school runs)
- Saved customers’ details for quick rebooking
- Ability to add a timings to jobs (journey to pickup, journey back to base, rough duration of journey)
- Notifications (only by email, to me) of upcoming bookings timed to when I needed to dispatch the job
- Invoice generation for account customers
I was in the process of adding customer-facing bookings and a way to send real app notifications to the drivers when the business started winding down and I needed to move on.