DevOps mühendisi kimdir, ne iş yapar, ne kadar kazanır ve nasıl olunur?

DevOps mühendisleri, süreçlerin nasıl otomatikleştirileceğini ve geliştiricilerin, QA'nın ve yöneticilerin nasıl çalıştığını bilen çok disiplinli uzmanlardır. Nasıl programlanacağını biliyorlar, karmaşık araçlarda hızlı bir şekilde ustalaşıyorlar ve alışılmadık bir görevle karşılaştıklarında kayıpta kalmıyorlar. Çok az DevOps mühendisi var - onlara 200-300 bin ruble ödemeye hazırlar, ancak hala çok sayıda boş pozisyon var.

Dmitry Kuzmin, DevOps'un tam olarak ne yaptığını ve böyle bir pozisyona başvurmak için neleri incelemeniz gerektiğini açıklıyor. Bonus - kitaplara, videolara, kanallara ve profesyonel topluluğa önemli bağlantılar.

DevOps mühendisi ne iş yapar?

DevOps durumunda terimleri karıştırmamak önemlidir. Gerçek şu ki DevOps belirli bir faaliyet alanı değil, profesyonel bir felsefedir. Geliştiricilerin, test uzmanlarının ve sistem yöneticilerinin otomasyon ve kusursuzluk yoluyla daha hızlı ve verimli çalışmasına yardımcı olan bir metodolojidir.

Buna göre DevOps mühendisi, bu metodolojiyi iş sürecine uygulayan bir uzmandır:

  • Planlama aşamasında bir DevOps mühendisi, uygulamanın hangi mimariyi kullanacağına, nasıl ölçekleneceğine ve bir orkestrasyon sistemi seçeceğine karar verilmesine yardımcı olur.
  • Daha sonra sunucuları kurar, kodun otomatik olarak kontrol edilmesi ve yüklenmesini sağlar ve ortamı kontrol eder.
  • Daha sonra testleri otomatikleştirir ve dağıtım sorunlarını çözer.
  • Yayınlandıktan sonra kullanıcılardan geri bildirim toplamak ve iyileştirmeleri uygulamak önemlidir. DevOps, kullanıcıların bu iyileştirmeleri fark etmemesini ve güncelleme sürecinin sürekli olmasını sağlar.
  • Ve aynı zamanda geliştiricilerin, QA'nın, sistem yöneticilerinin ve yöneticilerin çalışma sistemini iyileştirmeye yardımcı olan onlarca sorunu çözer.

Yukarıda yazılanların hepsi ideale yakın projelerde oluyor. Gerçek dünyada planlamanın kaçırıldığı, mimarisinin yanlış olduğu ve tüm projeler durduğunda otomasyonu düşünmeye başladığınız bir projeye başlamak zorundasınız. Tüm bu sorunları anlamak, çözmek ve her şeyin çalışmasını sağlamak bir DevOps uzmanının temel becerisidir.

Yetenek piyasasında kafa karışıklığı var. Bazen bir işletme, sistem mühendisi, inşaat mühendisi veya başka biri pozisyonu için DevOps mühendisleri arıyor. Sorumluluklar şirketin büyüklüğüne ve yönüne göre de değişir; bir yerde danışmanlık yapacak birini arıyorlar, bir yerde her şeyi otomatikleştirmeleri isteniyor ve bir yerde programlamayı bilen bir sistem yöneticisinin ileri düzey işlevlerini yerine getirmeleri gerekiyor.

Mesleğe başlamak için gerekenler

Mesleğe girmek ön hazırlık gerektirir. BT hakkında hiçbir şey anlamadan, sıfırdan ders alıp, alt seviyeye kadar öğrenemezsiniz. Gerekli teknik altyapı:

  • Altı ay veya daha uzun süre sistem yöneticisi, operasyon veya test uzmanı olarak çalışıyorsanız idealdir. Veya en azından uygulamaların nasıl başladığı, hangi ortamda geliştirilebileceği, hata görüldüğünde ne yapılması gerektiği konusunda fikir sahibi olun. Eğer iş tecrübeniz yoksa, Linux yönetimi ile ilgili herhangi bir kursa katılın ve evinizdeki makinede olup biten her şeyi tekrar edin.
  • Ağ teknolojilerinin nasıl çalıştığını anlayın - yerel ve geniş alan ağlarını kurmayı, yapılandırmayı ve yönetmeyi öğrenin.
  • Programlamanın nasıl ve hangi işe yaradığını görün - Python veya Go'da birkaç komut dosyası yazın, OOP (Nesne Yönelimli Programlama) ilkelerini anlamaya çalışın, genel ürün geliştirme döngüsü hakkında bilgi edinin.
  • Teknik İngilizce bilgisi faydalı olacaktır - ücretsiz konularda iletişim kurmaya gerek yoktur, belgeleri ve arayüzleri okuyabilmek yeterlidir.

