İçeriğe geç
Muhammet Şafak
en

Polyglot Geliştirici & Sistem Mimarı

Ölçeklenebilir sistemler tasarlıyorum.

2008’den bu yana yazılım geliştiriyorum; son yıllarda odağım yüksek trafikli sistemlerin mimarisi. Kararların ardındaki gerekçeyi ve gerçek projelerden çıkardığım dersleri burada paylaşıyorum.

Beni takip edin
Muhammet Şafak portresi

Kısaca

Hakkımda

2008’den bu yana yazılım geliştiriyorum. Bugün bir teknoloji şirketinde Staff Engineer olarak yüksek trafikli sistemlerin mikroservis ve event-driven mimarisini tasarlıyorum. PHP, Go, Python ve JavaScript ekosistemlerinde çalışan; dile değil probleme odaklanan bir geliştiriciyim. Ölçeklenebilirlik ve sürdürülebilirlik kararlarında ekiplere teknik pusula görevi görüyor, kalan zamanımda kendi SaaS ürünlerimi ve açık kaynak projelerimi sürdürüyorum.

İlgi alanlarımın merkezinde ölçeklenebilir sistem mimarisi, temiz API tasarımı ve test edilebilir kod yer alıyor. Öğrendiklerimi paylaşmayı, açık kaynağa katkı sunmayı ve fikirleri çalışan ürünlere dönüştürmeyi seviyorum.

Hakkımda sayfasına git
Konum
İstanbul, Türkiye
Deneyim
2008’den beri (18+ yıl)
Şu an
Sistem Mimarı
Odak
SaaS & Açık Kaynak

Portfolyo

Öne Çıkan Projeler

Üzerinde çalıştığım ve sürdürdüğüm bazı ürün ve projeler.

Tümünü gör
Parantaj kapak görseli — toplam bakiye, hesaplar, harcama kategorileri ve nakit akışı grafiğiyle bir finans kontrol paneli

Parantaj

Devam ediyor

Owner

Kişisel ve kurumsal finansal yönetim platformu. Gelir-gider takibi, bütçe planlama, detaylı raporlama ve çoklu hesap yönetimi sunar.

PHP Laravel Go +8 daha
Ekim 2024 — Devam ediyor
BabelQueue kapak görseli — bir üreticiden kuyruğa, oradan başka bir dildeki tüketiciye akan kanonik JSON zarfı ve çok dilli SDK listesi

BabelQueue

Devam ediyor

Founder & Developer

BabelQueue, farklı dillerde yazılmış servislerin aynı kuyruğu serileştirme kilidine takılmadan paylaşmasını sağlayan, dilden bağımsız bir mesaj kuyruğu standardıdır. PHP'nin serialize()'ı gibi dile özgü formatlar yerine; her dilin doğal olarak okuyabildiği, schema_version 1'de dondurulmuş katı bir JSON zarfı tanımlar. Redis ve RabbitMQ üzerinde, sidecar ya da broker eklentisi olmadan, %2'nin altında ek yükle çalışır.

JSON Redis RabbitMQ +6 daha
Haziran 2026 — Devam ediyor
CommitBrief CLI çıktısı — terminalde renkli severity kartları halinde listelenmiş kod inceleme bulguları

CommitBrief

Devam ediyor

Founder & Developer

CommitBrief, git diff'leri üzerinde LLM destekli yerel kod incelemesi yapan, sağlayıcıdan bağımsız bir Go CLI aracıdır. Staged/unstaged değişikliklerden tek bir commit'e ya da PR tarzı üç noktalı aralıklara kadar her kapsamı; terminalden çıkmadan, diff'i dışarı sızdırmadan ve özelleştirilebilir proje kurallarıyla denetler.

Go Cobra go-git +8 daha
Nisan 2026 — Devam ediyor

Kariyer

Deneyim

Profesyonel yazılım geliştirme yolculuğumdan kesitler.

