Transport for London

April 2022 – present | Agile Development Manager STEM – Technology & Data, Transport for London

Application Development Manager – STEM responsible for delivering the TfL Apprentice and Graduate Software Development Scheme and creating a range of career development opportunities for people to go from zero to well rounded Software Developer within 18 months.

The role involves providing expertise and leadership to build and mentor an Application Development capability in TfL. Is fully accountable for a team of Agile Development Leads, Senior Developers and Associate Developers to ensure that there is complete alignment between the system specification requirements and the service level agreements.

Skills: Career Development · Software Development · Career Coaching · Event Management · Leadership · Project Management · Resource Management · Budget Management · Career Coaching · Leadership 

April 2021 – present | Agile Development Lead (Mobile) – Technology & Data, Transport for London

Agile Development Lead managing a team of 10 Android and iOS developers for the delivery of the recently launched TfL Go app.  Responsibilities include recruiting, interviewing, onboarding, line managing junior and senior developers to ensure they have the capabilities they need to deliver the product, and project managing multiple related mini projects within the TfL Online area.

Skills: Career Development · Software Development · Project Management · Resource Management · Budget Management · Career Coaching · Leadership 

July 2018 – June 2021 | Senior Developer  – Technology & Data – Mobile App Development

Transitioned to mobile app development specialising in Android Apps for TfL customer facing mobile apps, focusing of providing travel and accessibility information.


TfL Go Android app – development on TfL’s highly acclaimed travel planning app, with heavy focus on accessibility.


Android SDK using Java/Kotlin,  MVVM/Android Architecture Components – Live Data, RecyclerView, CardView, Activities, Fragments, Retrofit, Room, SQL Lite, Custom View Drawing/Graphics, Gradle, JUnit, Mockito, Microsoft Azure DevOps, CI/CD tools, REST services.

Jan 2017 – June 2018 | Senior Developer  – Technology & Data – Customer Technology Mobile Services

Development of Java API services for the TfL Oyster App using Agile methodologies (SCRUM) and cloud computing.


Java,  JDBC, Hibernate, Spring framework, XML, REST services, Maven, JBoss EAP Server, Oracle 11g Database, SQL, Azure App Service, Azure Linux VMs, Docker.

Jun 2007 – Jan 2017 | Senior Solutions Developer

Java development on a variety of bespoke Web applications that provide Geographic and text based information for TfL business departments, and externally for British Transport Police, and UK Highways agency.


Java, JSP/Servlets, JDBC, Hibernate, Spring 2.*, Spring MVC/Webflow, Apache Wicket Framework, XML, XSLT, CSS, AJAX DWR, Webservices, Ant, Log4j, Oracle App Server 10.1.3 (OC4J), Oracle 10g Database, SQL, PL/SQL.


RODAT (Real-time Origin Destination Analysis Tool)

A java web application used to analyse the flow and impact of traffic into central London via the main corridors, to help TfL to make timing decisions on road management.

Technologies: Java 7, Spring 4.0, Hibernate, React.js, Oracle 11g, JBoss App Server, JQuery, ESRI Arc GIS web services.

WIN (Web Information Network) Replacement project

a java web application used to record and analyse intelligence data about crimes received from British Transport Police, Bus garages and Schools. The original WIN application was developed seven years ago by a third party company who held the intellectual property rights, so TfL decided it was more cost effective to rewrite the application in-house to incorporate new customer requirements. My duties involved:

  • Design and development of a new data input facility for recording intelligence data via an input form spread over multiple tabs. Attended various user workshops to detain look and feel and layout.
  • Technologies used: Java 6, JSPs/Serlvets, Spring 3.*, Spring MVC, Spring Webflow, JSPTabControl Library, DWR Ajax, JQuery, Hibernate, PL/SQL, Oracle 10g
  • Unit testing with JUnit/Mockitos
  • Build with Ant, and deploy to OC4J dev and test environments
London Works Portal

A suite of Applications for the Road Network Planning team to assist in the management and coordination of Street Works in London between boroughs and utility companies with works notifications sent in via Webservices. My duties involved:

  • Enhancements/maintenance of an existing suite of java web applications using Apache Wicket, Spring, Hibernate, TopLink, OpenLayers, Javascript, Java Webservices, SOAP UI, Oracle 10g Spatial;
  • development of a web service client (Elgin Webservice Client) to push and pull road works and events data from an external hosted web service provided by Elgin (a UK road management agency) using Java 1.6, Axis 2.*, hibernate, quartz scheduler library – This application helped to increase the frequency and ease of data transferred between TfL and Elgin, from the previous once a day CSV/ ftp solution;

Applications include: Central Register, Forward Planning, ETON Webservices, PACMAN, Transport Management and Notifications (TMAN), Public Register (, Elgin Webservice Client.

Information Access Portal (IAP)

A map application to provide online information to Customer Service Agents about activities and events along certain bus routes in London. a Java web application that provides a geographical map view of a variety of TfL datasets such as street assets, bus routes and recent traffic incidents for Tfl Customer Service Agents.  My duties involved:

  • development of prototype of application using HTML, CSS, Javascript to present at Users workshop to show the intended look and feel of the application.
  • design and development of functional components as part of IAP, using Java 1.5, JSPs/Servlets, Hibernate, DWR Ajax, XSLT, XML, Javascript.
  • create PL/SQL stored procedures utilising predefined database views
  • creation of map symbology using Oracle MapBuilder, and Oracle Mapviewer.

This application helped to reduce the amount of time and effort TfL Customer Service Agents use to answer questions from members of the public by integrating data from 7 different sources into one user friendly application.

Transport Police Online Mapping Application (TPOMA)

a Java web application that displays the crime hotspots within London in a geographical map view use by the British Transport Police and Community Safety Enforcement team.   This application helps to better plan the best location for deploying Community Safety Officers on the streets of London each day.

  • Tech used: Java 1.5, JSPs/Servlets, Hibernate, DWR Ajax, XSLT, XML, Javascript, PL/SQL, Oracle MapBuilder, Oracle Mapviewer, OC4J.