Open to contract or a role

Jakub Nowosad

Product engineer · Warsaw · since 2020

I build the parts nobody sees, and the parts you do. Data models, payment flows, caches — and the web, mobile and desktop apps on top of them.

Selected work ↓

Selected work

Platform · clients · latency

I joined Soleback’s three founders in 2024 as the fourth person on the team, and run development end to end: six services behind one public API, a web app, a Chrome extension, an admin panel, and the monitors that feed all of it. Reads come from Redis first and fall back to Postgres. When it threw intermittent 5XX, the cause was four separate things stacked, not one.

FastAPIPostgresRedisRedis LuaNext.jsECS Fargate
RoleSoftware engineer, 4th on teamServices6 services, one APIMoneyEUR · USD · GBP · PLNReach6 locales, web + extensionLatencyALB · ECS · pooler · a leak

An HR and payroll system for DRE$$CODE and Dropsy: time tracking, leave, employee records, per-project settlement, and the mBank transfer batches at the end of it. I designed the data model first, then built the NestJS API over it, with four clients going on top: web, iOS, Android, and a native macOS app that is furthest along. Personal data is encrypted field by field.

NestJSPrismaPostgresNext.jsReact NativeSwift
ClientsWeb · iOS · Android · macOSData model23 tables, ERD firstMoneymBank transfer batchesPIIEncrypted field by field

A drop is not steady traffic: everyone arrives in the same minute, and the checkout either holds or the launch becomes the story. Stores for people who already have an audience. 474747 for the rapper Oki, blaire.cc for Miłosz Kulesza’s brand, V24 STORE for an Eryk Moczko release. 474747 runs on WordPress, so capacity was mine to solve: on a drop it held over fifteen thousand people at once.

ShopifyLiquidWordPressPHP
Peak15,000+ at onceStores5 shippedBuildCustom themes, from scratchBuilt atDRE$$CODE, Phantom Label

Eighteen affiliate networks, eighteen opinions about what a transaction is. Some expose a REST API, some fire postbacks, one drops a CSV into S3. All of it lands in one state machine (pending, approved, withdrawable), and every transaction is stitched back to the click that caused it. I own the pipeline; it has to be replay-safe, because partners resend.

Async workersS3WebhooksIdempotency
Networks18, one transaction tableIngestAPI · postback · CSVGuaranteeReplay-safe, idempotent

42bot, written at school: software that bought limited-release sneakers faster than a person could. Stock monitors, checkout automation, and Discord bots in front of it. The sites did not want the traffic, so the budget was a few hundred milliseconds against a target that kept moving. It is where the monitor vocabulary comes from, and I now build the storefronts on the other side of that transaction.

PythonAsyncDiscord
EraAt school, 2020 to 2022ConstraintLatency and concurrencySurfaceCheckout, stock, DiscordOther sideI now build the stores

How I work

Backend · clients · performance

The interesting bugs are never in the code you changed.

Most of what I do is integration: making systems that were never built for each other agree on what happened, in what order, and for how much money. That work rewards patience and a good trace more than cleverness. The hard part is almost never the code you are writing.

At DRE$$CODE and Phantom Label I am the whole IT function, which is how the payroll system started. Nobody wrote a spec for it.

I write the boring version first, put numbers on it, then decide what deserves to be fast. I own things end to end, from the data model to the API to whatever the user touches. That is the work I want more of: a product with a real constraint in it, not a layer of one.

CorePython · TypeScript · Swift
BackendFastAPI · NestJS · Prisma
ClientsNext.js · React Native · macOS
DataPostgres · Redis · Lua
InfraAWS ECS · Docker · Caddy
HabitMigrations before deploys

Start here

Replies within a day

Contract first, open to the right role

nowosad.jaqb@icloud.com