Skip to main content

Skills

A live view of where the work has actually been done. Each word is a skill, sized by how often it appears across my roles and projects with a slight bias toward recent work. Similar skills cluster together.

Size = usage × recencySimilar skills cluster together
Hover a word to see where it's been used.

Technical Skills

Levels here reflect honest depth of production delivery, not exposure. The "Evidence" column links to the project or role where the skill was used at that level.

Languages

SkillLevelYears / ContextEvidence
C# / .NETExpert24 years continuous — from .NET 1.0 / ASP.NET WebForms through .NET 9, ASP.NET MVC, WCF, Silverlight, WPF, Xamarin.Live Nation multilingual CMS, Alpari capital reporting, Credit Suisse derivatives pricing, Blackthorn case management
TypeScriptExpert10+ years — React, React Native, Node.js services, micro-frontends.Baby Point platform, dunnhumby retail analytics, BrightInsight digital health
JavaScriptExpert24 years — VBScript/ASP era through modern Node.Live Nation multilingual CMS, How Splendid SpeedyServices, most modern projects
GoAdvanced5+ years — regulated platform services, consulting microservices, Kubernetes operators.BrightInsight digital health, Thoughtworks underwriting DSL, Philips clinical AI platform
PythonAdvanced5+ years — ML pipelines, internal tooling, legacy assimilation, agentic-coding scripting.BrightInsight digital health, Philips clinical AI platform, AVEVA core AI services, Microsoft Research HITL apps
JavaWorking4–5 years — IoT edge firmware-adjacent code, banking back-office, Android.Medisanté medical IoT, Investec colleague locator, Credit Suisse derivatives pricing
RustWorking1+ year — event-driven backend services with contract testing and observability.dunnhumby retail analytics
SwiftWorking~1 year — enterprise iOS with MDM/MAM and indoor positioning.Investec colleague locator
KotlinFamiliarAndroid delivery alongside Swift on the same cross-platform programmes.Investec colleague locator

Frameworks and libraries

SkillLevelContextEvidence
React / React NativeExpertWeb SPAs and offline-first mobile with shared data layers.Baby Point platform, dunnhumby retail analytics
Node.js / ExpressAdvancedEdge APIs, BFFs, internal tooling.Baby Point platform, BrightInsight digital health
.NET Core / ASP.NET MVC / WebAPIExpertPrimary backend stack for 15+ years.Blackthorn case management, Just Eat EPOS integration, dunnhumby retail analytics
Pact (contract testing)AdvancedCross-team consumer-driven contracts at scale.BrightInsight Gherkin DSL, dunnhumby retail analytics, Thoughtworks underwriting DSL
Rx / reactive streamsAdvancedReal-time pricing, capital reporting, sports streaming.Alpari capital reporting, Miomni PGA Tour app
LangChain / agentic frameworksWorkingPrompt-to-insight pipelines over enterprise data, agentic coding workflows.dunnhumby retail analytics, AVEVA core AI services
Prompt engineeringAdvancedModel-specific prompt design for agentic workflows — system prompts, few-shot exemplars, and tool-calling schemas tuned per LLM (GPT-4-class, Claude, lighter open-source), backed by a golden-question evaluation harness for per-model iteration.dunnhumby retail analytics, AVEVA core AI services
PyTorch / TensorFlow / MLflowWorkingTraining, registry, lifecycle for regulated ML.BrightInsight digital health
NHibernate / Entity FrameworkAdvancedORM-heavy enterprise systems, multi-tenant data.Live Nation multilingual CMS, Blackthorn case management

Architecture and systems

SkillContextEvidence
Domain-Driven Design (DDD)Bounded contexts, ubiquitous language with domain experts (underwriters, clinicians).BrightInsight indemnity DSL, Blackthorn case management, Thoughtworks underwriting DSL
CQRS / Event SourcingAudit-grade write models, read-side projections.How Splendid SpeedyServices, Blackthorn case management
Event-driven microservicesKafka, MQTT, async message-passing, digital twins.dunnhumby retail analytics, Medisanté medical IoT, BrightInsight digital health
Rules-as-data / DSL designCompliance-critical logic owned by domain experts without code changes.BrightInsight indemnity DSL, BrightInsight Gherkin DSL, Thoughtworks underwriting DSL
Zero Trust architecturemTLS, service mesh (Istio, Linkerd, Consul), SPIFFE/SPIRE, micro-segmentation.BrightInsight digital health, Philips clinical AI platform
Observability-first designOpenTelemetry, structured logs, RED/USE metrics, error budgets.dunnhumby retail analytics, BrightInsight digital health
Low-latency / real-timeReactive WCF Duplex, in-memory caches, derivative pricing under tick load.Alpari capital reporting, Credit Suisse derivatives pricing

