İçeriğe geç
Tüm projeler
Dönem
2024 — 2026
Rol
Full-Stack Engineer

Beeasist — SaaS CRM ve yapay zekâ asistanı

Randevu tabanlı işletmeler için yüksek trafikli bir SaaS CRM platformu; mimari tasarım, yapay zekâ katmanı, backend ve frontend süreçlerini yürüttüm.

  • Laravel
  • PHP
  • PostgreSQL
  • Redis
  • Next.js
  • React
  • Tailwind CSS
  • MCP

Ürün

Beeasist, randevu tabanlı işletmeler için bir SaaS CRM platformu. Çok şubeli yapılar, personel takvimleri ve dinamik randevu kuralları platformun merkezinde duruyor — dolayısıyla eşzamanlılık ve takvim modeli, ürünün en kritik mühendislik problemi.

Platformun mimari tasarımını, yapay zekâ katmanını ve hem backend hem frontend süreçlerini yürüttüm.

Yapay zekâ katmanı

Laravel üzerinde özel bir MCP (Model Context Protocol) altyapısı kurdum. Prisma PHP ve Vercel AI SDK entegrasyonuyla, kullanıcıların operasyonel iş akışlarını doğal dille yürütebildiği bir yapay zekâ asistanı devreye aldım.

Buradaki asıl iş, modeli bağlamak değil; asistanın erişebileceği araçların sınırlarını tanımlamak. Bir randevuyu oluşturabilen bir asistan, aynı zamanda onu yanlışlıkla silebilecek yetkiye sahip olmamalı.

Randevu ve eşzamanlılık

Çok şubeli yapı, personel ve dinamik takvim yönetimini destekleyen, yüksek eşzamanlılıkta çalışan bir randevu optimizasyon mimarisi geliştirdim. Aynı kaynağa aynı anda gelen iki talebin arasından sızmayan bir doğruluk garantisi, bu tür ürünlerde pazarlık konusu değil.

Altyapı ve performans

  • Laravel backend'ini PostgreSQL ve Redis kuyruklarıyla optimize ederek trafik sıçramalarını karşıladım.
  • Push, SMS, e-posta ve WhatsApp bildirimlerini asenkron hale getirdim; bildirim gecikmesi artık istek süresine yansımıyor.
  • Sentry'yi üretim izleme için entegre ettim; darboğazları ve hataları kullanıcı bildirmeden önce görüyoruz.

Uygulama katmanı

Finansal takip ve raporlama modüllerini, online ödeme entegrasyonlarını REST API'ler üzerinden sıfırdan kurdum. Web ve mobil uygulamaları Next.js, React ve Tailwind CSS ile geliştirdim; durum yönetimini Redux Toolkit ile merkezileştirerek iki istemcinin aynı iş kurallarını paylaşmasını sağladım.