Resume

Linkedin →

Senior Devops Engineer - BGC Partners

Oct 2018 - Apr 2020 — Contract (18 months)

Tech stack

  • AWS
  • Serverless - API Gateway, Websockets, Lambda
  • Ansible
  • Terraform
  • Kinesis, streams, firehose, data transformation pipelines, log ingestion & enrichment pipelines
  • Elasticsearch, Logstash, Kibana, Fluentbit, Filebeat
  • Prometheus, Alertmanager, Grafana
  • Docker, ECS
  • CI/CD & workflow design - Jenkins, AWX, Pipelines, Jenkinsfile, Teamcity
  • Linux (debian, rhel, centos, amzn2)
  • Nexus


Senior Devops Engineer - Pearsons

Feb 2018 - Oct 2018 — Contract (9 months)

  • Environment design, security/system/network design & architecture in AWS
  • Large transformation & migration of on prem to AWS
  • Terraform
  • Architected HA & FT architecture for Hybris & AEM platforms in AWS
  • Packer, Ansible role config management, artifact creation (docker images & aws
  • AMI's), some legacy Puppet
  • Immutable approach
  • Jenkins - CI/CD/Test pipelines + promotions + groovy
  • Puppet cleanup contribs to legacy puppet codebase + open source forge module
  • contribs
  • Docker
  • ECS clusters for several tooling services
  • Monitoring tools EKK, NewRelic, Cloudpassage
  • Team workflow design - PR review process & CI pipelines
  • Lambda serverless
  • Hashicorp Vault+Consul POC


Principal Devops Engineer - British Telecom/EE

Oct 2015 - Dec 2017 — 2 years 3 months

Principal DevOps/Infrastructure engineer at EE. I lead a team of 10 engineers on a programme of work to improve cloud infrastructure for ee.co.uk ecommerce site. Remaining the technical solution lead throughout.

Architected and lead a solution for large scale provisioning of AWS resources with Cloudformation and Python (troposphere). Code base supported multi AZ/region/Account deployment of infrastructure, in a CI/CD design.

Provided Self Serve mechanics via Jenkins to Developers, QA, Testers & other non technicals to launch environments with Application X at version Y. Also reduced overall AWS spend by introducing mechanism to persist/un-persist an environment and otherwise delete after 19:00 and weekends. As so, to not leave environments running or scaled when not in use.

Worked with large Java products SAP's Hybris and Adobes AEM. Scaled Hybris behind static cache. Fine tuned multiple layers of Hybris object cache.

Used Puppet (PE) extensively with roles & profiles to config manage EC2 vms, docker containers, local vms (vagrant). Replaced a legacy SALT Stack implementation.

AWS Lambda Python functions presented as a custom networkinfo resource to Cloudformation. Handled requests from the cloudformation api. Returned info back at runtime to the Cloudformation api from within AWS - "Poor mans dynamic resource lookups".

POC to run Devops tests across variations of the config management code base using docker + testkitchen + puppet. Think roles+profiles+env_type variations. Coupled this with some basic Rspec and Serverspec tests.

Configured CI/CD builds for Devops internal code on PR merges. Trigger a series of build tests.

Built & developed seperate VPC for atlassian suite standalone products. EE desired tools + data remain on premise. V.good knowledge of Jira, Hipchat, Crowd, Bamboo, Confluence, Bitbucket.

Tech stack

  • AWS
  • Linux – Mostly Debian (Ubuntu)
  • Bash
  • Python
  • Puppet
  • Vagrant
  • Ansible
  • Cloudformation
  • Troposphere
  • Docker
  • Terraform
  • Git
  • Atlassian suite
  • Jenkins
  • CI / CD
  • Java
  • Hybris
  • AEM


Senior Devops Engineer - Kaplan

Jan 2015 - Oct 2015 (9 months)

  • AWS Cloud devops architect responsibilities for new project stacks.
  • Developed leaner ansible provisioned stack for repeatable small LAMP projects
  • Used Nginx GeoIP to route users to language sets and specific content urls.
  • Worked heavily on scaling policies/triggers for large kaplaninternational.com ecommerce site.


Devops Engineer - Kaplan

Apr 2014 - Jan 2015 — (9 months)

Large scale migration of business and web systems to AWS. Automation into AWS environment with Cloudformation, config management via Puppet (&puppetdb/mcollective), Fabric (python library) mixed with boto (also a python library) for adhoc task management and machine discovery. Jenkins for providing CI back to non tech users and for periodic job scheduling.

  • Developed cloudformation with Python cmd line wrappers to launch AWS resources cross regions.
  • Built automated puppetmaster open source setup in AWS using cloudformation + python + puppet + mcollective.
  • Migrated several backend and frontend web services from Rackspace to AWS using the new tooling including kaplaninternational.com
  • Jenkins + pipelines for app deployment & environment builds
  • Configured devops tooling - opsgenie, loggly, splunk, nagios
  • Developed pipelines for promotion of new versions of app code alongside specific versions of the infrastructure code
  • Developed various puppet modules to automate the configuration of various web platform projects & utility tools
  • Used Amazon Linux AMI
  • Ruby custom extensions to hiera for alternative backends
  • MySQL DBA tasks migration and optimisation of large databases
  • Implemented S3FS and SAN


Backend Developer / Integrations Engineer - Kaplan

Jan 2013 - Sep 2013 — (9 months)

  • Developed bash scripts + capistrano to create repeatable deployment of apps
  • Developed complex migration scripts to transform & sanitise datasets
  • Optimised environment, build, config use in PHP projects Drupal, Laravel & Wordpress projects
  • Used vagrant, vms, and packer to provide developers with repeatable builds & local environments
  • Built a Laravel API with Oauth to be consumed by native mobile application
  • Brought various Git workflow changes into place, pull-requests, peer reviews, open source workflows


Founder & Lead Developer - Bytewire

Sep 2007 - Dec 2012 — (5 years 3 months)

Formed from the bedroom of my final year at university, Bytewire was formed to wrap activities I had been undertaking to build a successful online game, and business. Taking investment in its first year to create a MMORPG (Massively multiplayer online role play game). Provided excellent platform to upskill, deal with real world problems such as bottlenecks in LAMP applications and tie the business side of features into the psychology of a user.

Later morphed into a client centric media agency, work can be found @ Bytewire