Skip to content

Ahmet ZeybekFull Stack Developer

Most of the interesting problems don’t belong to one layer. They show up somewhere between product logic, data, infrastructure, and whatever the system decides to do once real users arrive. That’s usually where I end up.

I’ve spent years moving between frontend, backend, databases, queues, delivery pipelines, and edge infrastructure. Some days it’s a new feature. Other days it’s following a strange production bug through half the stack, deleting a dependency, or replacing an abstraction that became harder to understand than the problem itself. Good software should be predictable, easy to debug, and not need a manual just to keep running.

A lot of things I’ve built started with the same thought: this shouldn’t be this hard. The answer is rarely another platform. Find the real constraint, keep the surface area small, make the trade-offs obvious, ship it.

This site is where I keep the work and ideas worth sharing. Notes from production, things I’m figuring out, and the occasional deep dive into a problem that wouldn’t leave me alone.

.posts

recent 3 posts, worth a look.

TypeSafe's Jev in production: thresholds and two bugs

Jev is a decision model: it picks, rates and judges, and writes nothing. I wired it into ten places on this site and measured what it cost. The hard part was never the model. It was choosing a threshold per decision, giving moderation a token budget nothing else can spend, and finding out that the counter meant to cap the whole thing had never counted anything. Here are the eleven thresholds, the two bugs, and the rule I kept.

llmai-agentsarchitecture+2 more
20 min read

How I turn any handful of colours into a readable theme

This site ships 18 hand-made themes and 368 base16 schemes, and when I measured them, 16 of the first and all 368 of the second broke basic rules about contrast and colour. I wrote those rules down as code, built an engine that repairs a palette with the smallest change it can find, and then pointed it at random colours. Here's how it works and where it stops.

cssaccessibilitydesign-systems+2 more
17 min read

How camouflage.nvim masks secrets in Neovim without leaking a frame

In Neovim, a pasted secret can reach the screen for one frame before the mask catches up, and a recording keeps that frame. I measured what cloak.nvim, shelter.nvim and camouflage.nvim draw while you type and paste, what they cost, and which files they can read.

neovimluasecurity+2 more
11 min read
loading contributions...

.book

the one I wrote. postgres, all the way down.