Tüm özgeçmiş
  1. Mart 2025 — Devam ediyor Devam ediyor

    Staff Engineer

    Bulutklinik Teknoloji İstanbul, Türkiye

    Staff Developer olarak, Bulutklinik’in yüksek trafikli sağlık platformunu mikroservis + event-driven mimari ile tasarlıyor; kritik tasarım kararlarında teknik pusula rolü üstleniyorum. Domain-driven design, test-odaklı geliştirme ve performans optimizasyonu prensipleriyle ekiplerin kod kalitesini ve teslimat hızını sürekli iyileştiriyor, ürün stratejisini teknoloji vizyonuyla buluşturuyorum. Bu yaklaşım, platformun güvenilirliğini ve esnekliğini sürdürülebilir biçimde artırıyor.

    • Software Architecture
    • Distributed Systems
    • Event-Driven Architecture
    • Domain-Driven Design
    • Engineering Leadership
    • Technical Mentorship
    • System Reliability
    • Platform Scalability
  2. Eylül 2022 — Mart 2025

    Senior Software Developer

    Bulutklinik Teknoloji İstanbul, Türkiye

    Senior Developer olarak, bulut tabanlı HBYS & Telemedicine platformunun mikroservis mimarisi, otomatik ölçeklenebilirliği ve entegrasyon katmanlarından uçtan uca teknik sorumluluk üstlendim. Kurum içi servisleri güvenli OAuth 2 akışlarıyla yeniden kurgulayarak reçete ve veri senkronizasyon hatalarını %95 azalttım, sistem erişilebilirliğini ise %99,95 düzeyine çıkardım. Ayrıca 4–6 kişilik ekibe TDD/DDD mentörlüğü verip kapsamlı bir code-review rehberi hazırlayarak PR geri-bildirim döngüsünü kısaltıp test kapsamını kayda değer biçimde genişlettim.

    • Software Architecture
    • API Architecture
    • Distributed Systems
    • System Scalability
    • Identity & Access Management
    • Integration Engineering
    • Domain-Driven Design
    • Team Mentorship
  3. Haziran 2012 — Kasım 2021

    Back-end Developer

    Biliver İstanbul, Türkiye

    Back-end Developer olarak, 40 M+ dokümandan oluşan dikey arama motorunun çekirdek Ar-Ge ekibinde gerçek-zamanlı sorgu performansı ve büyük veri işleme katmanlarını yönettim. PHP/Python tabanlı, saatte 1 M URL tarayıp günlük 5 GB veriyi sorunsuz indekse ekleyen pipeline’ı tasarlarken, geliştirdiğim hibrit MySQL-Redis önbellekleme katmanı sorgu gecikmesini 1 500 ms’den ≈140 ms’ye düşürdü. Veri tabanı ve cache kümelerini bölerek toplam DB yükünü %80 azaltıp sistemin yüksek erişilebilirliğini garanti altına aldım.

    • Search Infrastructure
    • Distributed Systems
    • Performance Engineering
    • Data Pipelines
    • Caching Strategies
    • High Availability
    • Large-Scale Data Processing
    • System Optimization
  4. 2008’den bu yana tüm deneyimlerim

Labs

Geliştirmenin Başladığı Yer

Geliştirme odakları, süren işler ve ürüne varanlar — hepsi durumu ve olgunluğuyla tek sayfada.

Labs’a git
11
kayıt
4
devam eden
5
ürün olan

Research

Dayanağı Olmayanı Savunmam

Bir iddia kaynağa ya da sayıya dayanmıyorsa tercihtir. Araştırdıklarımın kaydı burada: ölçüm, analiz, tarama ve derleme — her kayıt kendi sorusunu, yöntemini ve sonuca ne kadar güvendiğimi yazıyor.

Araştırmalara git
9
kayıt
5
program
8
ham verili

Blog

Son Yazılar

Yazılım, mimari ve ürün geliştirme üzerine son içeriklerim.

