SRE Mühendisi: Görevleri, Becerileri ve Kariyer Yolu
Meslek rehberi

SRE Mühendisi: Görevleri, Becerileri ve Kariyer Yolu

Hazırlayan: Mindset Institute EditörlüğüGüncellendi: 5 dk okuma

SRE mühendisi, yazılım mühendisliği yöntemleriyle sistemlerin güvenilirliğini sağlar. Görevleri, becerileri ve nasıl olunacağını öğrenin.

SRE mühendisi nedir?

SRE (Site Reliability Engineering), sistemlerin güvenilirliğini yazılım mühendisliği yöntemleriyle ele alan bir yaklaşımdır; SRE mühendisi de bu yaklaşımı uygulayan kişidir. Temel fikir, güvenilirliği yalnızca operasyon ekibinin işi olarak görmek yerine ölçülebilir hedeflere bağlamak ve tekrarlayan manuel işleri otomasyonla azaltmaktır.

Yaklaşım, Google'ın kendi sistemlerini işletirken geliştirdiği pratiklerden doğmuştur. SRE mühendisi hem kod yazar hem de canlı sistemlerin işletimini üstlenir; bu iki alan arasında bir köprü kurar. Site güvenilirlik mühendisi Türkçedeki karşılığıdır.

Görevler ve sorumluluklar

SRE mühendisinin işleri şu başlıklarda toplanır:

  • Servis düzeyi göstergeleri (SLI) ve hedefleri (SLO) tanımlamak, ürün ekipleriyle hata bütçesi üzerinde anlaşmak
  • Gözlemlenebilirlik kurmak: Metrik, log ve izleme sistemleriyle sorunları hızla teşhis edilebilir kılmak
  • Olay yönetimine katılmak: Kesintilerde müdahale etmek, iletişimi yönetmek
  • Olay sonrası inceleme yapmak: Suçlayıcı olmayan postmortem kültürüyle kök neden ve iyileştirme eylemleri çıkarmak
  • Toil'i, yani tekrarlayan manuel işleri otomasyonla azaltmak
  • Kapasite planlama ve trafik yönetimi yapmak
  • Yayın süreçlerinin güvenli olmasına katkı vermek

Bir iş gününden örnek

Örneğin bir e-ticaret platformunda çalışan SRE mühendisi güne, gece yaşanan kısa bir yavaşlamanın izlerini inceleyerek başlar. Gözlemlenebilirlik panolarında bir veritabanı bağlantı havuzunun dolduğunu görür; ilgili uyarının neden geç tetiklendiğini araştırır.

Öğleden sonra ekiple olay sonrası incelemeyi yürütür; amaç kişiyi suçlamak değil, sistemin neden bu hataya izin verdiğini anlamaktır. Kalan zamanını, her hafta elle yapılan bir ölçekleme işini otomatik hale getiren betik yazmaya ayırır. Bu örnekte rolün ikili yapısı, yani operasyon ve yazılım geliştirme, açıkça görülür.

Bir olay anında SRE mühendisi ne yapar?

Canlı sistemde bir kesinti başladığında SRE mühendisi önce etkiyi sınırlar: son yayını geri almak, trafiği sağlıklı bölgeye yönlendirmek ya da hatalı bileşeni devre dışı bırakmak gibi hızlı önlemler, kök nedeni bulmaktan önce gelir. Aynı anda olay kanalında kimin ne yaptığını kayda alır ve ilgili ekiplerle iş birimlerine düzenli durum bilgisi verir.

Olay kapandıktan sonra asıl uzun vadeli iş başlar. Zaman çizelgesi çıkarılır, tetikleyen etken ile onu görünür kılmayan boşluklar ayrı ayrı yazılır, iyileştirme eylemleri sahiplerine atanır ve ilerlemeleri izlenir. Aynı hatanın tekrar etmemesi, kimin hata yaptığından çok sistemin hatayı nasıl mümkün kıldığına bağlıdır.

Nöbet düzeni de olay yönetiminin parçasıdır. Nöbetçi mühendisin elinde, hangi uyarıda hangi adımların izleneceğini anlatan güncel çalışma kılavuzları bulunması gerekir; kılavuz eksikse her olay sıfırdan keşfe dönüşür ve müdahale süresi uzar.

Gereken beceriler

Yazılım geliştirme becerisi önemlidir; otomasyon yazabilmek ve sistem davranışını koddan anlayabilmek gerekir. Linux, ağ, bulut altyapısı ve konteyner teknolojileri temel bilgilerdir.

Gözlemlenebilirlik araçları, metrik ve alarm tasarımı ile olay yönetimi becerisi günlük işin parçasıdır. Hata bütçesi ve risk yönetimi gibi kavramlarla iş hedeflerini teknik kararlarla ilişkilendirmek de gerekir. Kültürel olarak suçlamayan, öğrenmeye dönük bir tutum, rolün etkin yürümesi için şarttır.

SRE uygulamasında sık yapılan hatalar

İlk hata, hedefi gerçek kullanıcı deneyiminden değil, kolay ölçülen bir metrikten seçmektir. Sunucu işlemci kullanımı iyi görünürken kullanıcı hata alıyorsa SLO yanlış şeyi ölçüyordur. İkinci hata, hata bütçesini cezalandırma aracına çevirmektir; amaç ekipleri suçlamak değil, yayın hızı ile güvenilirlik arasında ortak bir karar zemini kurmaktır.

