İçeriğe atla
Makale

DevOps Nedir? DevOps Mühendisi Ne Yapar, Nasıl Ölçülür?

DevOps'un tanımını ve kökenini, temel uygulamalarını, DORA'nın beş teslim metriğini, DevSecOps'u, SRE ile farkını ve yapay zekânın etkisini anlattık.

Oğuzhan Gerçek··7 dk okuma
DevOps Nedir? DevOps Mühendisi Ne Yapar, Nasıl Ölçülür?

Kısa cevap: DevOps, yazılım geliştirme (Dev) ile BT operasyonunu (Ops) aynı hedefte birleştiren kültür, uygulama ve araçların bütünüdür; amaç, uygulamaları hızlı ve güvenilir biçimde teslim edip işletmektir. Pratikte küçük ve sık değişiklik, CI/CD ile otomatik test ve dağıtım, altyapının kodla yönetimi ve sürekli izleme demektir. Teslim performansı DORA'nın beş metriğiyle ölçülür: değişikliğin teslim süresi, dağıtım sıklığı, başarısız dağıtımdan kurtarma süresi, değişiklik hata oranı ve yeniden çalışma oranı. DevOps mühendisi ise içeriği kurumdan kuruma değişen, genellikle bu teslim hattını kuran ve işleten rolün adıdır.

DevOps nedir?

AWS'nin tanımıyla DevOps, bir kurumun uygulama ve hizmetleri yüksek hızda teslim etme yeteneğini artıran kültürel yaklaşımların, uygulamaların ve araçların birleşimi. Microsoft'a göre geliştirme, BT operasyonu, kalite mühendisliği ve güvenlik gibi eskiden birbirinden kopuk (silo) çalışan rolleri planlamadan işletmeye kadar bütün aşamalarda bir araya getirir. Google'ın SRE Workbook'u da DevOps'u BT geliştirme, operasyon, ağ ve güvenlik arasındaki siloları kırmayı amaçlayan gevşek bir uygulama, ilke ve kültür seti sayıyor.

Sözlüğümüzdeki tanımın da vurguladığı gibi DevOps bir araç değil, bir işleyiş modeli. DORA'nın 2014'teki ilk araştırması onu yalnız teknik uygulamalar değil, BT ve kurum performansını belirgin biçimde iyileştiren kültürel bir dönüşüm olarak tarif etmişti.

DevOps nereden çıktı?

Yazılım geliştirme ile BT operasyonlarının kesişimini konu alan devopsdays konferanslarının ilki, serinin kendi sayfasına göre 2009'da Belçika'nın Ghent şehrinde toplandı; kurucu olarak Patrick Debois adı geçiyor. Temmuz 2010'da John Willis, What DevOps Means to Me yazısında DevOps'u CAMS kısaltmasıyla özetledi: kültür (culture), otomasyon (automation), ölçüm (measurement) ve paylaşım (sharing).

Kültür, otomasyon, ölçüm ve paylaşım

Willis'in listesinde kültür başta gelir: önce insanlar ve süreç, kültür yoksa otomasyon girişimleri sonuçsuz kalır. Ölçüm için cümlesi kısa, ölçemediğinizi iyileştiremezsiniz; paylaşım ise döngüyü başa bağlayan halka.

DORA'ya göre güvenin yüksek olduğu ve bilgi akışını önemseyen bir kurum kültürü, yazılım teslim performansını öngörüyor. DORA, sosyolog Ron Westrum'un patolojik, bürokratik ve üretken (generative) kültür ayrımını kullanıyor ve olay sonrası incelemelerin suçlamasız (blameless) yapılmasını öneriyor. Olay anında sahipliği ve eskalasyonu yazıya dökmeyi Reliability Friday 03 yazımızda anlattık.

