Summary
A technology company is seeking a Senior Backend Engineer to own difficult problems spanning product services, APIs, data, infrastructure, and production reliability. You will design TypeScript services, REST APIs, schemas, migrations, and production workflows while working deeply with PostgreSQL. You will also improve reliability through idempotency, retries, outbox patterns, typed errors, automation, and robust deployment practices.
Highlights
Own challenging technical problems across backend services, APIs, data, infrastructure, and production reliability. The role provides deep hands-on ownership of TypeScript and PostgreSQL, production workflows, debugging, deployment safety, and engineering quality in a modern development environment.
Description
All Jobs
Engineering Helsinki
Senior Backend Engineer
Own hard technical problems across product, API, data, and infrastructure.
You will work deeply with TypeScript services, PostgreSQL, reliability, deployment, and debugging.
What you will do
Design and ship TypeScript services, REST APIs, database schemas, migrations, and production workflows.
Own production behavior beyond application code: config, secrets, logs, health checks, background jobs, deploys, and rollback paths.
Work deeply with PostgreSQL: schema design, indexes, query tuning, migration safety, and live data.
Extend the modular monolith with clear boundaries and only the abstractions the problem needs.
Build reliable flows with idempotency, retry semantics, outbox patterns, typed errors, Effect services, and our workflow reliability helpers.
Debug across the stack, from UI symptoms to API behavior, Effect traces, database queries, Railway logs, and runtime config.
Keep quality high through GitHub Actions, OpenAPI checks, careful review, useful tests, and honest PR descriptions.
What we are looking for
Expert TypeScript and strong typed backend or service engineering experience.
Production PostgreSQL experience: schema design, migrations, indexes, query tuning, and safe changes on live data.
Good judgment on service boundaries, database tradeoffs, deploys, reliability, security, cost, and when a simple solution is enough.
Experience with Docker, Git, PR workflows, CI, and running services in production.
Railway experience helps, but is not required.
Comfort working across the product stack.
React 19 and modern hooks experience is useful.
Effect experience is a strong signal.
Experience with typed functional patterns in fp-ts, Haskell, Rust, Scala, or similar systems can transfer.
Familiarity with Bun, Elysia, Drizzle, OpenAPI, pgvector, third party APIs, or Biome is useful, but you can ramp on these.
You can work without a clean spec, adjust when priorities change, and explain tradeoffs without hiding behind jargon.
You use coding agents as a tool, then verify the output through tests, type checks, manual review, and product judgment.