Professional Experience
How the scope evolved
From research and teaching to industry consulting in 2016, then Engineering Manager at Vortexa from February 2022: how responsibility grew across people, technical direction and delivery.
From research and teaching to engineering management
My career has moved from research and teaching into hands-on consulting, technical leadership and engineering management. Today I develop people, set technical direction and lead delivery for production ML and data platforms.
- 🎓 Research roots
- 🏗️ Production ML
- 📐 Model eval/replay
- ⚙️ Streaming architecture
- 👥 Engineering management
- 🏛️ Standards work
✨ What Changed Along The Way
- Early years: explaining and teaching I learned to break complex ideas down clearly and help others build confidence in technical subjects.
- Consulting years: delivery under ambiguity I learned how messy systems, unclear requirements, product pressure, and client constraints reshape "correct" engineering.
- Current years: people, direction and delivery I now manage six direct reports and lead a ten-person cross-functional team, combining career development, technical direction, stakeholder priorities and production ownership.
teaching, research, communication
🎓 Teaching, doctoral work, and the habit of clarity
Before I was responsible for production systems, I spent years teaching and researching, which is where I developed the habit of explaining difficult ideas simply and structuring technical work carefully.
What I was doing
- Teaching Java, Python, MATLAB, HTML, CSS, SQL, AI, systems, and data structures.
- Completing doctoral research in persuasion dialogues, opponent modelling, and large knowledge graphs.
- Working close to formal methods, graph reasoning, and research-driven problem solving.
What stayed with me
- Technical communication is a force multiplier.
- Good systems thinking starts with clean abstractions.
- Explaining something clearly is often the best test of understanding it.
shipping under constraints
🏗️ Consulting became the bridge from data science to technical leadership
This was the period where model work became inseparable from delivery discipline. I joined the London spin-off as its first consultant, grew into a Senior Consultant, helped the team scale, and learned to turn enterprise constraints, client goals, and production expectations into deliverable ML/data systems.
Representative client work
- Client delivery: led client meetings, scoped goals, facilitated technical delivery, placed consultants, interviewed, mentored, and contributed to Data Reply's growth from a small founding team to 30+ consultants.
- 🏦 UBS: graph analytics, process mining, and real-time insight pipelines with Kafka, Elasticsearch, and Python; learned XP/pairing practices and later became the sole embedded Data Reply consultant.
- 🚜 CNHi: lead data scientist / Scrum Master for predictive maintenance on Azure/Databricks, translating stakeholder needs into a DS/DE backlog and guiding a PySpark team over live telemetry.
- 📱 Vodafone: led technical delivery across multiple workstreams, worked on Infinity, a GCP data-science platform based on Kubeflow, and built Red Agent, a mobile-network feature-engineering framework.
What this phase taught me
- Most ML failures are systems failures, not modelling failures.
- Ambiguous environments are where architecture and product discipline matter most.
- Bridging DS, engineering, and product is a delivery problem as much as a technical one.
- Good managers create feedback loops that make specialists faster, safer, and less dependent on individual memory.
teams, systems, delivery
🚢 Vortexa: managing teams and live ML/data systems at scale
I joined Vortexa as a Senior ML Engineer in December 2020 and became Engineering Manager in February 2022. I now manage six direct reports and lead a ten-person cross-functional team, with responsibility for people development, technical direction and delivery of live ML and data services supporting maritime intelligence.
What I lead
- 6 direct reports across Product, SME analysis, Data Science, and Data Engineering, plus leadership of a 10-person cross-functional team.
- Performance reviews, career development and delivery priorities. Retained the full team and supported every member’s promotion or progression in the July 2026 team snapshot.
- Hiring manager for six roles over time; shaped hiring practices, system-design interviews, onboarding and mentoring as Data Production grew from four to more than thirty people.
- Workshops across Product, SMEs, analysts, and engineers to turn model-quality disputes into shared definitions, measurable objectives, interface/SLA proposals, and OKR-linked workstreams.
- Team practices that reduce single-person ownership: clearer ownership, pairing, docs close to code, tests-as-docs, and onboarding that makes new joiners productive in production code quickly.
Engineering decisions and outcomes
- A live ML/data estate processing roughly 6M vessel-position records/hour into production intelligence for 13.5K monitored vessels.
- 0-to-1 research-to-production delivery for destination and arrival-time sequence/transformer models in PyTorch.
- MLflow, model/data versioning, automated evaluation gates, replay, monitoring, and model-serving workflows.
- Batch/online model-evaluation and replay loops; failure-mode analysis with domain experts and Product to drive model, data, and interface improvements.
- Led the Kafka Streams-to-Flink migration, enabling compute scaling independent of Kafka partitioning and improving operational visibility and maintainability. Established shared on-call, runbooks and rollback/fallback practices.
- Introduced local end-to-end tests and reusable data-access patterns, cutting a three-hour pipeline development feedback loop to under five minutes and reducing dependence on individual reviewers.
- Started a weekly architecture forum to share decisions and reduce knowledge silos across teams.
Standards and research
- Since 2021 · ISO/CEN-CENELEC JTC 21 WG3
Committee Expert Member contributing to AI standards aligned with EU policy and international norms, including auditability, model/data versioning, explainability, and safer adoption. - Since 10/2024 · UCL Department of Information Studies
Associate Researcher helping expose students to practical AI applications and lecturing on AI standardisation, the AI Act, auditability, versioning, explainability, and safe adoption.
Talks and interviews
- 2026 · Skeleton runtime evidence
Published a public article on Promet, Skeleton, runtime evidence, and the harness around applied GenAI systems. - 2026 · skeleton-replay
Published skeleton-replay and a JetBrains plugin for turning Python runs into traces, architecture snapshots, workflow evidence, and replayable reports. - 2023 · Agile in Action
Podcast interview on agile data science and the Vortexa journey. - 2022 · ODSC
Industry talk on dynamicio, a published PyPI library for abstracting I/O in ML systems. - 2020 · iunera & Big Data Warsaw
Interview and conference talk on agile data science and graph-driven analytics. - 2018 · Connected Data London & Minds Mastering Machines
Panel and talk appearances on graph AI and doing data science the agile way.
What has remained constant
- Production is the only truth.
- Models need evaluation, replay, monitoring, and graceful failure paths.
- Responsible AI is partly engineering work: auditability, explainability, ownership, and human accountability.
- Standards set teams free when they remove avoidable ambiguity.
- System quality should scale through clear ownership, evidence, and repeatable practice.