Üçüncü hata, alarm sayısını artırmayı gözlemlenebilirlik sanmaktır. Her gün çok sayıda gereksiz uyarı alan nöbetçi, gerçek uyarıyı kaçırır. Uyarıların kullanıcıyı etkileyen belirtilere bağlanması ve gürültülü kuralların ayıklanması gerekir. Dördüncü hata, postmortem eylemlerini kapatmadan yeni işe geçmektir; yazılan iyileştirmeler uygulanmazsa kültür yalnızca belge üretir.

SRE mühendisi nasıl olunur?

Birçok SRE bilgisayar mühendisliği ya da yazılım geçmişinden gelir; sistem yönetimi, DevOps veya yazılım geliştirmeden SRE'ye geçiş de yaygındır. Zorunlu bir sertifika bulunmaz.

Öğrenme sırası: önce Linux, ağ ve bir betik dili ya da Python gibi bir programlama dilini öğrenin. Ardından bulut ve konteyner altyapısına, sonra gözlemlenebilirlik araçlarına geçin. SLI, SLO ve hata bütçesi kavramlarını öğrenip küçük bir servis için hedef tanımlayın; son olarak olay yönetimi ve postmortem pratiğini çalışın.

Pratik için kendi küçük projenizi izlemek iyi bir başlangıçtır: basit bir web servisi ayağa kaldırın, yanıt süresi ve hata oranı metriklerini toplayın, bir hedef belirleyin ve hedefi aşan bir arızayı bilerek tetikleyip uyarının ne zaman geldiğini gözleyin. Ardından aynı olay için kısa bir olay sonrası inceleme yazmak, hem teknik hem de iletişim tarafını birlikte çalıştırır. Bu tür bir portföy, mülakatta soyut kavramlardan daha somut bir konuşma zemini sağlar.

Yakın rollerle farkı

DevOps mühendisi yazılımın geliştirme ve yayın hattını hızlandırmaya, otomasyon ve sürekli teslimat uygulamalarına odaklanır; SRE mühendisi ise canlı sistemin güvenilirliğini ölçülebilir hedeflere bağlar. İki rol birçok kurumda iç içe çalışır.

Sistem yöneticisi altyapının günlük işletimini yürütür; SRE aynı işi otomasyon ve mühendislik yaklaşımıyla yapar. Platform mühendisi ise geliştiricilerin kullandığı iç altyapı ürünlerini inşa eder.

Mindset programlarında nerede çalışırsınız?

Mindset'in Site Reliability Engineering (SRE) Pratikleri programı; SRE felsefesi ve Google modeli, SLI SLO SLA çerçevesi, gözlemlenebilirlik ve teşhis, incident yönetimi, blameless postmortem kültürü, toil azaltma ve otomasyon, kapasite planlama ve SRE ekip modeli başlıklarını içerir.

SRE Kültürü programı ise SRE'nin neden farklı olduğunu, servis düzeyi hedeflerini, hata bütçesi ve risk yönetimini, olay yönetimini, toil azaltma stratejisini ve SRE kültürünü kurumsallaştırmayı ele alır.

İlgili Mindset programı

Site Reliability Engineering (SRE) Pratikleri

Sık sorulanlar

Sık sorulan sorular

SRE ile DevOps aynı şey mi?

Hayır. DevOps, geliştirme ve operasyonu birleştiren kültürel bir yaklaşımdır. SRE ise güvenilirliği ölçülebilir hedeflerle yöneten, bu yaklaşımın belirli bir uygulamasına benzeyen mühendislik disiplinidir. DevOps ekibi yayın hattının hızına, SRE ekibi ise canlı servisin hedeflenen güvenilirlik düzeyinde kalmasına odaklanır. Pratikte birbirini tamamlarlar.

SLI, SLO ve hata bütçesi ne demektir?

SLI, servisin ölçülen kalite göstergesidir; örneğin başarılı yanıt oranı ya da yanıt süresi. SLO, bu gösterge için konulan hedeftir. Hata bütçesi ise hedefin ne kadar aşılabileceğini gösteren paydır. Bütçe tükenmeye yaklaştığında ekip yeni özellik yayınlamak yerine güvenilirlik çalışmasına yönelir; böylece yenilik hızı ile güvenilirlik arasında denge kurulur.

Toil nedir?

Toil, elle yapılan, tekrarlayan, otomatikleştirilebilir ve kalıcı değer üretmeyen operasyonel işlerdir; örneğin her hafta elle yapılan bir ölçekleme ya da aynı uyarıya verilen aynı manuel müdahale. SRE mühendisleri bu işleri otomasyonla azaltarak zamanlarını kalıcı iyileştirmelere ayırmayı hedefler.

SRE olmak için yazılım bilmek şart mı?

Evet, rol otomasyon ve sistem davranışını koddan anlamayı gerektirir. Çok derin bir uygulama geliştirme birikimi şart olmasa da güçlü bir betik ve programlama temeli beklenir. Pratikte bir servis için izleme kuralı, otomatik ölçekleme betiği ya da dağıtım hattı düzeltmesi yazabilmek, günlük işin doğal parçasıdır.

SRE Mühendisi Nedir, Ne İş Yapar? | Mindset