Cloud, DevOps, and infrastructure

SkillContextEvidence
KubernetesOperators (Operator SDK), NetworkPolicy, RBAC, pod security, OPA/Gatekeeper.Philips clinical AI platform, dunnhumby retail analytics, AVEVA core AI services
AWSLambda, API Gateway, S3, DynamoDB, CloudWatch, SQS.Medisanté medical IoT, BrightInsight digital health
AzureAKS, Functions, Service Bus, Azure DevOps.AVEVA core AI services, Philips clinical AI platform, Baby Point platform
GCPPub/Sub, Cloud Run as part of multi-cloud regulated platform.BrightInsight digital health
Terraform / Pulumi / HelmReusable module libraries, declarative drift detection.dunnhumby retail analytics, BrightInsight Gherkin DSL
GitOps (ArgoCD, Flux)Git as source of truth, continuous reconciliation.dunnhumby retail analytics
CI/CD pipelinesGitHub Actions, Octopus Deploy, Jenkins, TeamCity, Azure DevOps. Compliance gates and DevSecOps checks.BrightInsight Gherkin DSL, Blackthorn case management, dunnhumby retail analytics
Agentic coding toolingGitHub Copilot CLI, Claude Code, ChatGPT Codex — used and shaped at the org level via the Hypervelocity Engineering initiative.AVEVA core AI services

Practices

  • TDD / BDD end-to-end, including Gherkin DSLs that double as ISO 13485 / IEC 62304 audit artefacts.
  • Contract testing with Pact across 8 global teams (BrightInsight digital health) — 40% reduction in cross-service bugs at dunnhumby.
  • DORA metrics, change-failure rate, MTTR as first-class outcomes.
  • Compliance-driven CD: daily releases against ISO 13485, IEC 62304, HIPAA, GDPR, MDSAP — rules encoded in code, gated in CI.

Leadership Skills

I've led delivery for organisations of up to 200 engineers while staying 20–30% in production code at every seniority level, including principal. The "Evidence" column points to the role or project where each behaviour was concrete and accountable, not theoretical.

Leadership areas

SkillEvidenceWhat it means in practice
Technical leadershipPrincipal AI Engineer, AVEVA, Principal Solution Architect, Philips, Principal Software Engineer, BrightInsightSet the architectural direction, write the load-bearing code, defend the decision at the implementation level. Architecture decisions decay fast if you're not paying for them in the editor.
Mentoring and growing engineersTechnical Lead, dunnhumby, Lead Consultant, ThoughtWorks, Engineering Manager, MiomniCross-squad mentoring, architecture forums, paired delivery, knowledge-sharing rituals. Grew a 15-person team at Miomni from individual contributors into a multi-platform delivery unit.
Stakeholder managementLead Engineer–Architect, Blackthorn, Mobile Tech Lead, EY, Principal Solution Architect, PhilipsTranslating between underwriters, clinicians, prosecutors, traders, regulators, and engineers. Designs that survive contact with stakeholders are designed with them, not handed to them.
Delivery leadership at scalePrincipal Software Engineer, BrightInsight (8 global teams), Principal Solution Architect, Philips (UK / Germany / India coordination), Lead Engineer, Just Eat (one of the first 20 hires)Cross-time-zone delivery against regulated audit schedules, with daily releases gated by compliance-as-code.
Hands-on architectureLead Engineer, How Splendid, Principal Engineer, Medisanté, Technical Director, Baby PointArchitecting and shipping. Greenfield CQRS/SOA/DDD at How Splendid; medical-IoT digital twins at Medisanté; zero-to-10K users in 6 months as Technical Director at Baby Point.
Hiring and team formationLead Engineer–Architect, Blackthorn, Engineering Manager, MiomniBuilding delivery teams from scratch, including under SC clearance for Crown Prosecution Service integration.
Regulated-delivery leadershipPrincipal Software Engineer, BrightInsight, Principal Engineer, Medisanté, Principal Solution Architect, PhilipsISO 13485, IEC 62304, HIPAA, GDPR, MDSAP — leading delivery teams that ship daily and pass audits.
Open-source and communityLead Consultant, ThoughtWorksD-CENT (Clojure, democratic-participation tooling) contributor; published author on Zero Trust vs Defense-in-Depth, GitOps, and compliance-driven CD.

