Yazılım geliştirici üretkenliğini artırmak için ipuçları


Bir yazılım geliştiricisi olarak yeni bir işte ilk günün beklentisini hayal edin. İK, yöneticiler ve ekip liderleriyle yapılan toplantıların ötesinde, şirket politikalarıyla ilgili üstesinden gelinmesi gereken bir yığın eğitim materyali ve belge olması da muhtemeldir. Bu şeyler, bir üretim ortamına kod geliştirmek ve yayınlamak için kullanılan araçlar ve prosedürlerle uğraşmakla ilgili gerçekten zor şeylerden önce gelir.

İdeal bir senaryoda, bir geliştirici ilk günden itibaren üretken olmalı ve mümkün olan en kısa sürede üretim için kod taahhüt etmelidir. İşletmeler şirket içi yazılım geliştirme çabalarını artırdıkça bu daha önemli hale geliyor, bu da yeni geliştiricileri işe almak anlamına geliyor.

Gartner’da yazılım mühendisliği uygulamasında kıdemli bir baş analist olan Philip Walsh, daha fazla yazılım geliştirmeye ve daha az satın almaya yönelik genel bir eğilim olduğunu söylüyor.

Yazılım ekiplerinin, geliştiricilerin kodlama yapmak için ihtiyaç duydukları her şeyi bulabilmelerini sağlamak için kullandıkları tekniklerden biri, araçlar, yazılım kitaplıkları, belgeler ve örnek kod için tek adres olarak hizmet veren bir tür geliştirici platformu kullanmaktır. Basitçe bir Wiki sayfası veya intranet olarak başlayabilir, ancak bir geliştiricinin üretkenliğini sürdürmek için ihtiyaç duyduğu her şeyi bir araya getirmeye yardımcı olan bir dizi platform vardır.

GitHub’da Microsoft, işe alım geliştiricileri için bir şablon sağlamıştır. Microsoft’a göre işe alım belgeleri, görev kapsamı, ekip süreçleri, kod tabanı, kodlama standartları, ekip anlaşmaları, yazılım gereksinimleri ve kurulum ayrıntılarını içermelidir.

Yazılım mühendisliği liderlerinin yakın tarihli bir ankette Gartner’a söylediklerine göre, geliştiriciler için en faydalı olacağını düşündükleri araçları seçebilecekleri uygulama mağazası benzeri bir deneyim sağlamak gerçekten değerli olabilir.

Bu yaklaşımın bir örneği, Google’ın Apigee API (uygulama programlama arayüzü) yönetim aracının bir parçası olarak yayınladığı ve BT ekiplerinin nasıl harika bir geliştirici deneyimi oluşturabileceğini tartışan bir belgeden alınabilir. Belgede Google, BT liderlerinin bir geliştirici topluluğu oluşturmasını, bir geliştirici portalı ve arama motorları tarafından taranabilen API’ler sunmasını ve yeni kullanıcılar için self servis katılım sağlamasını öneriyor. Geliştirici portalının rol tabanlı erişim denetimi, mevcut API’lerin bir kaydı, belgeler ve eğitimler, artı örnek kod ve geliştiricilerin deney yapmaya başlayabileceği bir korumalı alan ortamı içermesi gerektiğini söylüyor.

Açık kaynak topluluğundan dersler

Gartner, büyük işletmelerde açık kaynak program ofislerine sahip olmanın rolüne de baktı.

Walsh, “Kuruluşlar, kurum içinde özel bir açık kaynak program ofisine ve açık kaynak stratejilerini koordine edecek bir açık kaynak program yöneticisi veya liderine sahip olmanın değerini görmeye başlıyor” diyor.

Kurumsal yazılım ekibi liderlerinin, istenen sonuca ulaşmak için geniş ölçekte işbirliği yapma ve etkinlikleri verimli bir şekilde koordine etme konusunda açık kaynak topluluğundan çok şey öğrenebileceğine inanıyor. “Gartner, açık kaynak geliştirme ilkelerini kuruluşunuzun bünyesinde benimsemenizi tavsiye ediyor” diyor. Gartner buna içsel kaynak bulma diyor.

Geliştiricilerin aynı sayfada olmasını sağlamak için kod katkısı ve belge gereksinimleri için açık standartlar ve yönergeler oluşturmayı içerir. Gartner ayrıca, yazılım geliştirmeye işbirlikçi bir yaklaşım getirmek için paylaşılan birikmiş işler ve varlık havuzları uygulamak için açık kaynak benzeri bir kültür oluşturmak isteyen yazılım mühendisliği liderlerine tavsiyelerde bulunuyor.

Veri çağında gelişme

RedMonk analisti Stephen O’Grady, son yıllarda veritabanı, geliştirme ve altyapı araçlarındaki patlamanın geliştiricilerin eline daha fazla kaynak vermesine karşın, aynı zamanda büyük ölçüde parçalanmış ve verimsiz bir geliştirici deneyimine yol açtığına dikkat çekiyor.