Tümünü gör

Uzmanlık

Hangi ekosistemlerde ne yaptım?

Her programlama dili farklı bir ekosisteme açılıyor. Ve her ekosistemin farklı ihtiyaçlara göre avantaj ve dezavantajları var.

Sık sorulanlar

Bana en sık sorulanlar: nasıl başladım, neyle yazıyorum ve neye göre karar veriyorum.

9 soru

  • Yazılım geliştirme macerasına nasıl başladın?

    Bilgisayarla 2000 yılında, ailemin aldığı bir IBM ile tanıştım. Çok geçmeden fark ettim ki beni asıl mutlu eden şey bilgisayarı kullanmak değil, onunla bir şeyler üretmekti; o üretme ve oluşturma duygusu inanılmaz tatmin ediciydi. Yazılım geliştirme yolculuğum oradan başladı.

  • Hangi programlama dillerini ve frameworkleri kullanıyorsun?

    PHP, Python, Go ve JavaScript dillerine hâkimim ve dördünü de aktif olarak kullanıyorum. Bu dillerin popüler frameworklerinin tümü kullandığım araçlar arasında: Laravel ve Symfony, Django ve FastAPI, Gin ve Fiber, Node.js tarafındakiler. Odağım dilde ya da frameworkte değil, çözülecek sorunda.

  • Hangi programlama dilini ya da frameworkü kullanacağına nasıl karar veriyorsun?

    Bunun tek bir cevabı yok, ama kararı veren birkaç ana parametre var: MVP için verilen süre, ekipteki diğer geliştiricilerin bilgi ve deneyimi, bir de ürünün kendine özgü ihtiyaçları. Ekipte Go bilen yoksa o ürün Go ile yazılmamalıdır. Aynı şekilde, görevi tek bir cURL ya da SOAP isteği atmaktan ibaret olan bir consumer/worker için PHP Laravel yazmam.

  • Bu site nedir, niçin var?

    Burası bildiğim ve deneyimlediğim şeyleri detaylıca paylaştığım kişisel bir internet mecrası. Reklam ya da başka bir kazanç kaygısı taşımadan deneyimlerimi rahatça aktarabileyim diye var.

  • Yapay zekâyı kullanıyor musun?

    2023'ten beri yapay zekâyı aktif olarak, bir itki kuvveti gibi kullanıyorum. Kod tabanı incelemek, kod yazmak gibi zaman alan angarya işlerin çoğunda Agentic AI araçları hızlandırıcı olarak iyi iş çıkarıyor.

  • Kaç yıldır yazılım geliştiriyorsun?

    2008 yılından beri yazılım geliştirici olarak geçimimi sağlıyorum; yani 18 yıldır bu işi profesyonel olarak yapıyorum.

  • Hangi alanda yazılım geliştiriyorsun?

    Uzmanlaştığım alan web yazılımları ve CLI araçları. Sistemlerin backend tarafını tasarlamaktan ve yazmaktan daha fazla keyif alıyorum.

  • Geliştirici misin, mühendis mi, mimar mı?

    Bu işe geliştirici olarak başladım. Yıllar içinde neredeyse tüm domainlerde aktif geliştirme yaptım; ürettiğim mühendislik çözümleriyle yazılımları daha iyi, daha güçlü ve dayanıklı hâle getirdim. Bugünse yüksek trafikli sistemlerin mimarisini hedeflerine uygun olarak belirliyor ve uyguluyorum. Üçü birbirinin alternatifi değil, üst üste binen katmanlar.

  • Hangi domainlerde görev aldın?

    HealthTech, FinTech ve EdTech domainlerinde lead/main geliştirici olarak görev aldım; karar alma ve uygulama süreçlerinin ikisinde de aktif rol üstlendim.

Sitede Ara

Yazı, proje ve sayfalarda arama yapmak için yazmaya başlayın.

Esc ile kapat Pagefind ile güçlendirildi