Како ће се променити развој софтвера у 2022.

Предузећима је потребан низ софтверских функционалности које морају бити испоручене брзо и поуздано без преоптерећења софтверских тимова. Током протекле године, детаљно сам проучавао како се мења поље продуктивности развоја софтвера. Током тог времена, разговарао сам са водећим инжењерима из десетина организација, прегледао најновију литературу и, поврх свега, спровео репрезентативно испитивање јавног мњења међу софтверским инжењерима. Иако је будућност неизвесна, постоје три кључна тренда која технолошки лидери никако не смеју да занемаре. У зависности од тога како ће технолошки лидери уграђивати те трендове у своје организације, одређиваће се и њихов успех у повећању продуктивности и побољшању радних услова програмера.

Развојно окружење ће се преселити у облак

Када програмер започне нови посао, није неуобичајено да потроши чак две недеље покушавајући да на свом локалном рачунару покрене апликацију на којој ради. Тај процес не представља само велики губитак времена за младог инжењера, већ и за искусне инжењере који морају да те младе инжењере уведу у посао. Како софтверски пројекти постају сложенији, та социјализација нових стручњака постаје све тежа. Компаније су уз мањи или већи напор покушавале да реше тај проблем кроз документацију и алате, али нису увек биле у потпуности успешне. Програмери понекад могу да буду врло тврдоглави у погледу технологије коју користе за своје послове. Хардвер, оперативни системи, па чак и уређивачи кода могу драматично да се разликују и међу програмерима који раде на истом пројекту. Ситуација постаје озбиљнија кад свему томе додате чињеницу да развојна окружења све више морају да подржавају и Интелове архитектуре и нове Еплове М1 чипове, уз рад на даљину који још више компликује покретање локалних развојних окружења.

Локална развојна окружења су сада углавном једини део животног циклуса развоја софтвера који се обавља локално на рачунару програмера. Аутоматизоване израде софтвера, окружења за последње фазе израде апликација и њихово покретање су се у великој мери преселили са локалних рачунара у облак. Компаније „Мајкрософт“ и „Амазон“ су напорно радиле на решавању тог проблема. У августу ове године, компанија „Мајкрософт“ је објавила да је сервис GitHub Codespaces опште доступан. GitHub Codespaces нуди комплетна развојна окружења којима се може приступити помоћу веб-прегледача који може да се покрене за неколико секунди. Услуга омогућава технолошким тимовима који чувају свој кôд у „Мајкрософтовој“ услузи GitHub да се развијају користећи свој Visual Studio Code едитор у потпуности у облаку.

„Амазон“ такође има своје решење за тај проблем, уз помоћ интегрисаног развојног окружења AWS Cloud9, који омогућава програмерима да уређују и покрећу свој кôд из облака. Стартап компаније су такође створене да реше тај проблем. У априлу је Гитпод објавио да је прикупио 13 милиона долара за своје решење за пребацивање развоја софтвера у облак. Без сумње, можемо очекивати да ће се такве технологије све више усвајати у 2022. години.

DevOps ће се све више ослањати на науку

„Гуглов“ тим DORA (DevOps Research and Assessment) спровео је истраживање које је повезало перформансе технолошке организације са пословним резултатима. Њихово истраживање је показало да компаније са елитним инжењерским организацијама имају двоструко веће шансе да остваре своје организационе циљеве и остваре 50 процената већу стопу раста током три године. Утврђивање мерила за 2021. годину које је спровео „Гуглов“ тим DORA и независна фирма за стандардизацију Puppet су доследно показали да је индустрија развоја софтвера све конкурентнија. Расте број инжењерских тимова са изванредним перформансама, док удео тимова са лошим учинком опада. Анкета међу програмерима у Великој Британији коју је спровела фирма Haystack Analytics and Survation открила је да 40 процената програмера каже да могу поуздано да испоруче нове функције истог дана када им се то затражи, а углавном за само неколико сати.

Да би програмери испоручили нову функционалност брзо и поуздано, а да се при томе не би потпуно истрошили, тимови за развој софтвера морају да обезбеде да њихови процеси и алати буду што савршенији. Продуктивност програмера се сматра толико важном да Netflix има наменски тим за контролу продуктивности програмера, док „Гугл“ ангажује многе инжењере у својој функцији EngProd(Engineering Productivity). Пре него што побољшате било који део процеса развоја софтвера, од виталног је значаја да се усредсредите на то где су уска грла. У 2021. години, бројне компаније су обезбедиле средства за изградњу аналитичких платформи за програмере како би указале на та уска грла. Компаније које се баве аналитиком рада програмера добиле су значајна средства током 2021. године. Међу њима су: Haystack Analytics, LinearB, Swarmia и CodeClimate. Лично сам се консултовао са тимом у компанији Haystack Analytics у последњих неколико месеци и открио сам да потражња расте, док раст прихода у просеку износи 35 процената месечно.

Рад на даљину ће бити уобичајен

Много тога о чему сам већ писао је без сумње убрзано све раширенијим радом на даљину међу програмерима током пандемије ковида-19. Чини се да је ова промена трајна. Извештај State of the Octoverse за 2021. годину компаније GitHub открио је да, док је 41 проценат испитаника обављао посао у канцеларији пре пандемије, само 10,7 процената очекује да ће се вратити у канцеларију после пандемије. То представља смањење од 74 процената заједничког рада у канцеларијама. Извештај је такође открио да програмери очекују повећање стопе хибридног рада од 41 одсто, при чему неки запослени раде у потпуности на даљину, а неки долазе у канцеларију. Очекује се да ће број компанија које у потпуности раде на даљину порасти за 46 процената у поређењу са ситуацијом пре пандемије.

Према компанији GitHub, продуктивност почиње да се враћа на ниво пре пандемије, али јасно је да треба више да се уради да би се попуниле празнине које оставља смањење заједничког рада у канцеларији. Анкета међу програмерима у Великој Британији коју сам водио за Haystack Analytics и Сурватион показала је да је међу софтверским инжењерима који пате од повећаног нивоа замора током пандемије, 30 процената је пријавило недостатак контакта са колегама као узрок, док је 27 процената навело као узрок то што морају да раде од куће. Током 2022. године, сасвим је оправдано да очекујемо да ћемо пронаћи нове начине да сарадници не само да раде заједно на мрежи, већ и да се повежу ван мреже. Бројне конференције на којима су програмери непосредно учествовали поново су организоване у наредној години, а неке су чак усвојиле и хибридни приступ. Исто тако, видимо да компаније користе своје радне просторе као места за повремену сарадњу, а не за стални рад.

Како рад на даљину постаје уобичајен, можемо очекивати да програмери пронађу друге начине да остваре оно што су некад постизали у непосредном контакту, како би извукли оно најбоље из оба начина рада. Конференције и измењени пословни простори играће кључну улогу у тој промени. Свет програмера ће сигурно напредовати у наредној години. Као што је пандемија показала, будућност је потпуно неизвесна. Ипак, навео сам три кључна тренда која могу да утичу на заједницу програмера. Сваки од ова три развојна правца донеће нови напредак у продуктивности и условима рада програмера да би се убрзала испорука софтвера упркос ограниченој понуди софтверских инжењера.

6539-kako-ce-se-promeniti-razvoj-softvera-u-2022