PhD candidate · Reymond Group, University of Bern

Cheminformatics + ML for drug discovery.

I'm a PhD student in the Reymond group at the University of Bern. My work is about making very large chemical datasets, often in the billions of molecules, something a chemist can actually sit down and explore. That mostly means clustering algorithms and visualization libraries, plus the platforms that put the results in front of people. I write algorithms in Python and JavaScript, with C++ (pybind11) and Numba for the parts that need to be fast. I also did the TypeScript rewrite of the Vismara ring perception logic in SmilesDrawer.

  • CorePython
  • MLPyTorch
  • ChemRDKit
  • GPUTriton/CUDA
  • WebTypeScript
Currently1 / 3
Primary TMAP of the 9.6B-molecule Enamine REAL dataset, organised by MQN similarity.

J. Chem. Inf. Model. 2026

Chelombus

Streaming Product Quantization + GPU PQk-means pipeline that clusters and visualises the 9.6B-molecule Enamine REAL set on one workstation. End-to-end in ~4.5 hours, vs ~14 days on the reference C++ pipeline.

Read more →
TMAP 2.0 minimum spanning tree of multiple dog and cat breed image embeddings.

Manuscript in preparation, 2026

TMAP 2.0

I rebuilt TMAP from the ground up. Python and Numba instead of the old C++ monolith, a new API that's easier to live with, and a pluggable index that takes recall@20 from 49% up to around 99%. So far I've used it on 2.7M AlphaFold structures, the full ChEMBL set, and image embeddings.

Read more →
Aspirin rendered live by SmilesDrawer.

Reymond Group · ~70k npm/mo

SmilesDrawer

Core maintainer of SmilesDrawer, a pure-JavaScript library that parses SMILES and renders molecules as SVG or Canvas, with ~70,000 monthly downloads on npm.

Read more →