![Team lead & mentor. Product & Agile contributor. Problem solutionist.](assets/quotes/techlead_product_solutionist.png)
![I love to build serverless applications for CI/CD pipelines. Microservices are cool too I guess.](assets/quotes/serverless_cicd.png)
Where |
Product |
Tech |
Impact |
|
In-house market leading music publishing software. |
Java, Tomcat, Oracle |
Led a team to implement stakeholder-driven features. |
![MyDrive Solutions](https://camo.githubusercontent.com/9552d589c8b9d8f36f6f964f7492109716d9a4c2f25e1c1f0d13ab6227579d6d/68747470733a2f2f7777772e7468652d6469676974616c2d696e73757265722e636f6d2f77702d636f6e74656e742f75706c6f6164732f323031392f30342f4d7944726976655f536f6c7574696f6e735f6c6f676f2e706e67) |
Driving telematics app for cheaper insurance |
Ruby on Rails, Cassandra, Android, iOS |
Led a series of green field IoT projects & presented to executives. |
|
The GitHub of research papers |
Java, DropWizard |
Built scalable & concurrent-user REST APIs. |
|
Bespoke holiday experiences & travel writing site |
Java, Spring Boot, Terraform, Kubernetes |
Consulted on marketing tech & Agile practices. |
|
Cloud compliance product for Digital transformation consultancy |
Python, AWS CodeSuite, serverless |
Transformed monolith codebase into serverless product. |
![I practice TDD and build for failure, but reach for pragmatism when needed.](assets/quotes/tdd_failure_pragmatism.png)
Personal projects I'm gradually moving into public repos
Name |
Tech |
Purpose |
Status |
zappa-template |
|
A project template |
![Ready](https://camo.githubusercontent.com/dd521e7825f5ff0a7162585d83e6454c699cb04f1383bf623ff8c78a396df082/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f52656164792d3139374435343f7374796c653d666c6174) |
pulumi-template |
|
Project template |
![Tidying](https://camo.githubusercontent.com/39222fd359e8b1fd3dbb454727d306db99457c59c7a4092e713667e5375a0315/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f54696479696e672d4636383531323f7374796c653d666c6174) |
gm-template |
|
Project template |
![Tidying](https://camo.githubusercontent.com/39222fd359e8b1fd3dbb454727d306db99457c59c7a4092e713667e5375a0315/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f54696479696e672d4636383531323f7374796c653d666c6174) |
gh-pages-template |
|
Project template |
![Tidying](https://camo.githubusercontent.com/39222fd359e8b1fd3dbb454727d306db99457c59c7a4092e713667e5375a0315/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f54696479696e672d4636383531323f7374796c653d666c6174) |
django-example |
|
Example |
![In Progress](https://camo.githubusercontent.com/c30e11c6f6ce40e5db21cae2afdf7978126703b969e68f21a14a79bc3ac6069d/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f496e25323050726f67726573732d4635433431373f7374796c653d666c6174) |
ez-auth |
|
Add authentication to a serverless app |
![In Progress](https://camo.githubusercontent.com/c30e11c6f6ce40e5db21cae2afdf7978126703b969e68f21a14a79bc3ac6069d/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f496e25323050726f67726573732d4635433431373f7374796c653d666c6174) |
pistoleer |
|
Library to manage simple data |
![In Progress](https://camo.githubusercontent.com/c30e11c6f6ce40e5db21cae2afdf7978126703b969e68f21a14a79bc3ac6069d/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f496e25323050726f67726573732d4635433431373f7374796c653d666c6174) |
Show more
Name |
Tech |
Purpose |
Status |
flask-example |
|
Example |
![Todo](https://camo.githubusercontent.com/0db702ebb2c6b4dd85f06f41e32dff70e6f205423af1b79319094226413dca53/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f546f646f2d3335364144453f7374796c653d666c6174) |
troposphere-example |
|
Example |
![Todo](https://camo.githubusercontent.com/0db702ebb2c6b4dd85f06f41e32dff70e6f205423af1b79319094226413dca53/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f546f646f2d3335364144453f7374796c653d666c6174) |
py-util |
|
Utility functions |
![Todo](https://camo.githubusercontent.com/0db702ebb2c6b4dd85f06f41e32dff70e6f205423af1b79319094226413dca53/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f546f646f2d3335364144453f7374796c653d666c6174) |
imengine |
|
Process images in a variety of ways |
![Todo](https://camo.githubusercontent.com/0db702ebb2c6b4dd85f06f41e32dff70e6f205423af1b79319094226413dca53/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f546f646f2d3335364144453f7374796c653d666c6174) |
cloudformation-example |
|
Example |
![Todo](https://camo.githubusercontent.com/0db702ebb2c6b4dd85f06f41e32dff70e6f205423af1b79319094226413dca53/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f546f646f2d3335364144453f7374796c653d666c6174) |
sam-example |
|
Example |
![Todo](https://camo.githubusercontent.com/0db702ebb2c6b4dd85f06f41e32dff70e6f205423af1b79319094226413dca53/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f546f646f2d3335364144453f7374796c653d666c6174) |
terraform-example |
|
Example |
![Todo](https://camo.githubusercontent.com/0db702ebb2c6b4dd85f06f41e32dff70e6f205423af1b79319094226413dca53/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f546f646f2d3335364144453f7374796c653d666c6174) |
react-example |
|
Example |
![Learn](https://camo.githubusercontent.com/dfac525253428d6d34ec229fd3f6ce49f4a90161da56482d248bbac6b1d8513e/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c6561726e2d3542373238323f7374796c653d666c6174) |
graphql-example |
|
Example |
![Learn](https://camo.githubusercontent.com/dfac525253428d6d34ec229fd3f6ce49f4a90161da56482d248bbac6b1d8513e/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c6561726e2d3542373238323f7374796c653d666c6174) |
![I'm a personal project butterfly.](assets/quotes/butterfly.png)
I've been part of 3 GMTK Jam teams. Here's our 2023 entry:
And we've made a bunch of others for the game jam format.
![I keep working because I learn something new all the time. - Clint Eastwood](assets/quotes/clint_eastwood.png)
My current learning queue
![Somewhere, something incredible is waiting to be known. - Carl Sagan](assets/quotes/carl_sagan.png)
Handy tools I've discovered recently
Tool |
Description |
Zed |
A nice code editor |
Grip |
GitHub Readme Instant Preview in browser |
Troposphere |
Generate AWS CloudFormation templates |
Pillow |
Python Imaging Library |
I like Warhammer, other stuff, and also Warhammer
![](assets/warhammer/admech.jpg)
๐พ Tennis
๐ฎ Game Jams
๐ Pub Quizzes
๐ถ Walking my Jackapoo
โ Great coffee
๐บ Real ale
๐ Running
Byee! ๐