Careers

Full-stack engineer (medior/senior)

SMARTRUNNING • BELGIUM, HYBRID • FULL-TIME, PAYROLL ONLY

ABOUT SMARTRUNNING

SmartRunning is a mobile coach that builds personalised marathon training plans from a physiological model of the runner. The plan adapts to what the runner actually does, read from their watch, so each runner trains at the right load and reaches the start line fit and uninjured.

The model is our own: a training-plan engine built on scientifically supported training stress and fitness-fatigue modelling. We are currently ready to launch version 1 to our athletes. The platform (Flutter app, Python backend, Google Cloud) has just been brought in-house, and we are building the team that takes it to market.

The role

You build and manage the product across the entire stack: the Flutter app, the Python backend and data pipelines, the internal tools, the CI/CD pipeline, … Because the product is a training model, understanding it matters as much as the code. You will spot when a plan looks wrong to a runner before a test does.

You work daily with our Product Manager, who owns what we build when and the training science behind it. You are both very hands-on but you are the magician when it comes to the nitty-gritty details. The team is definitely going to grow over time with more engineers, data scientists, and even physiology experts. But on day one, you will have to be comfortable taking ownership of the outcome! You report directly to the owner.

What you will do

  • Build and ship features in the mobile app (Flutter, Dart, BLoC).
  • Build and maintain the backend: FastAPI services on Cloud Run, and the data pipelines that turn raw watch activities into training data (Pub/Sub, Cloud Tasks, BigQuery, Firestore).
  • Integrate the training-plan engine, our own Python package, into the platform, and help evolve it.
  • Own wearable integrations: activity ingestion through an aggregator, Garmin (including Connect IQ), and pushing structured workouts to the watch.
  • Build internal tools, starting with an admin dashboard for coaches and support.
  • Keep quality high: documentation, tests, typing, code review, and infrastructure as code.

What we use today

This is what you will work with. You do not need to know all of it on day one but you have to be comfortable getting dirty with any of it;

  • Mobile: Flutter, Dart, BLoC, Firebase (Auth, Messaging, Crashlytics, App Distribution).
  • Backend: Python, FastAPI, uv, pytest, mypy, Ruff.
  • Data and cloud: Google Cloud (Cloud Run, Pub/Sub, Cloud Tasks, BigQuery, Firestore, Cloud Storage, Artifact Registry), Terraform.
  • Algorithm: Python with numpy, pandas and scipy.
  • Tooling: Nx monorepo, GitHub Actions.
  • Integrations: wearable data aggregator, Garmin, Intercom, LLM providers.

What you bring

  • Several years building and shipping production software across mobile and backend.
  • Solid mobile and backend skills. Flutter and Python are what we use; strength in comparable technologies counts.
  • Experience with modern cloud infrastructure, for example Google Cloud, AWS or Azure, serverless and container platforms, event-driven or pipeline-style backends, and infrastructure as code.
  • Endurance sports experience. You run, ride or race: marathon, trail, triathlon or similar. You know what an interval session, a threshold run or a taper is from the inside. This weighs heavily in our selection.
  • Interest in the physiology behind it: training load and stress, heart-rate and pace zones,… You will read and work on the model, not only call it.
  • Ownership in a small team: you raise problems early, and you work from a clear ticket without needing every detail spelled out.
  • Fluent in English, Dutch is a plus.

Nice to have

  • Experience with FIT files, Garmin Connect IQ or wearable and fitness APIs.
  • Numerical Python and data work (pandas, scipy, BigQuery SQL).
  • CI/CD for mobile store releases.
  • A modern web frontend framework for internal tools, for example React, Angular or Vue.

What we offer

A full-time role in a small team, hybrid in Belgium. Salary and benefits in line with your experience and fit.

How to apply

READY TO APPLY?

Send your resume and cover letter to vacancy@smartrunning.coach. We promise it won’t be read by an AI if you make sure it isn’t written by AI. Show us how much you understand about what we are trying to achieve with your own experience.