My Curriculm Vitae

Professional Profile

An adept technology leader, a pragmatic software engineering manager, a certified agile coach and a full-stack software developer with experience across a diverse range of business sectors including banking, broadcasting, logistics, manufacturing, publishing, retail, social networking, telecommunications, telematics & utilities.

A passionate advocate of agile & lean software engineering who has worked with leading brands, including giffgaff, ASOS, Which?, The Economist, The Financial Times, MySpace and Nickelodeon. Currently employed as a Software Engineering Manager for Vodafone, overseeing the development of their Home Broadband digital products.

An AWS-certified cloud practitioner, scrum developer (CSD), scrum master (CSM) & scrum professional (CSP) with a broad range of technical and leadership skills. Works across the entire software development lifecycle, designing and developing an array of application architectures but specialising in distributed microservice-based systems.

Seeking a challenging position with a forward-thinking organisation as either head of software engineering, principal engineer or solution architect. Ideally helping cross-functional teams to continuously deploy cloud-native, observable, resilient & scalable, JavaScript-based applications with RESTful APIs.

Technical Skills

Principal:

AWS · CSS3 · Cypress · GraphQL · HTML5 · JavaScript · React (Native) · Redux · Nest.js · Next.js · Node.js · Serverless · Strapi · TypeScript

Supplementary:

Bash · C++ · C# · Java (Spring) · PHP · Python

Additional:

Docker · DynamoDB · Jenkins · Kafka · Kinesis · Kubernetes · Git · MySQL · Oracle · PostgreSQL · Rabbit · Redis · Terraform

Other:

Agile · Extreme Programming (XP) · Kanban · Lean · Scrum

Professional Certifications

AWS Certified Cloud Practitioner (2023)
Scrum Developer (2014) - Scrum Professional (2011) - Scrum Master (2008)

Current Employment

Vodafone: Software Engineering Manager (Sep 2022) -> Now

Accountable for the web engineering management of Vodafone’s Home Broadband products across two teams - a core team of twenty engineers working exclusively with the digital channel and a cross-functional team that is working as a SAFe Agile Release Train, spanning both IT services and digital delivery.

Responsible for the line management of seven engineers, whose skill levels span from associate through to team lead. Includes performance management, professional & personal development, identifying knowledge & skills gaps and providing training plans.

Support the recruitment of engineers by providing code test reviews and undertaking face-to-face interviews to assess candidates’ cultural fit, coding competency and systems design ability.

Also responsible for web engineering Learning & Development, facilitating a bi-weekly, hands-on global Code Academy for over 300 engineers across all Vodafone regions.

Vodafone: Key Achievements

  • Established the working practices around Innersource - applying open source maintainer/contributor patterns to internal engineering teams to promote collective code ownership and the establishment of teams capable of cross-domain development.
  • As part of the engineer engagement team presented to all UK engineers on pair programming strategies and techniques and facilitated pair programmer training.
  • Personally ran two hands-on Code Academies - ‘Building an Alexa Skill from Scratch’ and ‘Building Content APIs with Strapi’.
  • Participated in a company-wide hackathon with over 200 participants split into 20 teams across 6 global locations. Led the winning team in the development of a chatbot built powered by Amazon Lex with a Next.js front-end hosted on Vercel, with a companion Alexa Skill which could answer queries for new hires on their onboarding into the Vodafone engineering community.

Previous Employment

giffgaff: Head of Software Engineering (Jun 2014) -> (Jun 2022)

Started as a technical Scrum Master with the responsibility for managing the delivery of two large software development teams of over forty engineers, split by discipline - a team of back-end Java/Python developers and a team of front-end JavaScript/PHP developers both with integrated quality assurance.

After presenting a three-month review of working practices, secured agreement from the giffgaff senior leadership to restructure the company around lean product engineering teams. This business-wide transformation would reinvigorate the agile process and reduce the length of the customer feedback cycle, allowing giffgaff to truly be “the mobile network run by you”. With a new role as the Agile Governance Lead, managed the organisational change leading to the creation of multiple cross-functional, domain-focused teams, each with a dedicated product owner and scrum master.

