Platform mühendisliği nedir?
Platform mühendisliği, her geliştirme ekibinin güvenliğini, uyumluluğunu, maliyetlerini ve iş zamanı değerini, iyileştirilmiş geliştirici deneyimleri ve güvenli, idare edilen bir çerçevede self servis aracılığıyla iyileştirmeyi amaçlayan DevOps ilkelerinden oluşturulmuş bir uygulamadır. Hem ürün tabanlı düşünce değişikliği hem de bunu destekleyen bir dizi araç ve sistemdir.
Son zamanlarda platform mühendisliği terimiyle ilgili birçok sektör heyecanı yaşanıyor. Gartner, mühendislik kuruluşlarının yaklaşık yüzde 80'inin 2026'ya kadar platform mühendisliğine ayrılmış bir ekibi olmasını bekliyor. Bu ekipler, iç geliştirici platformu olarak adlandırılan bir platform oluşturmaya odaklanır. Etki alanı (Microsoft Dynamics, Salesforce), hizmet karşılama (ServiceNow), iletişim (Twilio) platformları, doğası gereği ölçek elde etmek ve iş değeri sunmak için gereken süreyi azaltmak için tasarlanmıştır.
Geliştiricilerin kullandığı veya genişleten platformlar, yüksek oranda iyileştirilmiş geliştirici deneyimleri ve basitleştirilmiş operasyonlarla geliştirme süreci boyunca iş gücünü ortadan kaldırma gücüne sahiptir. Bu platformlar şunları içeren araçları içerir:
- Geliştiricilerin kendi kendine yetebilmesine yardımcı olun (örneğin, başlangıç setleri, IDE eklentileri)
- Ortak görevlerle ilgili yardım
- Ortak desenleri ve uygulamaları yeniden kullanılabilir yapı taşları halinde kapsülleme
- Sorunlar veya güvenlik riskleri hakkında erken öneri ve geri bildirim sağlayın
- Temel altyapıyı ve araçları yöneterek işlemleri basitleştirme
İç geliştirici platformu nedir?
İç geliştirici platformu, bir şirketin iç geliştirme uygulamalarına odaklanır. Üretim için önerilen ve desteklenen geliştirme yolları kümesi tanımlarsınız ve iç platformla bunların üzerinden artımlı olarak "yol açarsınız".
Gerçek dünya benzetmesini kullanmak için, yeni yollar genellikle toprak izi olarak başlar, ancak daha fazla kişi bunları kullandıkça, hızı ve aktarım hızını korurken güvenliği geliştirmek için de döşenir. İç geliştirici platformundaki yollara benzer hedefler sağlanır. Geliştiricilere, geliştirici teslim hızından ödün vermeden kritik gereksinimler ve standartlar konusunda rehberlik edecek şekilde tasarlanmıştır. Bu, geliştirme ekiplerine standartlaştırılmış, güvenli ve ölçeklenebilir self servis özellikleri sağlayarak elde edilir. Aynı zamanda, temel alınan altyapının ve araçların verimli, uyumlu ve uygun maliyetli olduğundan emin olmak için operasyonların ve BT kuruluşunuzun işlemlerini kolaylaştırmaya devam edebilirsiniz. Bazı yollar kısmen döşenmiş olsa da, tamamen döşenmiş bir yol, altın renkli yol ilgili herkes için bilişsel yükü azaltır.
Geliştiriciler, bir iç geliştirici platformunun birincil tüketicileri veya müşterisidir. Otomasyon ve merkezileştirme, verimli operasyonlara olanak sağlarken, uyumluluk gibi paydaş gereksinimlerini karşılamaya devam etmektedir.
Platform mühendisliğiyle, bir dizi araç sunmak için bir ürün zihniyetini DevOps ve DevSecOps'tan edindiğiniz öğrenmelerle birleştirerek bu iç platformu oluşturursunuz. Bu araçlar, geliştirme ekiplerini doğal olarak "başarının içinde" yönlendiren yeterli otomasyon, izleme, idare ve gözlemlenebilirlik sağlar. Çok uluslu bir kitle medya şirketinin platform mühendisliği lideri olarak şöyle ifade eder:
Ürün sunma hızını veya hızını artırmak için platform mühendisliği benimsenmiştir. Merkezi ekipler, her ekibin altyapı konusunda endişelenme gereksinimini ortadan kaldırarak verimliliği artırıyor... Ayrıca her şey önceden tanımlanmış olduğundan güvenliği ve güvenliği artırır ve hataları azaltır. - Daniel, Bulut Mühendisi, Fortune 500 Media Company
İç geliştirici platformu, bilişsel yükü ve el ile gerçekleştirilen adımları azaltarak veya ortadan kaldırarak geliştirme ve operasyon yaşam döngünüzün tamamında özelleştirilmiş bilgileri merkezileştirmenize ve ölçeklendirmenize yardımcı olur.
Self servis ve otomasyona odaklanarak artımlı olarak geliştirici platformları oluşturma
Başarılı bir platform mühendisliği stratejisi uygulamak işe yarar, ancak ödeme buna değer. 20'den az kişiye sahip ekiplerin binlerce geliştiriciyi ve yüzlerce projeyi destekleyebilmesi yaygın bir durum değildir.
Ancak iç geliştirici platformu oluşturmak bir yolculuk. "Büyük patlama" yaklaşımı veya yukarıdan aşağıya doğru efor önermiyoruz. Platform mühendisliğinin kritik bir yönü, geliştiricileri, makine öğrenmesi uzmanlarını veya veri bilimcilerini müşteriniz olarak değerlendirdiğiniz bir ürün zihniyeti uygulamaktır. Bir teknoloji şirketinde bir platform mühendisinin belirttiği gibi:
[Platform mühendislik araçlarımızın çözmek için tasarlandığı iki ana sorun vardır. İlki, self servis modeli kullanarak hizmetlerin sağlanmasını kolaylaştırmaktı. … İkincisi performans ölçümleri ve uygulama kullanılabilirliği gibi otomatik destek sistemleri sağlamaktı. Amaç, geliştiricilerin uygulamalarının sorunlarını gidermek ve iyileştirmek için gerekli tüm bilgilere sahip olurken daha hızlı ve verimli bir şekilde çalışmasını sağlamaktı. - Alex, Baş Bulut Mimarı, Büyük Teknoloji Şirketi
İki şirket aynı değildir, bu nedenle bu yolculuk boyunca artımlı bir kurs çizmek için iç müşterilerinizin özel gereksinimlerini göz önünde bulundurun. Zaman içinde bir araya getirebileceğiniz bir dizi temel yapı taşları oluşturarak, iç geliştirici platformunuzun geliştirme ekiplerinin danışman olacağı ve bunu yol boyunca kullanmak isteyeceği kadar değerli olduğundan emin olabilirsiniz. En ince uygulanabilir bir platform, platformunuz için en düşük uygulanabilir ürün) oluşturmak ve oradan büyümek için bu bilgileri kullanın.
Önemli nokta, bu alanlarda yaptığınız yatırımları platform mühendisliği yolculuğunuz için önemli yapı taşları olarak düşünmek istemenizdir. Ardından, her şeyi sıfırdan oluşturmak yerine işletmenize benzersiz bir değer katmak için özel yatırımlarınızla uyumlu tutkal oluşturmaya odaklanabilirsiniz.