Listelenen her şeyi ayrıntılı olarak bilmenize gerek yok; DevOps öğrenmeye başlamak için minimum düzeyde eğitim yeterlidir. Eğer böyle bir teknik altyapınız varsa kurslara kaydolmayı deneyin.

DevOps'un bilmesi gerekenler

İyi bir DevOps mühendisi, çok geniş bir bakış açısına sahip, multidisipliner bir uzmandır. Başarılı bir şekilde çalışmak için aynı anda birden fazla BT alanını anlamanız gerekecektir.

Gelişme

DevOps, geliştiricilerin sunucuya kod yüklemesine yardımcı olacak bir komut dosyası yazacaktır. Veritabanlarının yanıt verebilirliğini "anında" test eden bir program oluşturacak. Sürüm kontrolü için bir uygulama yazacağım. Son olarak, sunucuda ortaya çıkabilecek olası bir geliştirme sorununu fark edin.

Güçlü bir DevOps uzmanı, otomasyona uygun birçok dili bilir. Bunları tam olarak anlamıyor ama hızlı bir şekilde küçük bir program yazabiliyor veya bir başkasının kodunu okuyabiliyor. Daha önce geliştirmeyle hiç karşılaşmadıysanız Python'la başlayın; basit bir sözdizimine sahiptir, bulut teknolojileriyle çalışmak kolaydır ve çok sayıda belge ve kitaplık vardır.

İşletim sistemleri

Her sistemin her versiyonunun tüm yeteneklerini bilmek imkansızdır; bu tür bir eğitime binlerce saat harcayabilirsiniz ve bunun hiçbir faydası olmaz. Bunun yerine iyi bir DevOps, herhangi bir işletim sistemi üzerinde çalışmanın genel ilkelerini anlar. Ancak boş pozisyonlardaki sözlere bakılırsa çoğunluk artık Linux'ta çalışıyor.

İyi bir mühendis, bir projeyi hangi sistemde dağıtmanın en iyi olduğunu, hangi araçların kullanılacağını ve uygulama veya operasyon sırasında hangi potansiyel hataların ortaya çıkabileceğini anlar.

bulutlar

Bulut teknolojisi pazarı büyüyor yılda ortalama %20-25 oranında - böyle bir altyapı, kodu test etme, uygulamaları bileşenlerden birleştirme ve kullanıcılara güncelleme sunma işlemlerini otomatikleştirmenize olanak tanır. İyi bir DevOps, hem tamamen bulut hem de hibrit çözümleri anlar.

Mühendisler için standart gereksinimler genellikle GCP, AWS ve Azure'u içerir.

Buna CI/CD araçlarındaki yeterlilik de dahildir. Tipik olarak Jenkins sürekli entegrasyon için kullanılır, ancak analogları denemeye değer. Birçoğu var, örneğin Buddy, TeamCity ve Gitlab CI. Terraform'u incelemek faydalı olacaktır - bulutlardaki altyapıyı uzaktan kurmanıza ve yapılandırmanıza yardımcı olan bildirim tabanlı bir araçtır. VE Otomatik olarak işletim sistemi görüntüleri oluşturmak için gerekli olan Packer.

Düzenleme sistemleri ve mikro hizmetler

Mikro hizmet mimarisinin birçok avantajı vardır: kararlılık, hızlı ölçeklendirme yeteneği, basitleştirme ve yeniden kullanım. DevOps, mikro hizmetlerin nasıl çalıştığını anlar ve olası sorunları tahmin edebilir.

Docker ve Kubernetes'i iyice biliyor. Konteynerlerin nasıl çalıştığını, bir bütün olarak sistemin geneli açısından herhangi bir sonuç doğurmadan bazılarını devre dışı bırakabileceğiniz bir sistemin nasıl oluşturulacağını anlar. Örneğin Ansible'ı kullanarak bir Kubernetes kümesi oluşturabilir

Gelecekteki DevOps'un başka neleri denemesi gerekiyor?

