# The data backbone behind a CE-marked, three-minute VO₂max test.

> Ventriject’s Seismofit System estimates VO₂max in under three minutes without exercise. A compact chest sensor picks up the vibrations of each heartbeat, and an AI algorithm turns them into a result. We built the backend the product runs on.

- URL: https://bon.do/en/work/seismofit
- Client: Seismofit
- Sector: Medtech
- Platforms: Cloud backend, Flutter app and web portal
- Role: Backend system
- Outcome: Live and CE-marked: a measurement takes under three minutes.
- Tags: IoT, MedTech

## Overview

Ventriject’s Seismofit System estimates VO₂max in under three minutes without exercise. A compact chest sensor picks up the vibrations of each heartbeat, and an AI algorithm turns them into a result. We built the backend the product runs on.

The measurement has to be repeatable across clinics, devices and operators. Every recording needs to be tied to the right subject, device and operator, and the result has to be traceable back to the raw signal.

We built a .NET 9 API with SQL Server, EF Core and a device management layer for sensors, operators, subjects, recordings and quality control. The API runs on Azure with Key Vault and Managed Identity, uses Keycloak for authentication, TickerQ for scheduled jobs and SendGrid for email. A Flutter app drives the measurement, and a web portal gives clinics and production teams access.

The Seismofit System is live and CE-marked. A measurement takes under three minutes, and the backend keeps the device, subject, recording and result connected.

## Results

- **Test time:** <3 min. From sensor on to VO₂max estimate.
- **Regulatory status:** CE. CE-marked medical device.
- **Backend domains:** 9. Customer, device, operator, recording, QA and more.

## At a glance

- **Client:** Ventriject
- **Product:** Seismofit® System
- **Our role:** Backend system
- **Status:** Live · CE-marked
- **Stack:** .NET 9 · SQL Server · Azure · Keycloak · Flutter
- **Timeline:** Ongoing product partnership

## What we built

### 01. Data in

Device, operator, subject and recording are linked at the moment of measurement, with the raw signal stored against the right record.

### 02. Results out

The algorithm service returns a VO₂max estimate, and the API makes it available to the app and the clinic portal.

### 03. Evidence

Quality control, production batches and traceability are part of the backend, not a spreadsheet beside it.

## How it ran

### 01. Discover: Intended use and constraints

What the device claims, who uses it, and what that means for the software.

### 02. Design: Architecture that traces

Requirements linked to risks and tests from the first sprint.

### 03. Build: Increments you can test

A working backend every two weeks, demoed to the team.

### 04. Launch: Live and maintained

Release, monitoring and support under a clear agreement.



## Contact

Bon.do ApS · Rantzausmindevej 228, 5700 Svendborg, Denmark · info@bon.do · https://bon.do/en/contact-us