Mycrospace
Context
Microbiology labs still count colonies by hand. A lab can process hundreds of plates a day. Manual counting is slow, error-prone, and hard to scale. The data ends up on paper.
It started in 2024 as my master’s thesis, which was awarded honours and then turned into a company; Mycrospace was incorporated in January 2026. I am cofounder and CTO, and I supervise a full-stack developer.
Five laboratories run it in production today as launch collaborations, which means we harden the product with them rather than at them.
What I built
The whole stack. Inference workers on BullMQ and Redis, a NestJS and Prisma API over PostgreSQL, a Next.js web client, a React Native app for use at the bench, Stripe for billing and PostHog for product analytics.
It ran on GCP until the bill outgrew the traffic, then moved to Hetzner with Dokploy. That move is the kind of decision I get hired for: the same product, a fraction of the monthly cost, because someone was watching the invoice as well as the metrics.
A lab photographs a plate and gets counts and analysis in seconds. I own the path from the training run to the screen a microbiologist actually uses.
Technical decisions, and why
Detection originally ran on Ultralytics, which is AGPL-3.0 and therefore rules itself out for a closed SaaS. So we rebuilt it: the detector starts from the YOLO family of architectures, carries our own modifications, and is trained from scratch on our own data, on a base we can actually license. Licensing is an engineering constraint, not a legal afterthought.
Colony detection sits at 67 mAP50-95, the strict localisation metric. Against counts from expert microbiologists, the product reaches 95% median accuracy. Two different questions: how well the boxes land, and how close the final number is to what a specialist would have written down.
Crowded plates are the hard case. Past roughly 300 overlapping colonies the detector stops separating instances at all, so for that regime I reformulated counting as density estimation and trained density-map regressors with Bayesian priors.
We shot our own corpus of 5,000 plate images across 12 microbial species and annotated 1,500 of them, under protocols written with microbiologists and using custom weakly-supervised labelling tools. The tooling is the reason the annotation budget went as far as it did.
More than 3,000 GPU-hours of training on Leonardo, under two compute allocations won through competitive EuroHPC calls in computational biology.
Result
About 20× faster than manual colony counting, and about 30 seconds per plate from photo to results.
1st prize at the IdeasUPV startup competition in 2024, with a €2,500 grant.