All open roles
Engineering

Senior Fullstack Engineer (m/f/d)

TypeFull-timeLocationBerlinTeamEngineering

About Freshflow

€72 billion worth of fresh food is wasted every year in European grocery retail. Freshflow is building the AI Operating System for the Fresh Food Supply Chain — starting with ordering and inventory optimization for fresh produce departments.

We work with some of the largest retailers in Germany and France — EDEKA, REWE, Carrefour, Intermarché, and E.Leclerc — reducing waste by ~24% while improving on-shelf availability. We're growing revenues 400% year-over-year, backed by World Fund and Capnamic, and just getting started.

The role

Freshflow is a B2B SaaS product that helps grocery stores optimize fresh-food ordering. We use machine learning to predict demand and generate order recommendations, reducing food waste and stock-outs. Our customers are some of the biggest retail chains across Germany and France. You'll work primarily on the Python backend and secondarily on the Flutter mobile app. We're a small team and you'll get exposure to every part of our product — ingesting data from customers, processing it, integrating our AI services, and serving it to our customers via our app or into their external systems.

What you'll work on

Backend

  • APIs — build and maintain the REST APIs that serve order recommendations to the mobile app and white-label partners, handle order submissions, and those we use internally.
  • Partner integrations — receive data and route finalized orders to supplier systems via different means. Build new integrations as we onboard retail chains.
  • Data delivery — bridge the analytical layer and the mobile app: read computed recommendations from the warehouse, denormalize them, and write them to an operational store the app can sync from.
  • Infrastructure — provision and manage the cloud resources these services run on (compute, databases, messaging, secrets).

Mobile app

The primary focus for this role is our backend, but we need you to also contribute to our Flutter mobile app when required. Topics here could include:

  • Working on the on-device recommendation adjustment engine and the sync protocol client-side.
  • Client-specific adjustments to the order flow.
  • Adjusting our app to make it ready for other device types (especially Android mobile and/or MDE devices used by retail stores).

What we're looking for

  • Strong Python experience — you'll write FastAPI services, Pydantic models, async code and background workers.
  • Experience with PostgreSQL and at least one document database (Firestore, MongoDB, DynamoDB). You'll work with both daily.
  • Experience with REST API design — you'll build APIs that both internal UIs and external partners consume (versioning, auth, rate limiting, documentation).
  • Understanding of authentication and authorization patterns (OAuth 2.0, JWTs, role-based access control).
  • Understanding of multi-tenant data isolation (row-level security, path-based isolation, scoped tokens).
  • Experience with Flutter or a strong willingness to work in Dart/Flutter — you don't need to be a Flutter expert, but you should be comfortable reading and contributing to a mobile codebase.
  • Experience building sync protocols or offline-first mobile apps.
  • Comfort moving between layers — backend one week, mobile the next, based on what needs doing.
  • Experience with GCP or an equivalent cloud platform.

Nice to have

  • Experience with BigQuery or similar columnar warehouses.
  • Terraform or equivalent IaC experience.
  • Familiarity with async messaging patterns (queues, pub/sub, dead-letter handling, idempotency).
  • Exposure to B2B SaaS or the grocery/retail domain.

How we work

  • Small team, high ownership, minimal process overhead.
  • Python backend, dbt for analytical data transformation, Flutter for mobile, Airflow for orchestration.
  • Everything on GCP: Cloud Run for compute, BigQuery for analytics, Firestore for operational data.
  • We're a small company and you need to be comfortable in an unstructured environment.

How to apply

Does this position sound like a good fit? Email us at jobs@freshflow.ai.

Freshflow is proud to be an equal opportunity employer. This means that we don't discriminate based on race or ethnic origin, color, the language(s) you speak, where you (or your parents) are from, whether or not you consider yourself to have a disability, your age, gender, gender identity, sex, sexual orientation, religion, beliefs, or political opinions. We're a diverse team in many ways, and we love it that way.