The restructuring of teams highlighted the constraints of the existing monolithic application architecture, the lack of automated tests and the reliance on manual quality assurance and operational processes. This resulted in a low release cadence with a high number of failed releases. Transitioning to the role of Technical Governance Lead led to the establishment of a new strategic direction for the organisation to achieve continuous delivery through the following initiatives:

  • Deprecate PHP in favour of React Web/Mobile & React Native client applications
  • Adopt a microservice architecture with dockerized Spring Boot services
  • Rebalance the unit/integration/system test ratio; make everyone a tester
  • Adopt trunk-based development with dynamic code control via feature toggles
  • Switch to a cloud-native platform and introduce immutable infrastructure
  • Use CI/CD build pipelines to deploy-on-demand with a “you build it, you run it” model

In 2017 became Head of Software Engineering with responsibility for the line management of eighty software development engineers and the design, development, testing, and deployment of giffgaff software products. Accountable for best practices, coding standards, performance management & recruitment, and served as the primary contact for product engineering across the business.

Ultimately responsible for giffgaff’s core engineering and complex sub-system teams including the App Development Platform, Community Platform, Developer Experience, Front End Systems, Help/Knowledge Base, Member Security and Payments Gateway.

giffgaff: Key Achievements

  • People:

    • Ran a hackathon for all product engineers to introduce them to Amazon Web Services using Alexa and built a fully functional service for querying member accounts
    • Organised multiple recruitment events at Silicon Milk Roundabout; designed merchandise, constructed the stand and created the showreel for the display systems
    • Created a behaviours & skills framework together with a structured recruitment process supported by an automated GitHub remote coding test publishing application
    • Arranged the purchase of Udemy Business licences and initiated a learning & development program with learning paths aligned with the behaviour & skills framework

  • Process:

    • Presented at the Telefónica Developers Conference in Madrid - TEFCon 2015 “Hacking The Future” - and received a speaker award for an ‘Agile Cultural Change’ talk
    • Hosted The Agile Roundabout at the giffgaff offices on the topic of Getting Back To Continuous Disruption and presented our journey towards continuous delivery
    • Published an agile engineering manifesto that combined agile and extreme programming practices & principles and helped to establish a common technology mindset
    • Established communities of practice (COPs) and special interest groups (SIGs) to promote collaboration and knowledge sharing across giffgaff technology teams
    • Introduced a ‘Kaizen’ continuous improvement process to help address cross-cutting engineering issues and ‘kaizen days’ to enable team experimentation and innovation
    • Negotiated the purchase and conducted the rollout of Slack as the core collaboration & communication tool for technology - subsequently adopted across the entire business

  • Product:

    • Built an application called ‘giffgaff Dash’ using balena.io to deploy build monitor & observability dashboards to a centrally managed RPi IoT fleet in the giffgaff offices
    • Implemented a robust end-to-end testing framework using cypress.io, which provided enhanced tooling and visibility of build failures
    • Created a sequence chart generator based on mscgen_js syntax that used method call logs captured using Spring AOP to reverse-engineer process flows from a legacy codebase
    • Designed, developed, deployed and managed a technology-focused blogging platform at giffgaff.io using Next.js for server-side rendering and the giffgaff.design system
    • Constructed a robust, scalable, headless CMS capability based on the open-source Strapi content management system
    • Created a Jenkins visualisation tool called 'giffgaff Pipes' that would enable engineers to easily diagnose build failures in multi-stage build pipelines
    • Extended the 'giffgaff Pipes' tool to send targeted notifications direct to a build-breaker using the Slack API when build failures occurred

Employment History

Vodafone
giffgaff
ASOS
Which?
The Economist
John Wiley & Sons
Reed Exhibitions
The Economist
The Financial Times
The Economist
MySpace
Dunnhumby
Keane
E-On
Nickelodeon
Trafficmaster
© Chris Allmark 2023 / 2024