Den senaste utgåvan av Perforces årliga Java Developer Productivity Report framhäver att teamen inte inser det fulla löftet om mikrotjänster och CI/CD.
Utvecklare upptäcker ofta att mikrotjänster och CI/CD minskar sin produktivitet snarare än att förbättras.
Bland CI/CD-användare rapporterar 42 procent av de svarande att byggtiden är över fem minuter. Det vanligaste svaret (33 %) var byggtider som översteg 10 minuter.
Den högsta andelen (35 %) av de svarande rapporterar att de begår kod mer än fem gånger per dag. Sådana stillestånd per dag ökar snabbt under loppet av veckor, månader och år.
Jenkins (46 %) är, med viss marginal, den mest populära CI/CD-tekniken som används av respondenterna. GitHub Actions (16%) tog andraplatsen, följt av Bamboo (7%), TeamCity (4%), Circle CI (3%) och Travis CI (1%).
Perforces undersökning visade att 61 procent av de tillfrågade upplevde en ökning av starttiden för sina mikrotjänstbaserade applikationer under de senaste 12 månaderna.
13 procent rapporterade en ökning med över 50 procent av starttiden för sina mikrotjänstbaserade applikationer, medan stora 30 procent rapporterade en ökning med 10-50 procent. 17 procent rapporterade en ökning med 0-10 procent. Totalt sett rapporterade 60 procent en viss ökning av starttiden under de senaste 12 månaderna jämfört med 35 procent som inte rapporterade någon ökning.
Rod Cope, CTO på Perforce Software, sa:
“Den här rapporten visar att det fortfarande finns friktion för team som använder mikrotjänster och CI/CD, nämligen den tid som slösas bort medan de väntar på omdistribuering och commit-tider.
Denna friktion kommer att vara högst upp i sinnet för organisationer som vill förbättra effektiviteten i sina Java-team – särskilt eftersom det blir allt svårare att rekrytera och behålla skickliga talanger under de närmaste åren.
Ur ett utvecklarperspektiv måste organisationer tillhandahålla de verktyg som utvecklarna vill ha, eller riskera att de hittar en organisation som gör det.”
I likhet med CI/CD-användare rapporterade användare av mikrotjänsterapplikationer också höga omdistribueringstider. 44 procent av användare av mikrotjänstapplikationer rapporterar tider som överstiger fem minuter per omdistribuering.
“Att anta en mikrotjänstarkitektur har en mängd fördelar för Java-applikationer, men utvecklarnas produktivitet är ett problem utan de rätta verktygen på plats”, säger Curtis Johnson, produktchef på JRebel by Perforce.
På frågan om vad deras team skulle göra om de kunde spara 10 procent tid under arbetsdagen, svarade bara fyra procent (eller erkände!) svar som “Drick mer kaffe/öl”, “Fest som det är 1999” och “Sov”.
Det populäraste svaret var “Lägg till nya funktioner” (28%), följt av “Förbättra applikationsprestanda” (20%), “Förbättra testtäckning” (19%), “Förbättra utvecklingsprocesser” (17%), “Starta en ny ansökan eller projekt” (6 %) och ”Flytta upp lanseringsdatum” (6 %).
44 procent av de tillfrågade säger att deras applikationer nu är helt mikrotjänstbaserade. Ytterligare 44 procent uppger att de “för närvarande övergår” till mikrotjänster. 10 procent säger att de “pratar om det” medan bara 2 procent uppger att de har provat det “men det gick inte”.
När det gäller ramverk för mikrotjänstapplikationer är Spring Boot (74 %) den överlägset mest använda:
(Kred: Perforce)
De flesta svarande uppger att de har 1-5 mikrotjänster (30 %) i sin primära applikation. Detta följs av 5-10 (24%), 20+ (22%) och 10-20 (16%).
Andra trender för Java-utvecklare
Majoriteten av utvecklarna använder Java 8 (37%) som sitt JDK-programmeringsspråk i sin huvudapplikation, enligt rapporten. Detta följs av Java 11 (29%), medan bara 12 procent använder Java 12 eller nyare.
Men majoriteten (62%) med kunskap om sina uppgraderingsplaner avser att uppgradera till JDK 17 inom de närmaste 12 månaderna. 37 procent av dem räknar med att göra det inom de närmaste sex månaderna.
LTS är den ledande faktorn som påverkar beslutet att uppgradera JDK-versionen, med 25 procent som hänvisar till det. Avrundade de fem främsta faktorerna är säkerhet (23 %), prestanda (20 %), nya funktioner (18 %) och efterlevnad (14 %).
Oracle Java (36%) är den huvudsakliga JRE/JDK-distributionen som används av utvecklare. Generic OpenJDK (27%) tar andraplatsen, medan AdoptOpenJDK/Adoptium (16%) avrundar de tre bästa.
IntelliJ (48 %) är IDE-valet för de flesta svarande, följt av Eclipse (24 %) och VSCode (18 %).
När det gäller byggverktyg behåller Maven (68 %) sin ledning med Gradle (23 %) betydligt efter och Ant (6 %) släpar ännu längre.
(Foto av Michiel Leunens på Unsplash)
Vill du förnya din digitala transformationsstrategi? Lär dig mer om Digital Transformation Week som äger rum den 11-12 maj 2022 och upptäck nyckelstrategier för att göra dina digitala insatser till framgång.
Utforska andra kommande teknologievenemang och webbseminarier för företag som drivs av TechForge här.