My leadership style

I partner with specialists rather than around them. The best abstractions I've built came from sitting next to the people who lived in the domain — underwriters at BrightInsight, clinicians on the HL7 feedback loops at Philips, restaurant operators wiring EPOS printers at Just Eat. Their constraints shape the design, and the lead engineer's job is to translate those constraints into patterns the team can carry.

I stay hands-on. At principal level that's an unfashionable choice in some organisations, but I've found that the decisions I make as an architect erode quickly if I'm not the one paying for them in the editor. 20–30% production code at every level is the rule I hold myself to.

I treat delivery practices as part of the architecture. TDD, contract testing with Pact, observability-first design, GitOps reconciliation — these aren't process overhead, they're the things that let small teams own large surfaces without becoming a coordination problem. At BrightInsight that meant 8 global teams composable through Pact contracts; at dunnhumby it meant contract testing cutting 40% of cross-service bugs.

I'm comfortable with difficult conversations. Most of the regulated work I've led — Crown Prosecution Service integration at Blackthorn, ISO 13485 / IEC 62304 audit cycles at BrightInsight and Philips, FCA reporting at Alpari — requires saying "no" or "not yet" to delivery shortcuts, and then having the credibility to propose a better path. Credibility comes from being in the code, knowing the domain, and being honest about trade-offs.

I lead curiosity from the front. Most recently that's meant shaping AVEVA's organisational practice around agentic coding (GitHub Copilot CLI, Claude Code, ChatGPT Codex) via the Hypervelocity Engineering initiative — not because the tools are trending, but because they materially change what a small team can deliver in a sprint.

Domain Expertise

Across 25 years I've gone deep enough in a handful of domains to write code, defend designs, and pass audits in each. The breadth is part of the point — patterns translate across industries — but confidence calibration matters, so this table is honest about where the depth lives.

DomainExperienceEvidenceConfidence
Regulated digital health / medtechMulti-cloud SaaS platform for biopharma and medtech partners; medical IoT with device-to-cloud digital twins; clinical AI app store deployed to 300+ hospitals. ISO 13485, IEC 62304, HIPAA, GDPR, MDSAP.BrightInsight digital health, Medisanté medical IoT, Philips clinical AI platformHigh
FinTech and tradingReal-time capital reporting and risk alerting at a retail FX broker; low-latency derivatives pricing post Clariden-Leu merger; indoor-positioning colleague locator at a specialist bank. FCA-regulated context.Alpari capital reporting, Credit Suisse derivatives pricing, Investec colleague locatorHigh
Insurance and underwriting DSLsRules-as-data DSLs that let underwriters own product logic without code changes — including one for legally mandated deterministic compliance with daily release cadence.BrightInsight indemnity DSL, Thoughtworks underwriting DSLHigh
AI / ML platformPredictive ML for patient deterioration (25% improvement via early-stage LLM); clinical AI app store with HL7 / FHIR; LangChain agentic pipelines over enterprise retail data; agentic-coding practice at AVEVA.BrightInsight digital health, Philips clinical AI platform, dunnhumby retail analytics, AVEVA core AI servicesMedium-High — strong delivery context, still actively deepening on the modelling side
Platform engineering and GitOpsReusable Terraform module libraries, ArgoCD reconciliation, observability-first design, contract testing across distributed teams, agentic-coding workflows. Six-plus years GitOps practice.dunnhumby retail analytics, BrightInsight Gherkin DSL, AVEVA core AI services, Philips clinical AI platformHigh
Zero Trust and secure systemsService mesh (Istio / Linkerd / Consul), mTLS, SPIFFE/SPIRE, short-lived certs with Vault and cert-manager, Kubernetes-native security (NetworkPolicy, RBAC, OPA/Gatekeeper). Published author on Zero Trust vs Defense-in-Depth.BrightInsight digital health, Philips clinical AI platformHigh
Government / legal-tech under clearanceCase management greenfield with direct Crown Prosecution Service integration, delivered under Security Check (SC) clearance. CTC also held historically.Blackthorn case managementHigh at the time; SC is not currently active — renewable on the next clearance-required role
Retail, loyalty, and marketplacesLoyalty / retail analytics platform at dunnhumby; one of the first 20 technical hires at Just Eat through the platform re-architecture and 2-country EU rollout; offline-first parenting marketplace from zero to 10K users in 6 months.dunnhumby retail analytics, Just Eat EPOS integration, Baby Point platformHigh
Entertainment, ticketing, sportsMulti-tenant CMS rolled out across 15+ Live Nation properties; demand-responsive pricing and rapid-prototype kiosks at How Splendid; official PGA Tour app at Miomni (Nokia/Microsoft Windows Phone partnership).Live Nation multilingual CMS, How Splendid SpeedyServices, Miomni PGA Tour appMedium-High (1–2 cycles old in tooling but the patterns travel)
Research / ML data toolingHuman-in-the-loop data collection and MLOps pipelines at Microsoft Research Cambridge, supervised by Pushmeet Kohli (now VP, Google DeepMind). Datasets for Kinect, Photosynth, facial tracking.Microsoft Research HITL appsMedium — one role, deep but era-bound (2011)
Industrial software / OTCurrently leading the Core AI Services platform at AVEVA in industrial software, shaping the organisation's agentic-coding practice.AVEVA core AI servicesGrowing — current role, ~1 year deep

