Timo Sulg

Senior Platform Engineer building high-availability services for SAP HANA Cloud.

About me

Senior Platform Engineer with 15+ years across web, distributed-systems and platform engineering, including founding a startup that ranked Sweden's best employers. Currently building and operating the high-availability services and Kubernetes operators behind SAP HANA Cloud. Co-inventor on one granted US patent and two pending applications covering database replication and managed-volume reliability. Works in Rust, Go, Python and Ruby, and validates distributed systems with Maelstrom and Jepsen.

 [email protected] | Rhine-Neckar, Germany      

Skills

Core: Rust, Go, Python, Ruby, Kubernetes

Working knowledge: Clojure, AWS, Distributed-systems testing (Maelstrom, Jepsen), SQL and PostgreSQL, CI/CD (CircleCI), kagent

CV

Work experience

SAP AG - Senior Platform Engineer
Oct 2020 - Present

  • Own the Kubernetes operators behind SAP HANA Cloud high availability: managed-volume replication, failover, and host version and parameter upgrades that run while replication continues
  • Selected the strongly consistent storage layer behind the replication topology after evaluating candidate data stores with Maelstrom and Jepsen fault injection, ruling out the alternatives that could not guarantee strong consistency

Creditshelf AG - Ruby Developer
Oct 2017 - Apr 2020

  • Evaluated fuzzy-matching techniques for reconciling financial records and selected the approach behind the automated matcher
  • Built the service that automatically matches bank transactions against payment tables, replacing the manual matching step
  • Refactored oversized models and controllers into composable services along hexagonal-architecture boundaries, making the reconciliation logic testable in isolation
  • Identified a potential vulnerability in external XML parsing and moved the parser into a sandboxed environment on AWS Lambda
  • Diagnosed a silent data-matching error and replaced the failing rule with a confidence-interval scoring algorithm that flagged uncertain matches for review

VersionEye GmbH - Ruby Developer
Sep 2016 - Oct 2017

  • Designed and shipped a Rust CLI tool that scans projects for unknown dependencies

Skillable AB - Technical Founder
Jan 2015 - Aug 2016

  • Built the backend systems and API from scratch as the first engineer, behind the platform that ranked Sweden's best employers
  • Designed the data processing pipeline that ingested recurring employee questionnaire responses and produced the rankings
  • Owned the database layer end to end, from schema design to query optimization
  • Diagnosed the Rails monolith's failure under traffic spikes and reimplemented the heaviest paths in Clojure using the CQRS pattern

VersionEye GmbH - Ruby Developer
Sep 2012 - Dec 2014

  • Implemented parsers for a range of package managers, the data layer behind every dependency and license alert the product shipped
  • Researched how to detect the software licenses used by a project and its dependencies
  • Wrote crawlers to collect details about open-source software projects

DataOil Oy - Founder
Jan 2010 - Aug 2012

  • Built the drag-and-drop machine-learning pipeline editor (Yahoo UI) and the Python service that compiled each user-defined pipeline into deployed Spark jobs
  • Delivered recommender algorithms for a client engagement

Swedbank AS - Data Specialist
Jan 2007 - Jan 2010

  • Designed and implemented anomaly-detection algorithms for the bank's risk analytics
  • Built tooling that simplified data retrieval from the data warehouse into the risk analysts' tools

Education

TalTech - Bachelor of Science
2007 - 2010

Major: Control and System Engineering
Minor: Computer Architecture
Control and systems engineering, with a minor in computer architecture.

Languages

Estonian (Native), English (C1), German (B2), French (A1)

Projects

Teeline source
Rust, TypeScript, Genetic algorithms, Local search, k-d tree
A solver for the travelling salesman problem with tunable metaheuristics (genetic algorithms, 2-opt local search, and k-d tree nearest-neighbour search) with a TypeScript front end over a Rust core.

CriterionDB source
Rust, SQLite, PostgreSQL, CLI, statistical analysis
A database for benchmark results: it stores every run, analyses regressions across commits using Mann-Whitney U and Welch's t-tests, and shares findings as links. Distributed as a single MIT-licensed Rust binary backed by SQLite or Postgres.

Wasserspiegel source
Rust, SailfishOS, mobile
A SailfishOS app that shows the water level of the nearest gauging station.

DryRB in 3Acts source
Ruby, dry-rb, talk, meetup
Slides and an example project introducing the core features of dry-rb, a collection of Ruby gems that help Rubyists apply SOLID and Secure by Design principles in their projects.

Fosslim, free open-source license matcher source
Rust, TF-IDF, hash fingerprinting, bag of words, cosine similarity
A command-line tool that scans software projects for open-source licenses.

Patents

Increased replication for managed volumes patent
US12332754B2 - SAP SE - June 2025 (Granted)
Improves the reliability of a computing cluster by increasing replication for managed volumes, so active and standby servers can be reassigned when a node fails.

Database replication with host operating parameter update patent
US20250045296A1 - SAP SE - February 2025 (Pending)
Operating a database management system across hosts running in separate containers of a cloud environment, updating a host's operating parameters while replication continues.

Database replication with host version upgrade patent
EP4502812A1 - SAP SE - February 2025 (Pending)
Upgrading a host to a new version while database replication continues between the old and new hosts running in separate containers of a cloud environment.