Engineering Director at Maersk. 18 years in software: more than a decade shipping product hands-on, then the last four leading a 40-person engineering organisation across the UK, Denmark and India.
I lead the organisation that owns Maersk’s container visibility platform and the SaaS products built on it, enabling $200M+ in revenue. I built that organisation from its first hire, and before it I was a principal engineer and architect — including technical due diligence on three acquisitions that all closed. I build teams that own outcomes end-to-end, ship daily, and grow through candid feedback. Technology is a means to solving problems for real users; my best days are when a team I’ve grown ships something they’re proud of and it matters to the people using it.
Work Experience
Maersk
Engineering Director (August 2022 – present)
- Lead a 40-person engineering organisation in Maidenhead, Copenhagen and Bengaluru through two senior engineering managers, an engineering manager and three lead engineers. Report to a VP of Engineering, with directors and senior directors as peers.
- Own the container visibility platform — real-time location and milestone tracking of containers, fed by a growing set of data integrations — and the SaaS visibility and recommendation products built on that data, enabling $200M+ in revenue.
- Built the organisation from scratch: personally hired and onboarded the earliest engineers and set the operating norms (radical candour on feedback, assume good intent, role-modelling over mandating) deliberately rather than by accident.
- Own the organisation’s annual operational plan — hiring forecast and roadmap prioritisation — and represent engineering in the trade-offs with product and business leadership.
- Set the platform’s event-driven architecture from the outset, a deliberate break from the business’s batch-processing norm, and made domain-driven design a founding practice. Four years and forty engineers later, the domain boundaries and the Kafka core still stand as designed.
- Established a ship-daily engineering culture where weekly or fortnightly releases were the norm — CI/CD, observability and SRE practices built into the teams from their first hires rather than retrofitted.
- Run monthly operational reviews with every team on API latency, error rates and resource consumption: scaling down under-utilised resources keeps cloud cost in check as a habit, and scaling up ahead of demand protects availability and resilience.
- Treat developer tooling as leverage rather than cost: gave every engineer Claude Code early, ahead of wider adoption in the company, and measure whether it is changing the organisation’s output with my own scripts over the GitHub API — read as a signal rather than a scorecard, since any such measure can be gamed.
- Before forming the visibility organisation, led the team that delivered a core reporting capability combining data from multiple internal micro-services into one solution, unblocking customer migrations off a legacy platform.
Platform Architect (April 2021 – August 2022)
- Ran technical due diligence for three acquisitions in the E-Commerce Logistics business; all three closed and are now fully integrated into the group. Co-created a reusable framework for assessing the technology landscape of acquisition targets from what those deals taught us.
- Owned the technical integration path for each — from mapping the approach in the final stages of the deal cycle to prioritising and executing the earliest post-close actions — and personally executed the Azure migration that folded one acquired company into our engineering ecosystem.
- Raised the interview bar across the platform organisation and carved out a career path for individual contributors.
Software Engineer → Senior → Principal Software Engineer (September 2013 – March 2021)
Seven years building product and developer tooling hands-on. Joined as a front-end specialist and was promoted three times, the last to Principal, citing the Connected Trips work, the tooling below, and the range of the stack I had built across.
- Owned front-end and performance for the rewrite of the Search (SEO & SEM) landing pages and their move to AWS, with every optimisation and regression check built into CI. When a Google ranking change threatened the legacy pages months before the rewrite could land, shipped a CSS-only mobile layout on the old stack in two days to keep them mobile-friendly.
- Tech-led delivery of the “Connected Trips” experience — an event-driven system on Kafka and Kubernetes that pieced together items travellers had booked separately for the same trip. Started it as a deliberately limited prototype for a small bucket of travellers, then built the proper Trips domain and front-end once it had proved itself; piloted using the same data to let call-centre agents call travellers about problems before they called us, making some of the first calls myself.
- Built an automated release-notes and deployment-events pipeline (GitHub APIs + AWS events) used across thousands of applications; the same data let operations teams isolate incident causes quickly. Grew out of a dashboard I built for my own team, was still in use when I left six years later, and fed the chat bots and browser extensions I ran as an inner-source project taking contributions from across the company.
- Helped stand up a new engineering office in Amman, Jordan — hands-on with the first ten engineers from hiring through onboarding to embedding culture and technical practices; the office subsequently grew to 40+.
- As Principal, owned the architecture and consolidation approach for the company’s fragmented CRM landscape, and led the technical capability evaluation in the RFP to select a single vendor.
British Sky Broadcasting
Software Engineer (March 2012 – September 2013)
- Worked on sky.com — a homepage serving around a million views a day — including its full move to a responsive site using progressive enhancement.
- Maintained the site’s in-house CMS and built its replacement in Groovy and Grails.
- Introduced a strict test-driven culture and influenced the team’s technology choices through talks, brown-bag sessions and hands-on research.
Institute of Philosophy (University of London)
Software Engineer (March 2011 – March 2012)
- Sole developer on PhilEvents, an event listing application for philosophers: owned the full lifecycle from server procurement through requirements, build, deploy and maintenance, and built it as a CMS so sister sites like PhilJobs could be spun up on the same platform.
- Took the product from nothing to production alone, wearing every hat; it set me up as a generalist problem solver for the rest of my career.
How I lead
- Growing others through radical candour — feedback, coaching, and having the hard conversations.
- Role-modelling the standard I expect rather than mandating it; people take their cues from what leaders consistently do.
- Building high-trust teams that own outcomes end-to-end and assume good intent when collaborating under pressure.
- Bias toward action and fast course-correction over waiting for certainty that never comes.
- Staying close to the technology — reviewing architecture and RFCs, writing my own proofs-of-concept and analysis scripts to ground decisions in data — without displacing the engineers who own the systems.
Technology
I’ve worked deeply in many parts of the modern stack at different points in my career — and when I’m using something on a project, I make sure I know it well.
- Front-end: HTML, CSS (responsive, accessible, performant); JavaScript, React, Vue, SwiftUI
- Back-end: Node.js, Java (Spring Boot), Swift (Vapor), Python, Ruby, Groovy (Grails, Sinatra), Rust; REST, GraphQL, gRPC
- Data: Postgres, MySQL, DynamoDB, Mongo, Redis; Kafka, Kinesis
- Infrastructure & observability: AWS, Azure, Terraform, Docker, Kubernetes, Helm; Grafana, Prometheus, Splunk, Datadog
Education
- MSc, Advanced Web Engineering — University of Essex (2009 – 2010) · Awarded the RA Brooker Prize for best performance in the examination and dissertation.
- BE, Information Science & Engineering — M S Ramaiah Institute of Technology (2004 – 2008)