Bir DevOps mühendisi için faydalı olabilecek araçların listesi sonsuzdur. Bazıları proje orkestrasyonu üzerinde çalışır, diğerleri zamanlarının çoğunu dağıtım ve testleri otomatik hale getirmeye harcar, diğerleri ise yapılandırma yönetimindeki verimliliği artırır. Süreç içerisinde nereye kazılacağı ve hangi projelerin faydalı olacağı netleşecek.

İşte başlangıçta yardımcı olacak başka bir küçük minimum:

  • Henüz yapmadıysanız Git ve Github'un nasıl çalıştığını anlayın. GitLab'ı sunucunuza yükleyin.
  • JSON ve YAML işaretleme dillerini öğrenin.
  • Yalnızca MySQL'i değil, aynı zamanda NoSQL'i de veritabanlarına kurun ve çalışmayı deneyin. MongoDB'yi deneyin.
  • Birden fazla sunucunun yapılandırmasını aynı anda nasıl yöneteceğinizi öğrenin. Örneğin, Ansible'ı kullanmak.
  • Yük izlemeyi ve günlükleri hemen kurun. Prometheus, Grafana, Alertmanager kombinasyonunu deneyin.
  • Farklı diller için dağıtıma yönelik en iyi çözümleri arayın; yalnızca bunları bir eğitim veya çalışma projesinde tanımanız, uygulamanız ve anlamanız yeterlidir.

Neden DevOps'u öğrenmeye şimdi başlamalısınız?

DevOps mühendisleri için piyasada personel sıkıntısı var. Bu, boş pozisyonların miktarı ve kalitesi ile şartlı olarak onaylanır:

  • Rusya'da, yalnızca HeadHunter'da bu anahtar kelime için sürekli olarak 2 binden fazla iş mevcuttur.
  • Ve yalnızca 1 kişi özgeçmişini yayınladı.

Özgeçmiş göndermenin aktif olarak iş aramak anlamına gelmediği göz önüne alındığında, bir uzman için iki hatta üç boş pozisyon olduğu ortaya çıkıyor - bu durum popüler web geliştirme pazarında bile mevcut değil. Buraya Habr ve Telegram kanallarından daha fazla boş pozisyon ekleyin - uzman sıkıntısı çok büyük.

DevOps mühendisi kimdir, ne iş yapar, ne kadar kazanır ve nasıl olunur?
Başvuranların maaş gereksinimlerine dikkat edin

DevOps'a dünyada daha az talep yok - ABD'ye veya Avrupa'ya taşınacaksanız, o zaman yalnızca portalda Glassdoor 34 binden fazla şirket bu tür uzmanları arıyor. Sık aranan gereksinimler arasında 1-3 yıllık deneyim, bulutlarla çalışma becerisi ve danışmanlık işlevlerinden korkmama yer alır.

Serbest çalışma için çok daha az teklif var - DevOps mühendisleri esas olarak personel ve tam zamanlı pozisyonlar arıyor.

DevOps mühendisi kimdir, ne iş yapar, ne kadar kazanır ve nasıl olunur?
Uygun bir freelance proje bulmak zor ama mümkün

Bir DevOps mühendisinin geleneksel kariyer yolu şöyle hayal edilebilir:

  • Altı aydan bir yıla kadar küçük bir bilişim şirketinde sistem yöneticisi olarak çalışıyor. Aynı zamanda otomasyona uygun bir dil üzerinde de çalışıyor.
  • Yaklaşık altı ay boyunca yoğun bir şekilde kurslara çalışıyor.
  • Başka bir işe geçer - büyük projelerin geliştiricilerine bulut çözümleri satan bir şirkete, büyük bir şirketin şubesine. Basitçe söylemek gerekirse, sürekli otomasyona ve uygulamaya ihtiyaç duyulan yerde. Başlangıç ​​​​pozisyonunda yaklaşık 100 bin ruble.
  • Birkaç yıldır aktif olarak çalışıyor ve okuyor, gelirini birkaç kat artırıyor.
  • Profesyonel toplulukta uzman olur ve danışmanlığa geçer. Veya bir sistem mimarı veya BT yöneticisine dönüşür.

DevOps zordur. Birkaç mesleğin becerilerini aynı anda birleştirmeniz gerekiyor. Diğer BT uzmanlarının başka hiçbir şeyi düşünmediği bir yerde, iyileştirme sunmaya hazır bir kişi olun. Bunun için çok para ödüyorlar ama aynı zamanda büyük miktarda bilgiye de ihtiyaç duyuyorlar.

DevOps ne kadar kazanıyor?

