Software Engineer — Systems Architecture · Engineering Research · AI Systems Engineering
Staff Engineer at Bulutklinik · Istanbul, Türkiye
I've been building software professionally since 2008. I didn't learn it at school — my degree is in history. Over the years I have built large production systems and turned what I learned from them into measured, published research.
Today I work as a Staff Engineer at Bulutklinik, on the architecture, scalability and reliability of high-traffic distributed systems. My direction is AI Systems Engineering: putting language models into production systems with the same discipline as any other component — explicit contracts, measured behavior and the decision left with a human.
My work spans three connected areas:
- Software Engineering — production systems, backend services, APIs and developer tools.
- Systems Architecture — distributed and event-driven systems, boundaries, contracts and the trade-offs between them.
- Engineering Research — experiments, benchmarks and reproducible measurements of how systems actually behave.
- I choose what can be changed tomorrow — reversible technical decisions over clever ones.
- I write down why — every project keeps its decisions as ADRs.
- I state the cost — performance, money and complexity are part of the answer.
- I'm bound to the problem, not the language — PHP, Go, Python and TypeScript sit at the same table.
- When I don't know, I write "I don't know."
On AI: the machine works at the language layer, not the decision layer. I use AI heavily — content pipelines, agent-based development, LLM products — and I design the systems so that the final decision stays with a person.
| Area | Interests |
|---|---|
| AI Systems Engineering | LLM gateways, RAG, MCP, agent security and cost, evaluation, self-hosted AI infrastructure |
| Distributed Systems | Event-driven architecture, messaging, service contracts, consistency, retries, idempotency |
| Software Architecture | System boundaries, DDD, modularity, integration design, decision records |
| Reliability & Performance | High availability, caching, database performance, capacity, observability |
| Developer Infrastructure | CLI tools, code review, CI/CD, interoperability, open standards |
| Engineering Research | Benchmarking, experimental methodology, performance analysis, reproducibility |
I run independent engineering investigations and publish each one with its methodology, environment, results and limitations. The goal is not to declare winners, but to produce findings others can examine, challenge and reproduce.
Selected reports:
- One core carries 14,330 OAuth2 requests in Go and 5,152 in PHP-FPM — per-core capacity under the same workload.
- A partial index makes a queue table forty-one times smaller — for as long as the planner picks it — PostgreSQL on a 10-million-row queue table.
- Seven PHP frameworks under identical load — the gap narrows as soon as the request does real work.
My open-source work shares a few recurring themes: interoperability, explicit contracts, vendor independence, self-hosting, measurable behavior and operational transparency.
Developer infrastructure — Tignex
| Project | What it does | License |
|---|---|---|
| CommitBrief | Local, private, provider-agnostic LLM code reviewer for git diffs. Go. | GPL-3.0 |
| BabelQueue | A strict JSON envelope that makes a queue message readable by every language — without changing your broker. | MIT |
| QueryProxy | Production data access without production credentials: query approval, policy rules, masking and audit. | AGPL-3.0 |
AI infrastructure — Tunedness
| Project | What it does | License |
|---|---|---|
| Ragmux | Single-binary AI gateway: one OpenAI-compatible API, built-in RAG, multi-provider routing, token budgets. Go. | AGPL-3.0 |
| Contextator | Self-hosted, multi-tenant MCP documentation server — team docs as one MCP endpoint per project. | AGPL-3.0 |
| McpGuard | MCP security proxy: prompt-injection blocking, PII masking, RBAC, hash-chained audit log. Pre-release. | Apache-2.0 |
| AgentFuse | Circuit breaker for agents: loop detection, call/token/cost limits, approval gates. Pre-release. | Apache-2.0 |
Earlier work: InitPHP, framework-independent PHP libraries (maintenance mode).
More projects and experiments: Portfolio · Labs
My independent products are organized under Centvix:
- Tignex — open-source tools, infrastructure and standards for developers who value control and interoperability.
- Tunedness — AI infrastructure and an applied AI research and engineering lab.
- Parva Machina — independent browser and mobile games.
- Academia — an education platform.
Everything starts at muhammetsafak.com, in English and Turkish:
| Section | Focus |
|---|---|
| Blog | Engineering journal since 2014 — what I built, measured and learned |
| Engineering | Notes, essays and system references on architecture and backend engineering (formerly sade.dev) |
| Research | Benchmarks and measurements with full methodology |
| Visuals | Diagrams, infographics and presentations |
Copies and other formats: DEV (English) · Medium (Turkish) · YouTube (Turkish)
Languages and tools are means to solve problems, not the foundation of my professional identity.
Languages: PHP · Go · Python · JavaScript · TypeScript · SQL · Shell
Backend & Frameworks: Laravel · Symfony · Node.js · FastAPI · Gin
Data & Messaging: PostgreSQL · MySQL/MariaDB · Redis · RabbitMQ · Kafka · MongoDB
Infrastructure: Linux · Docker · Cloudflare · GitHub Actions · Nginx · OpenTelemetry · Prometheus
Applied AI: LLM integration · RAG · MCP · AI gateways · Agent tooling · Evaluation
For engineering discussions, open-source collaboration, research or professional inquiries:
- Website: muhammetsafak.com
- LinkedIn: in/safakix
- X: @safakix
- Email: info@muhammetsafak.com
I design, build and study production software systems.