DevOps'un temel uygulamaları

  • Küçük ve sık değişiklik: AWS'ye göre sık ama küçük güncelleme her dağıtımın riskini düşürür.
  • CI/CD: Kodun sürekli birleştirilip otomatik test edilmesi ve her an production'a çıkabilecek durumda tutulması (CI/CD yazımız, Git yazımız).
  • Altyapının kodla yönetimi (IaC): AWS'nin tanımıyla altyapının kodla ve sürüm kontrolü, sürekli entegrasyon gibi tekniklerle kurulup yönetilmesi. Sürüklenmeyi (drift) Terraform ve Ansible yazımızda ele aldık.
  • İzleme ve gözlemlenebilirlik: DORA'ya göre izleme önceden tanımlanmış metrik ve logları toplar; gözlemlenebilirlik ise önceden tanımlanmamış desenleri keşfederek aktif hata ayıklamayı mümkün kılar (gözlemlenebilirlik yazımız).
  • Mikroservis ve container: AWS'ye göre mikroservis mimarisinde her servis kendi sürecinde çalışır ve ötekilerle genellikle HTTP tabanlı bir API üzerinden konuşur. Paketlemeyi Docker, çalıştırmayı Kubernetes yazımızda anlattık.

DevOps nasıl ölçülür? DORA'nın beş metriği

DORA'ya göre beş metrik teslim sürecinin sonuçlarını ölçer; kurum performansını ve ekip üyelerinin iyi oluşunu da öngörür:

  1. Değişikliğin teslim süresi (change lead time): Bir değişikliğin sürüm kontrolüne commit edilmesinden production'a deploy edilmesine kadar geçen süre.
  2. Dağıtım sıklığı (deployment frequency): Belirli bir dönemdeki deploy sayısı ya da iki deploy arasındaki süre.
  3. Başarısız dağıtımdan kurtarma süresi (failed deployment recovery time): Hemen müdahale gerektiren başarısız bir deploy'dan kurtulma süresi.
  4. Değişiklik hata oranı (change fail rate): Hemen müdahale gerektiren deploy'ların oranı.
  5. Dağıtım yeniden çalışma oranı (deployment rework rate): Production'daki bir olay yüzünden yapılan plansız deploy'ların oranı.

İlk üçü akışı (throughput), son ikisi kararsızlığı (instability) ölçer. Tarihçeye göre DORA 2014'te dört metrikle başladı; ortalama kurtarma süresi (MTTR) 2023'te başarısız dağıtımdan kurtarma süresine dönüştü, yeniden çalışma oranı 2024'te eklendi. DORA metriklerin uygulama ya da servis bazında kullanılmasını öneriyor; amaç ekipleri yarıştırmak değil, her ekibin kendini zamanla iyileştirmesi.

DevSecOps: güvenlik akışın içinde

AWS'nin ifadesiyle güvenlik DevOps ekibindeki herkesin odağı olduğunda buna bazen DevSecOps denir. Başvurulabilecek çerçevelerden biri NIST'in Şubat 2022 tarihli SP 800-218 belgesi, yani Secure Software Development Framework (SSDF) sürüm 1.1. NIST'e göre yazılım geliştirme yaşam döngüsü (SDLC) modellerinin çok azı güvenliği ayrıntılı ele alıyor. SSDF her SDLC'ye eklenebilecek üst düzey uygulamaları dört grupta topluyor, ama nasıl uygulanacaklarını dayatmıyor:

  • Kurumu hazırlamak (PO): İnsanlar, süreçler ve teknoloji güvenli geliştirmeye hazır olmalı.
  • Yazılımı korumak (PS): Bütün bileşenler kurcalamaya ve yetkisiz erişime karşı korunmalı.
  • İyi korunmuş yazılım üretmek (PW): Sürümlerde olabildiğince az açık kalmalı.
  • Açıklara karşılık vermek (RV): Kalan açıklar bulunup giderilmeli, benzerleri önlenmeli (yama yönetimi yazımız).

Sürüm 1.2, Aralık 2025'te taslak (SP 800-218 Rev. 1) olarak yoruma açıldı; yayın listesinde nihai sürüm hâlâ 1.1.

DevOps mühendisi ne yapar?

