Skip to content
Muhammet Şafak
tr
Muhammet Şafak

About

I Build the System, and I Write Down Why

My name is Muhammet Şafak. I have been building software since 2008, and today I work as a Staff Engineer on the R&D team of a technology company. Thinking about and designing high-traffic architectures is the part I enjoy most. I am loyal to the problem, not to the language. What I know, what I learn and the real-world cases I run into, I share in several places — this site first of all.

This page tries to explain both who I am and why this site exists.

Staff Engineer Istanbul, Türkiye

What I decide by

I have been at this a long time and plenty has changed; the ones below have not. Each one has a cost, and I have written that down too.

01 I choose what can be changed tomorrow
The thing that finishes fastest today is rarely the thing still standing a year later. When the two conflict I take the second one; the price is a slower first delivery.
02 I write down the reasoning
Making the call is half the work; writing down why it was made is the other half. An unrecorded reason turns into code nobody can defend six months later.
03 I name the cost
Every choice comes with a bill. A recommendation that hides its bill is not advice, it is sales copy. Nothing here is a cure-all.
04 I am loyal to the problem, not the language
PHP, Go, Python and JavaScript all stay on the table; the problem decides which one opens, not my habit.
05 I say so when I do not know
If I have a limit on a topic, I do not hide it. Seniority is not knowing every answer; it is drawing the line in the right place.

Where I go deep

The subjects I have read into, measured, and shipped production work with. On anything outside this list, I will tell you I do not know.

How did I get here?

I started freelancing in 2008. For fourteen years I delivered corporate sites, e-commerce systems and integrations. That is where I learned the commercial side of the work, what a delivery date actually means, and that no system survives without an owner.

From 2012 I was also on the core team of a vertical search engine: an index of tens of millions of documents, a crawler measured in millions of URLs an hour, and query latency dragged from seconds down to milliseconds. That is where I first saw what “scale” means, bill included.

Since 2022 I have been full-time at a technology company — first as a Senior Software Developer, and since 2025 as a Staff Engineer. The job is no longer only writing code: designing the microservice and event-driven architecture of a high-traffic platform, acting as the technical compass on critical design calls, and putting product strategy and technology vision on the same table. Over the same period I mentored small teams on TDD and DDD.

I did not learn software at school — my degree is in history. That started as a gap and turned into a habit: read everything at its source, and note down what you read with the date on it. That habit explains a fair amount about what this site looks like.

Company names, dates and the skill list live on the résumé; this page is about the work itself.

See the résumé

About this site

Built with Astro, Tailwind CSS and MDX, published on Cloudflare. The content does not live in a database but inside the git repository, as markdown.

No accounts, no dashboard, no forms and no ads — none of them planned either.

If you have a question, an offer, or plain curiosity: no form, straight to email.

Write to me

What AI does to these posts

AI is not here to write the text; it is here to anonymise what I wrote and clean up the language. Every post I publish today goes through three steps.

01 Draft
I pick the topic, and I write the text from cases I actually hit in production. The draft cannot be published as it stands: whatever makes the customer, the system or the data recognisable is still in it.
02 Scrubbing
AI anonymises the text: it generalises anything recognisable without breaking the example. Typos and clumsy sentences are fixed in the same step.
03 Final review
Before it goes live I read the text line by line, fix whatever needs fixing and give it its final shape.

This is where AI does not reach: the topic, the claim, the real examples and the measurements are mine. The machine works on the language layer, not the decision layer.

What lives where

This site is not a showcase, it is a ledger. It is not one pile either: each section answers a different question and none of them does another’s job. Your question decides where you should go.

Satellite · sade.dev

The line is drawn by mode, not by person

Everything written here is dated and first-person — “I did this, on this date, this way.” sade.dev speaks without a date and without an author — “this is how it is done.” The same topic can live in both; one carries the finding, the other the principle. When something here touches system-level depth, I do not write that depth — I link to it.

Go to sade.dev

Search the site

Start typing to search posts, projects and pages.

Esc to close Powered by Pagefind