fjalla

A streaming platform that pays artists per play — architected and written from nothing, then grown with a team.

fjalla Co-founder & CTO 2025 – present

fjalla.net →

The problem

Streaming pays artists out of a pro-rata pool, which means what a listener pays has almost no relationship to who they listened to. fjalla pays per play instead — listeners top up credit, each play pays the artist directly, and the credit does not expire.

That is a simple pitch and an awkward system. Delivering audio is the easy part; the platform around it — catalogue, rights, artist and label accounts, a credit balance, per-play accounting and payouts — is where the actual engineering lives. And it had to exist before there was a team to build it.

What I built

I opened every repository at the end of October 2025 and wrote the first version alone: the architecture, the API and the mobile app. The next engineer's first commit lands eleven days later, and the team grew from there — so the system others joined was already standing.

The API is Go and Fiber over PostgreSQL, Redis and RabbitMQ, deliberately split into four binaries: the HTTP API, a consumer that owns the search index, a scheduler, and a cleanup worker. Nothing writes to the search index directly; it is only ever reached by publishing an event, which is what keeps a second service from quietly becoming a second source of truth.

On top of that, a Flutter app for listeners on iOS and Android, and React dashboards for artists, labels and administration.

The result

A live platform on both app stores, paying a stated 1.2¢ per stream, with credit top-ups from a euro upward.

As CTO I still own the architecture, but the more useful thing it demonstrates is the founding: the whole stack existed, and worked, before anyone else could help with it.

Stack

Go / FiberPostgreSQLRedisRabbitMQFlutterReact

Services this involved

Have a project like this?

Tell me what the system has to do and what it has to talk to. You get a straight answer about scope, sequence and what I would build first — before any commitment.

Start a conversation