Unvanın içeriği kurumdan kuruma değişir. Google'ın SRE Workbook'u, SRE'yi "DevOps engineer" unvanına göre somut bir rol tanımına daha yakın buluyor. ABD Çalışma Bakanlığı'nın desteklediği meslek veritabanı O*NET de DevOps Engineer'ı ayrı bir meslek olarak değil, yazılım geliştiriciler (Software Developers, 15-1252.00) mesleğinde bildirilen unvanlardan biri olarak listeliyor. Pratikte bu unvan CI/CD pipeline'larını kurma, altyapıyı kodla tanımlama, container platformlarını işletme, izleme ve uyarıları kurma, güvenlik kontrollerini ve sır (secret) yönetimini hatta ekleme işlerini toplar.

İş büyüdükçe ortak araçları iç platform olarak sunan bir platform ekibi gündeme gelir; DORA platformu geliştiriciler için tasarlanmış bir iç ürün olarak tanımlıyor (platform mühendisliği yazımız). Bu işi hizmet olarak almak da mümkün: teslim hattını DevOps & CI/CD Enablement, iç platformu DevOps ve platform mühendisliği, günlük işletimi DevOps çözümleri hizmetimizde ele alıyoruz.

DevOps ile SRE arasındaki fark

Google'ın SRE kitabına göre SRE (Site Reliability Engineering), bir yazılım mühendisinden operasyon ekibi tasarlamasını istediğinizde ortaya çıkan şeydir; SRE Workbook'a göre terimi Ben Treynor Sloss türetti. Workbook ilişkiyi yazılımcı diliyle özetliyor: "class SRE implements interface DevOps", yani SRE, DevOps arayüzünün somut bir uygulaması. DevOps daha geniş bir felsefe ve kültür; SRE ise sorumlulukları görece dar tanımlı, servise ve son kullanıcıya odaklı bir uygulama.

Kitaba göre SRE ekibi servisin erişilebilirliğinden, gecikmesinden, performansından, verimliliğinden, değişiklik yönetiminden, izlenmesinden, acil müdahalesinden ve kapasite planlamasından sorumludur. Google, SRE'lerin bilet, nöbet ve elle yapılan işlerden oluşan operasyon yükünü %50 ile sınırlıyor; kalan zaman geliştirmeye ayrılıyor. Hata bütçesi, erişilebilirlik hedefinin birden çıkarılmasıyla bulunur: %99,9 hedefli bir serviste bütçe %0,1'dir (uptime yazımız).

Yapay zekâ DevOps'u nasıl etkiliyor?

DORA'nın 2025 raporu State of AI-assisted Software Development adını taşıyor. Raporun ana bulgusuna göre yapay zekânın asıl rolü güçlendirmek: kurumun var olan güçlü ve zayıf yönlerini büyütüyor. Araştırma özetine göre en büyük getiri, alttaki sosyoteknik sisteme odaklanmaktan geliyor. DORA'nın yetenek kataloğunda yapay zekâ etiketli yedi yetenek arasında sürüm kontrolü, küçük partilerle çalışmak, kullanıcı odaklılık ve platform mühendisliği gibi tanıdık konular var. Zayıf bir teslim akışında yapay zekâ sorunu çözmez, büyütür.

Sık sorulan sorular

DevOps ne demek? Development (geliştirme) ve operations (operasyon) sözcüklerinden türeyen bir ad; iki ekibi aynı hedefte birleştiren kültür, uygulama ve araçları anlatır.

DevOps mühendisi nedir, ne iş yapar? CI/CD pipeline'larını, altyapının kodla yönetimini, container platformlarını ve izlemeyi kuran ve işleten kişinin unvanı. Kapsamı kurumdan kuruma değişir.

DevOps ile Agile arasındaki fark nedir? Microsoft'a göre Agile, ekip iş birliğini, müşteri ve kullanıcı geri bildirimini, kısa sürüm döngüleriyle değişime uyumu öne çıkaran bir geliştirme yaklaşımı. DevOps ise değişikliklerin production'a ulaşmasını ve işletilmesini de kapsar.

DORA metrikleri nelerdir? Değişikliğin teslim süresi, dağıtım sıklığı, başarısız dağıtımdan kurtarma süresi, değişiklik hata oranı ve dağıtım yeniden çalışma oranı.

DevSecOps nedir? Güvenliğin son aşamadaki ayrı bir kontrol olmaktan çıkıp DevOps ekibindeki herkesin sorumluluğu hâline gelmesi.

Kaynaklar