I’ve almost always been the most experienced python developer at every company I’ve worked at and so have typically found myself falling into a mentorship role where I introduce best practices from testing to packaging/deployment to coding (SOLID, functional paradigms, reuse, etc).
Over the last five years I have worked extensively creating and consuming various APIs and microservices.
Although I am very experienced and comfortable with python I have spent much of the last two years using other languages and am keen to continue working with other languages in addition to python where possible.
Worked as part of the backend team developing the internal API used for the client facing app using Ruby on Rails. Worked on a testing system for the API using Haskell (Servant + Quickcheck) as well as leading internal workshops on Haskell to familiarise the rest of the team with the language.
Worked on improving the internal system architecture with improvements to the queue system, message delivery and deployment systems.
Engineer on the acquisition tech team where we worked to provide tooling for the acquisition/analytics team. This included RESTful endpoints and cli clients for the processing/import of analytics data as well as end-to-end automatic processing of analytics reports from Google and de-duplication of products.
As co-founder of a small development agency involved in all aspects of the business from strategy to business development to product/project management to development but mainly operated as lead software engineer.
One of our aims was to work with small startups who were just getting started and help them to bring their business ideas to life through prototyping/MVP. We had some success doing this with companies such as http://warblr.net and https://catinaflat.com.
Consulting with as a senior python developer and systems architect for companies such as:
Lead engineer on one of the teams working on http://googleartproject.com. Developed bespoke cms & data processing features to allow museums to import data and images from their collections in a variety of formats. Created tool to allow admins to re-map Google streetview data and change the route through a museum’s map.
Python/django developer working as part of a small team to deliver bespoke campaign pieces. Involved in all areas of technical delivery from recruitment to costings to project specifications but primarily development. Projects range from the multiplayer online game balloonacy to relatively simple microsites for skype but everything at Poke is built to the most exacting technical standards and consequently have learnt an incredible amount about performance and server optimisation.
Lead developer on several projects including www.1off.com for BMW, www.heineken.com/www.draughtkeg.co.uk for Heineken and an educational project for the BBC. Server side lead on www.fhm.com/smirnoff and www.shockwaves.co.uk.
First role was to introduce SVN to the company but primarily handled the server side requirements of projects. Used the python web framework django to develop an internal issue tracking system. After getting familiar with django, improved codeigniter base functionality by implementing features inspired in part by those found in django. Added django style form handling where a model is defined to represent a form with built in (X)HTML rendering, server side validation and redisplay of data. Airlock was primarily a PHP shop but I used python about 50% of the time; basically on anything not directly web facing which includes sysadmin tasks, webscraping and text processing. BBC websites are nearly always static HTML; used python to generate static builds by populating templates with content from a master document.