Narrative Timeline

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.

🧭 Professional Arc

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
Christos Hadjinikolis speaking at Big Data London in 2018

✨ 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.
2010–2016 Foundations
teaching, research, communication

🎓 Teaching, doctoral work, and the habit of clarity

KCL · UCL · GSM · David Game College
Associate Lecturer · Coding Teacher · TA

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.
IJCAI 2013 poster for opponent modelling research by Christos Hadjinikolis
IJCAI 2013 Best Poster Award Ph.D. poster on opponent modelling and persuasion dialogues. Open the full poster PDF.
04/2016–12/2020 Consulting
shipping under constraints

🏗️ Consulting became the bridge from data science to technical leadership

Data Reply
London, UK
Data Scientist → ML Engineer → Senior Consultant

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.
12/2020–present ML engineering to management
teams, systems, delivery

🚢 Vortexa: managing teams and live ML/data systems at scale

Senior ML Engineer → Engineering Manager / ML Systems Lead
London, UK
Architecture · Delivery · People

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.
🏛️ Beyond The Core Role

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.
🎙️ Public Work

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.
📐 Through-Line

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.