Senior Full Stack Developer – Backend Focused (Remote)
Ekibimize, ağırlıklı olarak backend geliştirme tarafında çalışacak, gerektiğinde frontend geliştirmeye de katkı sağlayabilecek Senior Full Stack Developer arıyoruz.
Birden fazla aktif ürün ve canlı sistem üzerinde çalışıyoruz. Bu nedenle yalnızca teknik bilgi değil, gerçek production ortamında çalışan projeler geliştirmiş ve işletmiş olma deneyimi bizim için önemli.
Pozisyon Hakkında
Bu rolde yüksek trafikli, ölçeklenebilir ve uzun vadede sürdürülebilir sistemlerin geliştirilmesinde aktif rol alacaksınız.
Backend geliştirme pozisyonun ana odağı olacak. Bununla birlikte ürün geliştirme süreçlerinde gerektiğinde frontend tarafında da katkı sağlamanızı bekliyoruz.
Sadece verilen task'ları tamamlayan değil; mimari kararları sorgulayabilen, alternatifler önerebilen, production problemlerini analiz edebilen ve geliştirdiği servisin sorumluluğunu alabilen bir ekip arkadaşı arıyoruz.
Sorumluluklar
- Node.js / TypeScript tabanlı backend servislerinin geliştirilmesi
- REST API ve servisler arası iletişim mimarilerinin tasarlanması
- Microservice architecture içerisinde yeni servislerin geliştirilmesi ve mevcut servislerin iyileştirilmesi
- Senkron ve asenkron servis iletişiminin doğru şekilde tasarlanması
- Database modellerinin ve veri akışlarının tasarlanması
- Performans ve ölçeklenebilirlik problemlerinin analiz edilmesi
- Production ortamında oluşabilecek problemlerin root-cause analizlerinin yapılması
- Logging, monitoring ve observability süreçlerinin iyileştirilmesi
- Unit, integration ve gerektiğinde E2E testlerin geliştirilmesi
- Code review süreçlerine aktif katılım
- Teknik borcun azaltılması ve mevcut sistemlerin refactor edilmesi
- Gerektiğinde React tabanlı frontend uygulamalarına katkı sağlanması
- Product, QA, Platform ve diğer development ekipleriyle birlikte çalışılması
- Teknik kararların ve mimari tercihlerin ekip içerisinde paylaşılması
Aradığımız Teknik Deneyim
- Minimum 5+ yıl profesyonel software development deneyimi
- Güçlü Node.js ve TypeScript bilgisi
- Tercihen NestJS ile production seviyesinde proje deneyimi
- Microservice architecture konusunda gerçek proje deneyimi
- REST API tasarımı konusunda güçlü bilgi
- SQL ve/veya NoSQL database deneyimi
- PostgreSQL / MySQL / MongoDB gibi veritabanlarından en az biriyle güçlü çalışma deneyimi
- Redis veya benzeri caching teknolojileriyle deneyim
- Message broker ve asynchronous architecture konusunda bilgi ve deneyim
- Kafka, RabbitMQ veya benzeri sistemlerden en az biriyle çalışma deneyimi
- Docker konusunda güçlü bilgi
- CI/CD süreçleri hakkında deneyim
- Git tabanlı profesyonel development workflow deneyimi
- Clean Code, SOLID ve yaygın software design pattern'leri hakkında güçlü bilgi
- Testing stratejileri konusunda deneyim
Production Deneyimi
Bu pozisyon için özellikle canlıda çalışan gerçek projelerde deneyim arıyoruz.
Adayın aşağıdaki konularda tecrübe sahibi olmasını bekliyoruz:
- Production ortamına deployment yapmış olmak
- Gerçek kullanıcıların kullandığı sistemlerde çalışmış olmak
- Production bug ve incident çözmüş olmak
- Performance bottleneck analizi yapabilmek
- Database ve API performans problemlerini analiz edebilmek
- Log ve monitoring araçları üzerinden problem araştırabilmek
- Yük altında çalışan sistemlerin nasıl ölçekleneceğini bilmek
- Service failure, timeout, retry ve partial failure senaryolarını anlayabilmek
- Backward compatibility ve güvenli deployment prensiplerini bilmek
Sadece eğitim, tutorial, demo veya kişisel projeler üzerinden edinilmiş microservice bilgisi bu pozisyon için yeterli değildir.
Microservice Architecture Konusunda Beklentimiz
Adayın sadece "microservice kullandım" demesinden ziyade aşağıdaki konuları anlayabilmesini bekliyoruz:
- Service boundaries
- Synchronous vs asynchronous communication
- Event-driven architecture
- Message queues
- Retry strategies
- Idempotency
- Eventual consistency
- Distributed transactions
- Circuit breaker
- Service discovery
- API Gateway / Reverse Proxy
- Rate limiting
- Caching
- Horizontal scaling
- Distributed logging
- Metrics & monitoring
- Failure handling
- Database-per-service yaklaşımı
- Microservice sistemlerinde debugging
Frontend
Pozisyon backend ağırlıklıdır ancak full stack bir profil arıyoruz.
Aşağıdaki konularda çalışma deneyimi tercih sebebidir:
- React
- TypeScript
- REST API entegrasyonu
- State management
- Component-based architecture
- Responsive web applications
Frontend tarafında uzmanlık seviyesinde olmanız beklenmemektedir; ancak gerektiğinde mevcut React uygulamalarında geliştirme yapabilecek seviyede olmanız önemlidir.
Artı Değer Katacak Deneyimler
Aşağıdaki teknolojilerden biri veya birkaçında deneyim avantaj sağlayacaktır:
- AWS / GCP
- Kubernetes
- Helm
- Terraform
- Elasticsearch / OpenSearch
- Redis
- Kafka
- RabbitMQ
- WebSocket
- GraphQL
- High-traffic systems
- SaaS ürün geliştirme
- Multi-tenant architecture
- Observability tools
- Distributed systems
- Security ve application security prensipleri
Senior Seviyeden Beklentimiz
Senior Developer olarak yalnızca kod yazmanızı değil;
- Bir problemin neden oluştuğunu araştırabilmenizi
- Bir requirement'ın teknik risklerini önceden görebilmenizi
- Mimari alternatifler sunabilmenizi
- Yazdığınız kodun production üzerindeki etkisini düşünebilmenizi
- Performans, maintainability ve scalability arasında doğru trade-off'ları yapabilmenizi
- Junior ve Mid-level geliştiricilere teknik destek sağlayabilmenizi
- Code review sırasında yalnızca syntax değil, mimari ve tasarım problemlerini de fark edebilmenizi
- Gerektiğinde bir feature veya servisin teknik sorumluluğunu uçtan uca alabilmenizi
bekliyoruz.
Çalışma Şekli
- Remote
- Full-time
- Uzun vadeli çalışma
- Aktif olarak geliştirilen ve gerçek kullanıcıları bulunan ürünler
- Modern microservice tabanlı sistemler
- Teknik kararlara katkı sağlayabileceğiniz bir çalışma ortamı
Başvuru
Başvurunuzda CV'nizin yanı sıra mümkünse aşağıdaki bilgileri de paylaşmanızı rica ediyoruz:
- Daha önce çalıştığınız canlı/production projeler
- Bu projelerdeki rolünüz ve sorumluluklarınız
- Kullandığınız backend teknolojileri
- Microservice architecture deneyiminiz
- Çalıştığınız sistemlerin yaklaşık trafik veya ölçek bilgileri
- GitHub / GitLab / portfolio bağlantınız varsa ilgili linkler
Not: Bu pozisyon için gerçek production proje deneyimi önemli bir değerlendirme kriteridir.