Summary
✨ AI‑Generated
Take ownership of a significant part of a Python backend platform where latency and reliability are critical. You will extend the codebase, optimize data access with PostgreSQL, create queries and migrations, handle deployments and tests, monitor production systems, and investigate real-time conversation issues in a high-performance AI environment.
Highlights
High-ownership Python engineering role on a small team building latency-sensitive systems. You will work across backend development, data architecture, deployments, testing, monitoring, and production troubleshooting, with direct impact on a sophisticated real-time AI platform.
Description
Software Engineer (Python) — Spiralink, Ghent
We're a voice AI company based at Wintercircus in Ghent.
We run a platform where call centers, BPOs and agencies build and operate their own voice AI agents for their end clients.
The engine is the part that makes calls actually happen.
Audio comes in from a live phone line, it gets understood into text, the AI decides what to say, and a voice speaks it back — all in under a second, across many clients at the same time.
Around that sits everything else: the database, per-minute billing, recordings, deployments.
It's Python.
The whole platform runs on a very small team.
We're hiring one person to take real ownership of a part of it.
What you'll do
Build and extend the platform's Python codebaseWork on the parts where latency matters and milliseconds are visible to the callerDesign and improve the data layer: Postgres, your own queries and migrationsShip it and keep it running — deployments, tests, monitoringFind out why a conversation went wrong and fix it, often before the client noticesWrite and improve prompts, and build agentic flows: tool calling, multiple steps, retries, things going wrongWhat we're looking for
Someone who is strong at engineering and strong with AI.
Both halves matter.
An engineer who can't make a model behave will build something that works technically and sounds wrong on the phone.
Someone who only writes prompts can't build the system that runs them.
Concretely:
Python, and async Python — asyncio, websockets.
Everything here happens at the same timeYou've built something live where a user feels the delay: calls, streaming, chat, transcription, videoPostgres, comfortable writing your own queries and migrationsDocker, deployments, tests.
You ship it and keep it alive, not just write itYou test and measure AI behaviour instead of guessing.
"It sounded fine once" isn't proofYou use Claude or Cursor daily.
That's how a small team keeps up with a big oneNice to have, not required
Telephony and SIP.
Voice and AI providers like Deepgram, ElevenLabs, Cartesia, OpenAI, Anthropic, Google.
Cloud infrastructure of any kind.
All of this is learned here in weeks, and never a reason for us to say no.
How you work
We hand you a goal, not a task list.
You come back with something that works and can explain why you built it that way.
You ask three sharp questions before starting — not twenty, not zero.
You have opinions and make your case, and then build it the agreed way properly.
On experience: we care more about what you've actually built than about years on a CV.
Several years of production experience is what we expect, but if you can show us something real, we want to talk regardless.
Probably not a fit if you're a data scientist or ML researcher, a prompt engineer without code behind you, an AI consultant, or someone who has only built websites and admin screens.
Practical
Full-time, on site at Wintercircus in Ghent.
Small team, short lines, no layers.
You'll be working next to the people who built this.
How to apply
Email omer@spiralink.ai with something you've built — a GitHub, a project, anything that runs.
Tell us in a few lines what it does and what was hard about it.
Add your CV as well, but the project is what we'll look at first.
Please apply by email, not through LinkedIn.
We read every message and reply within a few days.