Korumalar ile self servis aracılığıyla geliştiricileri güçlendirin
Korumalarla self servis, geliştirme ekiplerini iyi tanımlanmış parametreler veya korumalar içinde kendi kararlarını almaları için güçlendirme ilkesidir. Korumalar önemli paydaşlar tarafından kurulur ve kabul edilir. Paydaşlar, kuruluş genelinde güvenlik, operasyon ve mimari ekiplerini içerebilir.
Korumalarla self servis sayesinde geliştirme ekipleri bağımsız olarak geliştirme kararları almak için özerkliği korur. Otomasyon ve ilke, paydaşların güvenlik, uyumluluk, operasyonlar, standartlar ve maliyetlerin düzgün yönetildiğinden emin olmalarını sağlar. Bu otomasyonun etkinleştirilmesi, geliştiricilerin, operatörlerin ve uzmanların gerekli idareden ödün vermeden daha fazlasını yapabilmesi için ekip hatları arasında işbirliği yapılmasını gerektirir. Geliştiriciler daha sonra iş değerini mümkün olan en kısa sürede sunmaya odaklanabilir.
[Geliştiricilere söylüyoruz], her şeyin nasıl çalıştığı konusunda endişelenmeyin, bunları açıp kapatmanız, doldurmanız, yapmanız gereken her şeye bir dize yerleştirmeniz yeterlidir ve bu temelde bir benioku dosyasının bulunduğu ve girdileri, çıkışları olan ve istedikleri her şeyi yerleştirebilecekleri self servistir. - Daniel, Bulut Mühendisi, Fortune 500 Media Company
Yollarınızın açılması için self servis deneyimi sağlamanın amacı geliştiricinin emeklerini azaltırken geliştirme ekiplerine, operasyonlara ve yönetime de görünürlük sağlamaktır. Fikir, temel otomasyon ve veri toplama özellikleri sayesinde minimum öğrenme eğrisine sahip belirli bir görev için bir deneyim oluşturmanızdır. Altyapı sağlama gibi etkinliklerin ötesinde bu deneyimler gözlemlenebilirlik, ilke, olay yönetimi ve daha fazlası için kritik özelliklere erişim sağlayabilir. Bu fikir iç API'leri, SDK'ları ve paylaşılan araçları ve hizmetleri bulma ve paylaşmaya kadar uzanır. Bu deneyimler, geliştirme ekiplerinin işleri halletmeye odaklanması için ek yükü azaltır.
İç geliştirici platformları, geliştiricileri dijital vitrin müşterileri gibi davranma konusunda güçlendiriyor
İç geliştirici platformları, işletmeler arası dijital vitrinlere benzer özellikler sağlar. Dijital mağazalar, müşterilerinin self servislerine yardımcı olmak için doğal olarak tasarlanmıştır. Herkesle konuşmak zorunda kalmadan ilgi çekici öğeleri bulmanın ve yerine getirmenin yollarını sağladığından, geleneksel mağaza cephelerinden daha fazla aktarım hızını işleyebilirler. Bu benzetme kullanılarak, geliştiriciler müşteridir ve iç geliştirici platformu benzer self servis deneyimler sağlar. Perakendeciler, operatörler, platform mühendisleri ve diğer rollere çok benzer şekilde geliştiricilerin isteyebileceği, kurumsal korumaları barındıracak şekilde tasarlanmış bir öğe kataloğu ayarlayın.
Örneğin, yeni bir aracıya erişim isteyen bir geliştiriciyi dijital vitrin siparişiymiş gibi düşünebilirsiniz. Bir sipariş gibi, istek gönderildikten sonra geliştirici ilerleme durumunu takip etmek ve ne zaman tamamlanır bilmek ister. Arka planda, isteğin ihtiyacı karşılamak için otomatik olarak doğru karşılama sağlayıcısına yönlendirilmesi gerekir. Sürekli tümleştirme ve teslim (CI/CD) sistemlerinizden birini tek bir karşılama sağlayıcısı, bir GitOps aracı veya açıklayıcı bir uygulama platformu olarak ikinci olarak ve el ile işlemler için iş akışı otomasyon aracı olarak üçüncü olarak düşünebilirsiniz. Her durumda, geliştirici iyi tanımlanmış bir katalogdaki öğeleri aynı şekilde self servis yapabilir.
Her şeyi kod deseni olarak kullanma
Sürekli teslim (CD) işlem hatları ve GitOps araçları aracılığıyla kod olarak altyapı (IaC) kullanmak self servis özelliğini etkinleştirmenin önemli bir parçasıdır. CD ile IaC, isteğe bağlı bulut kaynakları oluşturmak ve yok etmek için Bicep, Terraform, Helm grafiklerini ve diğer araçları kullanmanıza olanak tanır. Bulut altyapınızın yapılandırması bir kaynak kodu deposundaki kod gibi yönetildiğinden, git deposunun güvenlik ve denetlenebilirlik gibi tüm avantajlarını uygulayabilirsiniz.
IaC yaklaşımının tek avantajı ortak altyapı ve araçları sağlamak değildir. kod olarak güvenlik ve kod olarak ilke (Azure İlkesi ve İlke Aracısını Aç gibi araçlar aracılığıyla) dahil olmak üzere diğer senaryolar için kod deseni olarak uyarlayabilirsiniz. Bu tekniğin ardından, genellikle YAML veya JSON adlı bir yapılandırma dosyası depoya gönderilir ve bu noktada dosyayı işleyen bir iş akışı tetikler. Bu dosyalar dependabot.yml veya CODEOWNERS gibi bir uygulama deposu veya ayrı bir merkezi depoda tutulabilir. Hatta her şeyi kod olarak (EaC) gerçek bir hale getirmek için bunu kendi senaryolarınıza da genişletebilirsiniz.
Geliştiriciler, self servis deneyimlerinizi destekleyen ve varsayılan olarak en iyi yöntemleri teşvik eden merkezi bir katalogla bu EaC şablonlarının her birine başvurabilir.
Doğru başlangıç şablonları oluşturma ve doğru idareyi kurma
Yazılım geliştirmede uygulama tasarlarken kapsülleme, modülerlik ve kompostlanabilirlik hedefleniyor. Aynı düşünce çizgisini şablon oluşturma yoluyla platform mühendisliğine de uygulamalısınız. Örneğin, altyapı için yapı taşları olarak merkezi olarak güvenli, yeniden kullanılabilir bir IaC şablonları kümesi oluşturabilir ve kullanabilirsiniz.
[Geliştiriciler] için modüller oluşturacağız... bu nedenle, arka ucun kendileri için yazmak veya endişelenmek zorunda kalmak yerine, tek yapması gereken kendi uygulama kodları hakkında endişelenmektir. - Daniel, Bulut Mühendisi, Fortune 500 Media Company
IaC, EaC ve uygulama şablonlarını, kaynak kod deposu oluşturma, örnek kod dağıtma veya önerilen gözlemlenebilirlik araçları için yapılandırma ve örnek kod sağlama gibi diğer etkinliklere kadar uzanan özel bir kod olarak her şeyi (EaC) çözümünde birleştirin. Bu IaC, EaC ve uygulama şablonları daha sonra depo, Azure Dağıtım Ortamları'ndaki (ADE) katalog veya buluta özel Azure Container Registry (ACR) gibi merkezi, güvenli bir konumdan depolanabilir veya bunlara başvurulabilir.
Doğru başlangıç şablonları otomatik idare, tarama ve ilke yapılandırmasıyla birleştirildiğinde geliştiriciler ilk günden itibaren çalışmaya devam eder.
Şablonlar, otomatik ve güvenli uygulamalarla geliştirmeyi kolaylaştırıyor
Geliştiricilerin bir proje boyunca üstlendiği çeşitli önemli kararlar ve eylemler için tanımlı yollarınızı önyüklemek için uygulama şablonlarını kullanın. Doğru başlangıç şablonları güvenli, idare edilen geliştirme uygulamaları oluşturur ve geliştiricilerin ihtiyaç duydukları araçlara erişim sağlayan, CI/CD işlem hatlarını yapılandıran, altyapıyı ve uygulama yığınını sağlayan ve gerekli SDK'ları veya API'lere yönelik başvuruları içeren kazan plakası kaynak koduyla eksiksiz bir depo yapılandıran otomasyonu etkinleştirerek hızlı bir şekilde çalışmaya başlamalarını sağlar.
Bu uygulama şablonlarının diğer merkezi şablonlara (örneğin IaC şablonları) başvurmasını sağlayarak, bu tek tek yapı taşları kendi başlangıç şablonları haline gelir. Bu şablonlar, yalnızca çıkışları tanımlamakla kalmaz, aynı zamanda geliştiricilerin tercih ettikleri seçeneklerden de yararlandıkları için self servis deneyimlerini etkinleştirmenin merkezidir.
Şablonlar idare, güvenlik ve maliyet iyileştirmesi sağlar
Ancak, şablonlar yalnızca bir geliştirme çalışmasını önyüklemekten daha fazlasını yapmalıdır. Ayrıca, proje yaşam döngüsü boyunca tam olarak devam etmek için gerekli ilke ve güvenlik taraması aracılığıyla denetimi ve idareyi de kurmaları gerekir. Başka bir örnek olarak, şablonlar üretimde yetkisiz birleştirmeleri önleyen dal koruma kuralları ayarlayabilir. Şablonlar en iyi yöntemleri ve yaygın yapılandırmaları yakaladığından, araçlar, satıcılar ve ekipler arasında maliyetleri iyileştirmeye yönelik temel tekniklerden biridir.
İki yönlü iletişim oluşturmak için doğru kampanyaları çalıştırın
Son olarak, yollara olan güveniniz arttıkça, mevcut uygulamaları kaldırımlı bir yola taşımak için uygulama şablonlarınıza derlediğiniz temel yapı taşlarını kullanabilirsiniz. dahili müşterileriniz zaten pilot yollarınızın değerini göreceğinden, diğer uygulama ekipleriyle iki yönlü bir iletişim kutusu oluşturmak için bir iç doğru alma kampanyası çalıştırabilirsiniz. Geliştiriciler, platform mühendisliği ekibi aynı anda platformu kendileri için nasıl geliştirecekleri hakkında daha fazla bilgi edinirken uygulamalarını nasıl geçirebileceklerini öğrenebilir.
Kendi yolculuğunuzu çizin
Self servis özelliklerinizin kapsayabileceği deneyimler göz önünde bulundurulduğunda, şirket içi geliştirici platformunuzun artımlı olarak değer sunması için yatırım çabalarınız ve Planlama ve öncelik belirleme için önemli bir odak noktasıdır. Her kuruluşun kendi iç geliştirici platformunu oluşturma yolculuğu farklıdır ve bir ürün zihniyetini takip etmeniz, önce self servis deneyimlerine ihtiyaç duyan en kritik yerleri hedeflemenize yardımcı olur.