“Kuruluşlar, iş akışlarını daha hızlı ve daha entegre hale getirmek için düşünceli bir şekilde yeniden düzenleme fırsatlarına odaklanıyor” diyor. “C-suite, bu yatırımları yalnızca geliştiricilere daha yüksek kaliteli ve daha az sürtünmeli bir deneyim sunarak fayda sağladığı için değil, aynı zamanda daha hızlı yineleme yapabilen daha verimli geliştiricilere sahip olmanın bir kuruluşun genel durumunu iyileştirmek için en iyi mekanizma olduğu için yapıyor. hız.”

MongoDB Baş Ürün Sorumlusu Sahir Azam’ın açıkladığı gibi bu, MongoDB’nin uzun vadeli vizyonlarından biridir: “Uygulama güdümlü analitikten yararlanan modern, akıllı uygulamalar oluşturmak, uygulama verilerinden içgörülerden yararlanmayı ve bu içgörüleri tekrar birleştirmeyi gerektirir. iş mantığını gerçek zamanlı olarak ayarlamak için uygulamalar.

Geliştirici deneyimi için AI

Geliştirici deneyiminin en heyecan verici alanlarından biri, yapay zekanın (AI) yazılım geliştiricileri destekleme ve iş yüklerini azaltmaya yardımcı olma rolüdür.

Computer Weekly daha önce Software AG ile farklı BT sistemlerini entegre ederken karmaşık alan eşleme sorununu çözmek için büyük dil modellerinin (LLM’ler) nasıl kullanılabileceği hakkında konuşmuştu.

Yapay zekanın nasıl kullanıldığına dair başka bir örnek de, başlangıçta yazılım firması Integral’de dahili kullanım için geliştirilen ve mühendislerine yüksek performanslı ve sağlam kod yazma konusunda yardımcı olmak için geliştirilen bir araç olan Robin AI’dır. GPT tarafından desteklenen Robin AI, kod değişikliklerini incelemek için doğal dil işleme (NLP) yeteneklerini kullanır. Integral yakın zamanda Robin AI’yi açık kaynak haline getirdi.

Integral’e göre Robin AI, JavaScript depolarında en iyi performansı gösteriyor ve insana benzer geri bildirimler sunuyor. Kod inceleme sürecinin otomatikleştirilmesiyle, mühendislik ekipleri iş akışlarını düzene sokabilir ve yüksek kaliteli yazılım oluşturmaya odaklanabilir.

Integral’in kurucu ortağı ve CTO’su John Kuhn şöyle diyor: “Robin AI, Integral’in mühendislik ekibi için ürün hızını artırma ve üretim hatalarını azaltma konusunda bize iyi hizmet etti. Yazılımı açık kaynak kullanarak, dünya çapındaki geliştiricilerin kod değişikliği incelemelerini otomatikleştirip optimize ederek kaliteyi ve üretkenliği artırabileceğini umuyoruz.”

Geliştirici deneyimini geliştirmek için bir örnek oluşturun

Geliştirici deneyimi, yazılım mühendislerinin uygulama oluşturmasını ve çalıştırmasını kolaylaştırmak için bilişsel aşırı yüklemeyi azaltmakla ilgilidir.

Geliştirici ekiplerinin sadece başlamak için doğru bilgileri aramak için daha fazla zaman harcaması fikri, Spotify’ı bir yazılım kataloğu tarafından desteklenen Backstage adlı bir geliştirici portalı oluşturmaya yöneltti. Spotify’a göre amaç, şirketin tüm yazılım altyapısının ve geliştirici araçlarının üzerinde yer alan bir soyutlama katmanıyla uçtan uca yazılım geliştirmeyi merkezileştirmek ve basitleştirmekti. Dahili Backstage aracı artık Bulut Yerel Bilişim Forumu’na (CNCF) açık kaynaklı bir çerçeve olarak bağışlanmıştır.

BT departmanları daha azla daha fazlasını yapmak zorunda kaldıkça, geliştirici deneyimi şüphesiz giderek daha önemli bir rol oynayacaktır. IDC’de yazılım geliştirme ve açık kaynaktan sorumlu grup başkan yardımcısı Al Gillen şunları söylüyor: “Pandemi nedeniyle daha da artan yazılım geliştirmeye yönelik yüksek talep, zaten yetersiz olan geliştiriciler üzerinde önemli bir stres yarattı.”

Kuruluşların tipik olarak zamanlarının ve paralarının üçte ikisini mevcut uygulamaları sürdürmek için harcadığı göz önüne alındığında (geliştirici önceliklendirmesinin EDF örneğine bakın), Gillen, BT endüstrisinin yazılım geliştirme faaliyetlerine giderek daha fazla yapay zeka, otomasyon ve keşfedilebilirlik ekleyeceğine inanıyor. Bu teknolojiler sadece yeni projelerle sınırlı kalmayacak, aynı zamanda mevcut uygulamaların modernleştirilmesi gibi zaman alıcı bir görevi desteklemek için de kullanılabilir.



Source link