2019'un ikinci çeyreğine ait verilere göre devops'ların ortalama ortalama maaşı 90 ila 160 bin ruble arasında. Daha ucuz teklifler var - çoğunlukla 60-70 bin.

Sürekli 200 bine varan teklifler var ve maaşı 330 bin rubleye varan boş pozisyonlar var.

DevOps mühendisi kimdir, ne iş yapar, ne kadar kazanır ve nasıl olunur?
Operasyon profesyonelleri arasında DevOps'a diğerlerinden daha yüksek ücret ödeniyor. Kaynak: Habr.Kariyer

Yeni başlayanlar da dahil olmak üzere DevOps mühendislerine artık büyük bankalarda, şirketlerde, bulut hizmetlerinde, ticaret sistemlerinde ve BT çözümlerinin bakımıyla ilgilenen diğer kuruluşlarda ihtiyaç duyulmaktadır.

60-90 bin maaşlı bir genç pozisyon için mükemmel bir aday, yaklaşık bir yıllık deneyime ve uzmanlık diplomasına sahip yeni başlayan bir sistem yöneticisi olacaktır.
 
DevOps mühendisi kimdir, ne iş yapar, ne kadar kazanır ve nasıl olunur?
Böyle bir istatistik yok ama görünen o ki Linux deneyimi olan kişilere daha fazla maaş veriliyor

Mesleğinizde gelişmek için ne izlemeli ve okumalısınız?

DevOps dünyasına dalmak için çeşitli bilgi kaynaklarını deneyin:

  • Bulut Yerel Bilgi İşlem Vakfı [YouTube, ENG] - konferanslardan ve eğitici web seminerlerinden çok sayıda video.
  • DevOps Kanalı [YouTube, RUS] - Rusya'daki profesyonel DevOps konferansından video raporları.
  • DevOps El Kitabı [kitap, RUS] DevOps felsefesiyle ilgili en popüler kitaplardan biridir. Kitapta metodolojinin genel prensipleri yer alıyor, herhangi bir proje üzerinde çalışırken öncelikle nelere dikkat edilmesi gerektiğini anlatıyor.
  • Thomas Limoncelli "Sistem ve Ağ Yönetimi Uygulaması" [kitap, RUS] - sistem yönetiminin nasıl yapılandırılması gerektiğine dair birçok teori ve ilke.
  • Haftalık Devops [kitap, TR] - Dünya çapında DevOps'ta olup bitenlerle ilgili haberlerin haftalık incelemesi.
  • Devops_deflope [Telegram, RUS] - sektör haberleri, konferans duyuruları, yeni ilginç makale ve kitaplara bağlantılar.
  • Devops_ru [Telegram, RUS] - Tavsiye isteyebileceğiniz ve yapılandırmalarla ilgili yardım isteyebileceğiniz Rusça sohbet.
  • Devops.com, sektördeki en büyük şirketlerin makalelerini, web seminerlerini, podcast'lerini ve köşe yazılarını içeren büyük bir uluslararası sitedir.
  • Hangops_Ru — DevOps mühendislerinden ve sempatizanlarından oluşan Rusça konuşan topluluk.
  • Gelişim için kullanacağınız dil için en iyi kitaplar.

DevOps'u nerede öğrenmeli?

Kursla ilgili yapılandırılmış bilgi alabilirsiniz "DevOps mühendisi" Netolojide. Metodolojinin tüm döngüsünü öğreneceksiniz:

  • Kodu nasıl analiz edeceğinizi ve sürüm kontrol araçlarını hızla nasıl kullanacağınızı öğrenin.
  • Sürekli entegrasyon, test etme ve oluşturmaya yönelik en iyi uygulamaları anlayın.
  • Uygulama değişikliklerini yönetmeyi ve otomatikleştirmeyi öğrenin.
  • Yapılandırma ve yönetim araçlarıyla pratik yapın.
  • İzleme için gerekli hizmetleri hemen seçmeye ve yapılandırmaya alışın.

Bonus olarak Python programlama kursu alın; sorunları daha hızlı ve daha kolay çözeceksiniz. Her şey pratiktir; AWS, GCP veya Azure kullanıyoruz.
Bu, acemi bir mühendisi veya sistem yöneticisini aranan bir DevOps'a dönüştürmek ve işgücü piyasasındaki fiyat etiketinizi hoş bir şekilde yükseltmek için yeterlidir.

DevOps mühendisi kimdir, ne iş yapar, ne kadar kazanır ve nasıl olunur?

Kaynak: habr.com

Yorum ekle