Engagements
Details of previous client engagements and projects.
ERP and Fulfilment – Air Up
June 2023 - April 2025
Client Overview
Air up (funded in 2018, https://www.air-up.com/) is a product company that revolutionises the way we drink water by infusing it with scents.
Engagement Scope
Engaged as engineering lead on Bubbles team, tasked with migrating heavily customised, untested ERP system (Odoo) into set of maintainable Kotlin/http4k microservices.
Key Deliverables
- Successfully migrated EDI integrations of four warehouses from legacy codebase into fully tested, monitored and observable microservices within 4 months with zero production incidents
- Led new warehouse migration in United States (Radial to XB) delivered 2 months ahead of schedule achieving cost saving of $1.2M
- Drove efforts to shape service and tooling infrastructure, testability, and maintainability of new codebase
- Promoted best development practices including mono-repository, trunk-based development, continuous delivery with short lead times (<15 mins), shift-left engineering, automatic documentation, strict value typing
- Upskilled team members versed in Python in writing testable and maintainable Kotlin code
November 2021 - June 2023
Programme Overview
The Ariane program aims to re-architect and modernise Citi’s Equity Risk platform for live and end-of-day risk across all desks and regions.
Engagement Details
Engaged as specialist via JUXT (https://www.juxt.pro/) to provide Kotlin/http4k expertise, joining Prism team tasked with replacing existing platform (based on KDB+, Kotlin and WPF) with more scalable big data solution handling live and historical data for all regions.
Technical Implementation
- New architecture based on Apache stack of Flink, Kafka backed by Ignite and Trino as storage
- http4k services deployed onto internal OpenShift clusters
- Implemented logging, monitoring and traceability for services with stability issues and lack of tests in existing systems
- Designed services using hexagonal architecture for easy testability
Delivery Outcomes
- Successfully replaced and deployed to production managed hierarchy service (EQMSH) sourcing and serving data from several systems integrated via SFTP
- Currently implementing end-of-day risk system
November 2020 - December 2020
Programme Scope
Rapid Delivery Transformation programme focused on improving efficiency of delivery teams across Thames Water.
Engagement Role
Tech lead working with Product Working Discovery team alongside CTO and leadership to identify process and technology improvements across 32 teams in 6 technology groups.
Assessment Framework
- Collaborated on framework definition serving as baseline for assessing teams and organisation through product, delivery, technology and people lenses
- Conducted guided workshops, process delivery mapping sessions, surveys, individual interviews and artefacts
- Assessed maturity of delivery, DevOps adoption, testability, monitoring, stability and best practices across technology groups
Deliverables
- Set of principles aimed at accelerating design and development to deliver valuable solutions rapidly
- Improvement recommendations for delivery process across several groups with varying delivery models and agile maturity levels
Technical Leadership - Zühlke
May 2021 - October 2021
Client Overview
Zühlke is a Swiss engineering-focused consultancy with over 50 years of tradition in delivering expertise and digital solutions globally across variety of sectors and industries.
Engagement Scope
Technical lead serving two teams (10 people), overseeing development of customer facing website at Co-op UK (https://www.coop.co.uk).
Key Challenges and Solutions
- Formed and onboarded fully remote teams distributed across United Kingdom, Portugal and Serbia with minimal handover period
- Organised and recorded knowledge transfer sessions on development and infrastructure aspects
- Implemented daily mobbing sessions with rotating leadership for collective codebase understanding
- Established daily and weekly ceremonies, defined ways of working, reduced onboarding friction
Technical Stack
- Backend: Python, Django, PostgreSQL, Amazon AWS infrastructure (Lambda and EKS)
- Frontend: JavaScript and Vue.js
- Development practices: Remote pairing using Tuple, weekly Sprint cadence transitioning to Kanban
Leadership Activities
- Technical leadership meetings identifying technical debt and coordinating projects across teams
- Process improvement initiatives balancing product delivery with developer experience
- Maintenance and decision debt identification with presentations to Product Council
Strong Customer Authentication and Application Security - Bó (NatWest)
April 2018 - October 2020
Programme Overview
Bó was a NatWest initiative to create current account companion app helping customers manage money better.
Initial Phase Responsibilities
- Built backbone for micro-services and established best practices across the stack
- Implemented build and deployment pipeline, app testability (contract, acceptance, external and integration), monitoring, structured logging and automatic documentation
- Built customer onboarding journey with integrations to Equifax, Hooyu, Vault, LDAP, Ping Access & Federate and IdentityX
- Implemented equivalent vendor fakes
IDAM Team Leadership
Led team building PSD2 compliant Strong Customer Authentication service and implementing service-to-service and app security across entire bank.
Technical Implementation
- iOS and Android specific hardware-backed cryptography module utilising Secure Element, StrongBox and TEE
- Security implementation for keys, signing and encryption with Diffie-Hellman key exchange for session encryption
- Backend services in Kotlin utilising HashiCorp’s Vault for cryptographic primitives
- LDAP-based employee authentication system and distributed authorisation policy protecting endpoints within service mesh
- Deployment using Helm to AWS EKS
Security Governance
- Organised threat modelling sessions and security assessments with external parties
- Developed system migration and rollout strategy ensuring bank-level security requirements compliance
May 2017 – April 2018
Team Overview
Fondue team was core part of Credit Suisse Big Data initiative delivering data platform providing access to APAC’s private and investment banking data with expansion plans to other regions.
- Set of reports and system feeds for AEI (Automatic Exchange of Information) and FATCA regulations compliance
- Platform comprising REST applications, React Web UI and Apache Spark jobs running on internally hosted Cloudera’s Hadoop distribution
- Data accessibility via HDFS and Apache Impala enabling trade recommendation engine foundation
Igneco
July 2016 – April 2017
Waggol Project
Built technology foundation for early stage start-up developing mobile first activity marketplace aggregating outdoor activities.
Deliverables
- Hands-on proof of concept: JavaScript, Node.js, Heroku, MongoDB, React/React Native
- Technology outline and assessment, competitor analysis, costing, delivery estimation and investor’s deck preparation
Founded small team building securities lending platform for prime brokerage.
Technical Implementation
- Foundation services for trade capture/flow for securities collateral trades, market data feeds, billing, PnL and exposure calculations
- Generic user management and application permissioning service (Autherio) based on JSON Web Tokens
- Technology stack: Java 8, PostgreSQL, CircleCI build, Docker packaging, AWS deployment
February 2016 – June 2016
Project Scope
Link Expansion project within Elsevier’s Big Data department, serving as company-wide source of document links by aggregating different sources and APIs.
Technical Deliverables
- Built source aggregators and crawlers processing >100 million links
- Services using Scala, Apache Spark deployed on AWS Elastic Map Reduce (EMR) and DataPipeline infrastructure
- Build pipelines and deployment setup using Jenkins, JobBuilder and Terraform
Trading Systems - Theorem Technology
June 2014 – November 2015
Company Overview
Theorem Technology is a FinTech software consultancy building scalable, bespoke trading platforms on Amazon Web Services (AWS) infrastructure.
Leadership Role
Led team of five in custodial and trading department at Solo Capital Partners and Theorem Technology, building order management, custodial and Know Your Customer (KYC) systems with supporting services.
Technical Stack
Java 8, Clojure, PostgreSQL, RabbitMQ, TinkerPop and AWS (EC2, S3, ELB, CloudFormation, RDS, SQS, SES)
Infrastructure and Delivery
- Command line infrastructure tools and automated pipelines
- Automatic horizontal scaling systems with continuous deployment pipeline to test environment
- Continuous production deployment for selected systems
Pricing Policy and Funding Name Generation - Deutsche Bank
July 2013 – June 2014
Reduce and optimise collateral cost and exposure across the bank through three main components: Policy (pricing policy system), Fuse (funding name generation service) and Gretl (collateral agreement capture).
Technical Contributions
- Fuse development (Scala, MySQL): system providing traders and systems with correct, bank-wide funding name based on counterparty and agreement
- Policy development (Scala, Clojure): pricing policies system dependent on organizational and regulatory constraints
- Cross-system feature implementation, design contribution, planning participation and retrospective facilitation
Priority Moments - O2 (Telefónica)
February 2013 – July 2013
Service Overview
Priority Moments provides users with location-specific voucher codes and offers redemption for listed merchants from mobile devices.
System Architecture
Four main components: Global Offer Service, Offer Manager, Global Ingest and Reporting Service, all communicating via HTTP/REST interfaces deployed on Amazon Web Services.
Technical Implementation
- Global Offer Service (Scala, Unfiltered, MongoDB): REST services for merchant and offer management with batch publishing jobs
- Offer Manager (Groovy, Grails, MongoDB): administration interface for sales and support teams
- Global Ingest (Scala, ActiveMQ, MongoDB): application event consumption and processing
- Reporting Service (Scala, Unfiltered, MongoDB): data aggregation feeding back to Offer Manager
Process Improvements
Established pairing culture within team reducing friction across multiple areas.
Broadband Provisioning Service - Sky
May 2011 – February 2013
System Responsibility
Developed Halo and FTTC systems automating provisioning workflow for voice and broadband (DSL and fibreoptic) services using core Java, Tomcat with ActiveMQ and REST communication to downstream systems.
Development Methodology
Fully agile/XP team with high quality delivery emphasis through pair-programming and comprehensive testing layers covering acceptance, contract, integration and performance using Concordion and Yatspec frameworks.
Key Contributions
- Order event feed service design and implementation providing strangler pattern over legacy schema
- Refactoring efforts introducing concise rule matching engine and separating provisioning into stand-alone systems
- “Clojure Testdrive” brown bag sessions and hackday participation implementing mobile broadband speed checker using node.js and PhoneGap
May 2011 – November 2011
Cremant is credit risk calculation platform providing global CEM desk with exposures and associated measures (sensitivity, PnL, CVA, FVA, DVA, WWR) for specified counterparties.
System Architecture
Three-tier system: frontend C# client, SOA services and DataSynapse calculation grid, backed by Sybase database with Java services clustered with Coherence, internal RMI communication and JMX, WSDL, SOAP exposure.
Project Deliveries
- Collateral calculation modelling: implementing quantitative models for calculating collateral (local/hard currency collateral, independent amounts)
- Credit curve explosion: generating different pricing curves based on counterparty rating and liquidity factors
- Calculation engine modifications with web services and JMS reporting module integration
May 2010 – May 2011
Klondike product lifecycle management platform processing securitised and OTC product lifecycle events including product creation, amendments, trades, barrier breaches, corporate actions and expirations with dispatch to front and back office systems.
Technical Stack
Tomcat with Lucene/Compass searching, Webwork, XWork and FreeMarker, backed by Oracle database with agile/XP methodology emphasising high quality software delivery through daily pair programming, TDD and >12,000 unit, integration and acceptance tests.
Major Deliverables
- Barrier Breach Syndication Service: capturing barrier breach events from monitoring system and syndicating to third parties via S/FTP, HTTP/S, SCP or email protocols, currently syndicating to 6 external vendors
- Mass Issuance project core components: mass issuing and straight through processing of leveraged (Warrants, Mini-Futures) and yield enhancement (Discount Certificates) products across German and Swiss exchanges, resulting in 1% market share gain within first month of trading
November 2009 – May 2010
Company Background
Established in 2000, Vibrant Media is contextual media pioneer and leading provider of contextual video advertising.
Extended In-Text platform serving contextually relevant advertisements to over 100 million users worldwide using JavaSE with NIO and concurrency framework deployed on 200 Tomcat servers clustered across three geo-locations, backed by Microsoft SQL/MySQL databases.
User Retargeting Module
Implemented behavioural profile analysis improving revenue through retargeting delivery of campaigns at users with specific profile characteristics, developed with performance emphasis and comprehensive unit, regression and performance testing due to high load and aggressive delivery time constraints.
January 2008 – November 2009
Company Overview
IG Index, founded in 1974, was the first financial spread betting company in Britain and leading operation globally.
Led team of 3 redesigning dealing platform for mobile devices with three-tier system: backend service interacting with core dealing services; standalone middleware server providing communication bridge, encryption and live price streaming; frontend JavaME mobile clients.
Technical Implementation
- Backend service: EJBs, Spring and Hibernate backed by Oracle database deployed on Weblogic cluster
- Middleware server: Spring, Jetty, Java Concurrency, JMX integrated with proprietary price streaming server via JNI
- Framework for porting existing mobile dealing application to NTT DoCoMo Java (Doja) including network protocol stack and UI bridge
Business Impact
Application successfully introduced as part of FXOnline launch covering more than 15% of clients.
Process Improvements
Introduced agile/XP elements improving communication, code quality and delivery time through TDD, code reviews, pairing sessions and integration/regression test DSL with nightly CI execution detecting critical issues prior to production release.
Text Relay Service - DSPG Telecom
July 2004 – December 2007
Client Overview
Established in 1988, DSPG is an ISO 9001 registered company specialising in Digital Signal Processing (DSP) and telecommunication equipment.
Text Relay Service (TRS-1)
Media relay service developed for BT TypeTalk connecting 150 operators providing media translation services for hearing or speech impaired clients.
Technical Implementation
- Server and client development bridging multiple communication media: email, FAX, SMS, internet, and mobile chat
- Backend architecture: Spring framework with Hibernate ORM, deployed on Jetty application server with MySQL database
- Integration with ISDN stack via proprietary TCP/IP protocol
- Third-party service integrations: HSL SMS provider, FAX services, and IMAP email services
Client Applications Delivered
- JavaSE/Swing operator terminal
- JavaSE applet for internet chat functionality
- JavaME mobile client
- Common communication protocol optimised for mobile communication across all clients
Deployment Status
TRS-1 systems operational across TypeTalk (UK), relay services in Spain, New Zealand, and United States.
TexBox-ISDN
Technical Scope
- JavaSE/Swing operator terminal implementation
- C++ VOIP library integration for voice streaming capabilities
Client Deployments
TexBox ISDN systems deployed across multiple organisations including Transport for London, British Deaf Association, Westminster City Council, NHS Direct, and National Rail Enquiries.