Where I would not claim depth

  • Pure quant / market-making algorithmic trading. My FinTech work has been platform, reporting, and pricing infrastructure — not strategy R&D.
  • Game engine / real-time rendering. Sports-app CMS work at Miomni is the closest I've been, and that was data and streaming, not engines.
  • Embedded / firmware. Medical IoT at Medisanté was device-adjacent (Java-on-device, MQTT to AWS) — not bare-metal C.
  • Foundation-model training. I integrate LLMs and run agentic workflows; I'm not training base models.

Skill Evidence Map

This table is for honest calibration: which file is the strongest evidence for a given skill, how confidently I can speak to it, and where I would not overclaim. It's also the reference the AI assistant on this site uses to ground answers in concrete projects rather than vague resume language.

SkillBest evidenceStrengthHow to explain itDo not overclaim
Regulated software delivery (medtech)BrightInsight digital healthStrongMulti-cloud platform with daily releases gated by ISO 13485 and IEC 62304 compliance-as-code, 20M API calls/day, 8 global teams composable through Pact contracts.Not a quality-system auditor; I implement against the standards, I don't author them.
Compliance-as-code DSL designBrightInsight Gherkin DSL, BrightInsight indemnity DSLStrongGherkin tests doubling as ISO audit artefacts; JSON rules-as-data DSL letting underwriters own legally-mandated logic without code changes.DSL design needs the right domain expert relationship; it's a partnership pattern, not a generic template.
Distributed systems / event-drivendunnhumby retail analyticsStrongRust + .NET event-driven backend, Kafka, async message-passing, observability-first via OpenTelemetry, 40% reduction in cross-service bugs via Pact.I haven't operated event sourcing at FAANG scale; mid-to-large enterprise scale is honest.
GitOps and declarative IaCdunnhumby retail analytics, BrightInsight Gherkin DSLStrongReusable Terraform module libraries, ArgoCD reconciliation, drift detection, policy-as-code via OPA. 6+ years of GitOps practice including published writing on the patterns.I'm not a Kubernetes-internals committer; I'm a heavy practitioner and operator-pattern author.
Multi-cloud platform engineeringBrightInsight digital health, Philips clinical AI platform, AVEVA core AI servicesStrongAWS + Azure + GCP delivered against a single composable platform model; Azure / AKS first-class at AVEVA.Cross-cloud cost optimisation at hyper-scale is a specialism I collaborate with FinOps on rather than own.
Kubernetes operator patternsPhilips clinical AI platformStrongOperator SDK in production, deployed into 300+ hospital VMWare environments — some air-gapped.Not a CRD-design purist; operators were a means to hospital-deployment reality.
Zero Trust architectureBrightInsight digital healthStrongmTLS, service mesh, SPIFFE/SPIRE, automated cert rotation, micro-segmentation. Published author on Zero Trust vs Defense-in-Depth.Public writing is opinion-grounded; I'm not a CISO.
AI/ML platform integrationBrightInsight digital health, dunnhumby retail analyticsMedium-StrongEarly-stage LLM patient-deterioration prediction (25% improvement); LangChain text-to-insight pipelines; MLflow registry. Stanford / DeepLearning.AI Supervised ML cert (2025).I integrate and operate models; I'm not a research ML scientist training foundation models.
Agentic coding practiceAVEVA core AI servicesMedium-StrongCurrently shaping AVEVA's Hypervelocity Engineering practice using Claude Code, GitHub Copilot CLI, ChatGPT Codex. Recent and ongoing.This is a practice that's only ~1 year old at scale; I'm an early heavy user, not a 5-year veteran.
C# / .NET ecosystemLive Nation multilingual CMS, Blackthorn case management, Credit Suisse derivatives pricingStrong24 years continuous from .NET 1.0; every paradigm shift in between (WebForms, MVC, WCF, Silverlight, WPF, Xamarin, .NET Core, .NET 9)."Expert" here means delivery, architecture, hiring, and mentoring — not CLR internals.
GoBrightInsight digital healthMedium-StrongRegulated platform services and operator-pattern work, plus Thoughtworks polyglot microservices.5 years, not 10.
Python (ML and tooling)Microsoft Research HITL apps, BrightInsight digital healthMedium-StrongMLflow, PyTorch, TensorFlow, internal data tooling, legacy assimilation.Not a numerical-Python specialist; not a Django/Flask web monolith specialist.
Rustdunnhumby retail analyticsMediumOne year of production use on event-driven backend. Real but recent.Don't claim Rust as a primary language; it's an emerging strength.
Swift / iOSInvestec colleague locatorMediumEnterprise iOS with MDM/MAM, iBeacons, SharePoint integration.One major engagement; not a current daily language.
Mentoring at scaleTechnical Lead, dunnhumby, Engineering Manager, MiomniStrongMulti-squad mentoring, architecture forums, paired delivery; led 15-person team at Miomni from individual contributors into a multi-platform delivery unit.I lead from a principal/architect seat; I'm not a people-manager-only career path.
Stakeholder translation across regulated domainsPrincipal Solution Architect, Philips, Principal Software Engineer, BrightInsightStrongClinicians, regulators, underwriters, prosecutors, traders, engineers — translating between them is the job.This is leadership work, not commercial / sales leadership.
Government / SC-cleared deliveryBlackthorn case managementStrong (historical)Greenfield DDD case management integrated with Crown Prosecution Service under Security Check clearance.SC is not currently active — lapsed after the engagement; renewable on the next clearance-required role.

