James Alfei

James Alfei

Lead software engineer

Personal Profile

Hi, I’m James! I’m a Lead Software Engineer at Capgemini UK. I have previously worked for DVLA, IBM, Admiral Group, Sorenson Media and the Alcumus group. I have a wide experience of full stack development in both large and small scale systems. I have worked for small startups, large global organisations and central government departments. I mainly work in Java, Ruby and Javascript but have experience in a wide range of languages and technologies, including Go, Python, Kubernetes, AWS, Serverless applications, Docker & K8s, Spinnaker, Drone.io and many more.

Work Experience

Lead Software Engineer - Capgemini

October 2022 - Present


Within Capgemini, I work within the Custom Software Development (CSD) practice, in which I am embedded within HMRC. I lead a “pod” of 4 teams working on the Enterprise Integration Services (EIS) platform. Additionally, I am a “DevOps Champion” and lead many of the improvement initiatives in play. The tech stack consists of:

  • Java microservices running Spring Boot & Apache Camel.
  • Kubernetes based infrastructure using Rancher, Helm and Teraform.
  • AWS underlying infrastructure supporting all services.
  • BDD tests written in Cucumber/Gherkin syntax.
  • GitLab CI/Jenkins for CI/CD functionality.

As Capgemini is a consultancy, I also then additionally wear a second hat on the corporate side, where I act as a people manager and assignment manager for up to 15 people and am heavily involved in initiatives such as our internal Java Academy, strategic direction decisions relating to client contracts and standard setting across the Capgemini business.


Lead Software Engineer - DVLA

December 2020 - October 2022


I primarily worked with microservice based applications as well as some serverless applications. These services were required to have minimal downtime and must be extremely robust and secure due to the nature of being a government service. In this role I had gained experience in a number of different areas:

  • Full CI/CD pipelines including full test suites and promotion through to production.
  • Cutting edge deployment systems such as Spinnaker, Drone and Serverless Framework.
  • State of the art monitoring tools such as Instana and the ELK stack.
  • True agile development in a “squad” format.
  • Used Scala and Go to work on Play Framework and Drone plugins respectively.
  • Mentoring team members and representing the squad at many cross squad discussions.
  • Actively involved with many cross government communities and chats, including security, design and software engineering standards.

Notable projects at DVLA:

  • Register a Vehicle (RaV) service
  • V5C Change of Address
  • Multiple DVLA enquiry services including Photo at the Roadside (PATR), Enhanced drivers data (EDD) for Home Office etc.
  • Tachograph service
  • Driving licence domain

Senior Software Engineer - DVLA

February 2019 - December 2020


As above


Software Engineer - Admiral Group

January 2018 - Feburary 2019


Working primarily with Java based web services (both SOAP and REST based) and web applications. Integrating custom internal software with third party services for the insurance industry. I also develop applications for direct customer consumption and ensure they are fit for purpose.

Main duties:

  • Developing, extending and architecting new and existing solutions and products to be used internally and externally
  • Improving code quality and standards through training and static code analysis systems
  • Introducing CI pipeline to the development process
  • Introducing test coverage metrics and enhanced test quality
  • Maintaining infrastructure for our services and investigating cloud based migrations
  • Presenting mini tech-talks to members of the department to share knowledge

Software Engineer - Sorenson Media

June 2016 - January 2018


Working primarily with web based technologies, I have been a part of both the Analytics team and the Data Management Platform (DMP) team. I have worked with Angular, Node, Python and Ruby, with exposure to automated system testing using Cucumber and API development using Gunicorn and Falcon (for Python). I have also worked with several database technologies including Redshift (Postgres), Aurora (MySQL), MongoDB and database migration systems such as Liquibase.

I have had a significant exposure to cloud systems using AWS, where I have completed my AWS Certified Developer - Associate certification. I have also worked with big data and big data systems in this role, including exposure to data warehousing systems, as well as creating custom ETL software for our data providers.

This job was working in a very agile team, including scrum masters, end of sprint reviews and retrospectives and involved working closely with product owners throughout. The role involved heavy usage of the Atlassian suite of tools, including Jira, BitBucket and Bamboo, as well as Slack for team communication.


Software Developer - Alcumus

June 2015 - June 2016


Working primarily in Java, Spring (Boot, Data, Security, Webflow etc.), Hibernate, JSP, Thymeleaf, and a large assortment of other technologies.

I worked on both on ageing legacy systems as well as our modern bespoke systems for the business.

I work heavily on Eclipse and Microsoft SQL Server 2008, deploying to Tomcat based servers with automated builds running on Jenkins.


Graduate Software Engineer - IBM

September 2014 - June 2015


As a software engineer at IBM, I am responsible for the development, maintenance and debugging of software in IBM’s portfolio. I am currently working on IBM Rational Integration Tester, but have had experience working on the distributed build team for CICS TG. I am also responsible for globalisation of our product on top of my regular duties.

My job requires the use of many different technologies, including Oracle DB, MS SQL, MySQL, DB2, Java, Ant, Web based technologies, Web services amongst many other things. As well as this, the role of managing globalisation means I have responsibility of managing the software in many different languages, including the look and feel of the application in specific localities, functional issues arising from string changes and must be on hand for consulting of string localisation and the processes involved.


Workshop Delivery Assistant - Technocamps

November 2012 - July 2014


Technocamps is an exciting project that provides free workshops to young people on programming, robotics, game design, app development and much more.

It is about getting young people (11-19 years) in Wales excited about Computer Science and STEM and challenging them to think about the world around them in a different way.

My role within the project is to assist in the delivery of workshops to the students, as well as creating new workshops, and delivering these in exciting new ways.


Education

Swansea University

2010-2014

MEng Computing (1st Class Hons.)

Gowerton Comprehensive School

2003 - 2010

A-Levels - (A, A, B, C)

GCSEs - (A*, A*, A, A, A, A, B, B, B)

Professional qualifications

AWS Certifified Developer

December 2017 - December 2020

Associate

QA Consulting - Advanced secure development

December 2018

Pass

StayAhead training - Java Programming 2

May 2019

OCJP

Volunteering

STEM Ambassador

April 2017 - Present


Code Club

September 2019 - February 2020


Skills

Object oriented programming

CI/CD

DevOps

REST & SOAP APIs

AWS & Cloud

Serverless

APM/Observability

Docker & Kubernetes

Microservices

Clean code

TDD & BDD

Architecture

Mentoring

Scrum & Agile