|British, Australian P/R||https://email@example.com|
10+ years experience
- Eight years recent experience in Python for web & CLI tools. Expert knowledge of Celery and RabbitMQ.
- Thorough applied knowledge of unit testing and designing software for test. Strong advocate of CI and CD.
- Recent experience learning Golang.
- Active open source contributor on Github across many different projects/languages.
- Advanced knowledge of Git and various methods of managing development with branches, forks and pull requests.
- Past experience with .NET, Java, PHP and embedded C for real time systems.
- Language agnostic. Broad experience of many different languages and platforms.
5 years experience
- Extensive knowledge of AWS platform, including EC2/ELB, RDS, S3, Route53, CodeDeploy & IAM.
- Thorough knowledge of Docker in dev and production, along with Docker Compose.
- Plenty of experience managing AWS with Terraform and building machine images with Packer. Avid Vagrant user.
- Used Jenkins to build continuous delivery pipelines for modern web project at AAM.
- Advanced user of Saltstack CM, also comfortable with Ansible.
- Contributor to Saltstack and Packer projects via github. Active in the community for both tools.
- Proficient server admin with many years experience in Debian/Ubuntu, and excellent bash/zsh skills.
- Thorough knowledge of security practices for hardening Linux production servers.
- Competent debugging Linux server performance issues with htop, iotop & co.
10+ years experience
- Broad experience with Django & Flask in building modern web applications. Advanced Flask user.
- Applied knowledge of multi-tier caching, and issues with invalidation.
- Solid understanding of REST for API design and fluent with HTTP protocol and basic TCP/IP.
- Basic knowledge of node.js, Grunt/Gulp and React for modern fullstack web applications.
- Recent experience with building React.js applications following the Flux pattern.
- Development and hacking of several open-source PHP projects (Drupal, oscommerce, Wordpress).
Database Admin / Analyst
10+ years experience
- Extensive experience using Riak NoSQL distributed data store, also RethinkDB, Redis and Elasticsearch.
- Applied knowledge with distributed databases, and issues such as scaling & conflict resolution.
- Solid understanding of database design trade offs with regard to normalisation, data integrity & performance.
- Proficient in SQL querying for MySQL and Postgres. Experienced a four year large-scale data migration whilst at Grontmij.
- Team lead experience throughout last seven years.
- Strong interest in SCRUM/Kanban and making teams perform better. I believe managing WIP is important!
- Natural leader and comfortable working within a team. Track record of successfully mentoring junior team members.
- Lots of experience interviewing both junior and senior potential hires.
Mar 2016 - Oct 2017
Lead Engineer - Arts Alliance Media, London (Contract)
- Worked as part of, and then led a cross-functional team building a platform for data exchange with the cinema.
- Championed a devops culture across all development teams, and upper management. Started a program to consolidate and simplify our cloud estate and reduced AWS spend by 70%.
- Entire stack was microservices written in Python Flask. Messaging with RabbitMQ, and REST for inter-service communication.
- Our client application was a cross-platform python application using a traditional multi-threaded architecture.
- I architected the cloud platform and client application, and then focussed on devops and the CD pipeline, whilst mentoring the team and doing pair-programming and code review.
- Spent a lot of time on hiring, and mentoring my replacement lead ahead of my departure.
Jun 2015 - Feb 2016
Senior Software Engineer - Forward Partners, London (Contract)
- Part of the product team in a VC accelerator, building the MVP for early-stage startups.
- Worked on both edgeretreats.com and livebetterwith.com, two Django-based ecommerce sites.
- Implemented continuous delivery using AWS CodeDeploy and Github.
Nov 2011 - May 2015
Lead Engineer - JBA Digital, Melbourne, Australia
- Technical team lead, principally building a marketing platform which provided ecommerce sites with targeted emails for abandoning customers.
- Architected, built and maintained application platform which operated 24/7 with minimal downtime.
- Demonstrated lead-level competence at engineering and devops: Python (Django/Celery), distributed databases (Riak), cloud infrastructure (AWS) & CI deployment (Saltstack/packer).
- Lead a small team from app conception through to maintenance-mode over several years. Hired new members to the team and mentored juniors.
- Built continuous deployment pipeline from the ground up; developed strong modern devops skills along the way.
Apr 2010 - Apr 2011
Senior Software Engineer - SiftGroups, Bristol, UK
- Lead on a large Drupal project, which had nine developers and huge scope change during the project. It was delivered on time and with no major bugs outstanding.
- Worked closely with the client, our project managers, designers and testers.
- Functioned as an 'engineer' member of the team, taking responsibility for devops activities, such as handling live releases of websites, merging of branches in SVN & debugging server configuration issues.
- Developed a suite of bash scripts to ensure repeatable builds and deployments.
Aug 2005 - Apr 2010
Software Developer - Grontmij, Bristol, UK
- Worked on a 4 year systems integration project, migrating many disparate data sources into a single target system.
- Architect/programmer on several large pieces of software using .NET and SQL Server.
- Learnt how to effectively communicate ideas to others in the business.
- Character references available on request.