Strongest evidence themes

  • Regulated platforms shipped at daily-release cadence. Pair compliance with continuous delivery, not against it. BrightInsight, Philips, Medisanté, Blackthorn.
  • Cross-domain pattern transfer. DDD, CQRS, event sourcing, reconciliation loops, declarative IaC, GitOps — same patterns shipped in C#, Go, Rust, TypeScript, Python, Java, and Swift across nine industries.
  • Hands-on principal-level leadership. 20–30% production code at every level. Architecture decisions backed by being the person paying for them in the editor.
  • Domain-expert partnership as a design technique. DSL work at BrightInsight and Thoughtworks; HL7 feedback loops at Philips; EPOS reverse-engineering with restaurateurs at Just Eat.

Weak or developing areas

  • Foundation-model training and pure ML research. I integrate and operate models in regulated systems; I don't train base models. Stanford / DeepLearning.AI Supervised ML cert (2025) is the formal grounding; the practical depth is in pipelines, not theory.
  • Rust as a primary language. One year on a real production system; growing, not yet deep.
  • Pure quant / algorithmic trading R&D. My FinTech work is reporting, pricing infrastructure, and risk platforms — not strategy research.
  • Embedded firmware / bare-metal. Medical IoT was device-adjacent (Java + MQTT), not C-on-microcontroller.
  • Mobile native at current depth. Swift / Kotlin / Java / Xamarin work is real but era-bound — I'd lean on partners for a 2026-current native mobile delivery.
  • Active security clearances. SC and CTC were held during specific engagements and are renewable; both currently lapsed.