
U suvremenoj fazi razvoja industrijske proizvodnje softvera može se primijetiti raznolikost proizvodnih uloga. Njihov broj raste, a klasifikacija postaje složenija svake godine, što naravno otežava procese zapošljavanja stručnjaka i rad s kvalitetom kadrova. Informacijske tehnologije (IT) su područje visoko kvalificiranih radnih resursa i nedostatka kadrova. Ovdje je proces obrazovanja kadrova, potreba za sustavnim radom s ljudskim potencijalom često znatno učinkovitiji od izravnog zapošljavanja putem internetskih resursa.
U članku se razmatraju pitanja koja su aktualna za stručnjake za ljudske resurse u IT tvrtkama: uzročno-posljedične veze u evoluciji proizvodnih uloga, posljedice pogrešnog tumačenja sadržaja uloga za rad s kadrom u cjelini, kao i mogući načini za povećanje učinkovitosti zapošljavanja stručnjaka.
IT proizvodnja za neupućene
Tko je tko u IT-u – to je tema za raspravu na raznim forumima. Ova tema postoji otkako i cijela IT industrija, dakle od pojave prvih softverskih developera na tržištu krajem 90-ih godina prošlog stoljeća. I koliko je vremena prošlo, nedostaje jedinstvenog pogleda na ovo pitanje, što stvara teškoće i smanjuje učinkovitost rada s kadrom. Pokušat ćemo to razjasniti.
Za mene je tema proizvodnih uloga u IT sektoru postala aktualna i zanimljiva od trenutka mog dolaska u IT tvrtku. Potrošio sam mnogo vremena i živaca kako bih razumio proizvodni proces. Ovi troškovi su premašili moja očekivanja i troškove prilagodbe procesima u drugim područjima: obrazovanju, materijalnoj proizvodnji, malom biznisu. Imao sam razumijevanje da su procesi složeni i neobični, budući da je čovjek, općenito, više prilagođen materijalnom svijetu nego virtualnom. No, postojalo je intuitivno otpor: činilo se da nešto ovdje nije u redu, da to ne bi tako trebalo biti. Proces prilagodbe trajao je, vjerojatno, godinu dana, što je, prema mom shvaćanju, jednostavno ogromno vrijeme. Na kraju sam razvio prilično jasno razumijevanje ključnih uloga u IT proizvodnji.
Trenutno radim na ovoj temi, ali na drugoj razini. Kao vođa razvojnog centra IT kompanije, često komuniciram sa studentima, profesorima visokoškolskih ustanova, budućim studentima, srednjoškolcima i drugima koji žele sudjelovati u stvaranju IT proizvoda s ciljem promicanja brenda poslodavca na tržištu rada novog područja (grad Jaroslavl). Ova komunikacija nije jednostavna zbog niske informiranosti sugovornika o tome kako je organiziran proces razvoja softvera (SW), te kao rezultat toga, oni često ne razumiju predmet razgovora. Nakon 5 – 10 minuta dijaloga prestaje se dobivati povratne informacije i počinje se osjećati kao stranac čiji je govor potreban prijevodu. Obično se među sugovornicima nađe netko tko prekida dijalog i iznosi popularni mit iz 90-ih: „Svejedno, svi IT stručnjaci su programeri“. Izvori nastanka mita su sljedeći:
- IT sektor se brzo razvija, u tim uvjetima svi osnovni smisli i principi su u fazi formiranja;
- u uvjetima nesigurnosti teško je opstati, stoga se ljudi trude olakšati si razumijevanje nepoznatog stvarajući mitove;
- ljudima je lakše percipirati materijalni svijet nego virtualni, zbog čega im je teško dati definiciju pojmovima koji su izvan njihove percepcije.
Pokušaji borbe protiv ovog mita ponekad podsjećaju na borbu s vjetroturbinama, jer postoji nekoliko aspekata problema koji zahtijevaju rad. Kadrovski stručnjak mora, prvo, imati jasnu sliku proizvodnih uloga u IT kompaniji u idealnom i realnom obliku, drugo, razumjeti kako i kada se može najefikasnije iskoristiti unutarnji resurs kompanije, i treće, koje stvarne metode mogu pomoći u povećanju informiranosti sudionika tržišta rada i doprinijeti razvoju brenda poslodavca. Razmotrimo ove aspekte detaljnije.
Životni ciklus SW kao osnova proizvodnih uloga
Nije tajna da sve proizvodne uloge u bilo kojoj IT kompaniji imaju kao izvor životni ciklus softvera. Stoga, ako postavljamo konceptualni zadatak da se dogovorimo o jedinstvenom shvatanju ovog pitanja u okviru cele IT industrije, treba se osloniti upravo na životni ciklus softvera kao jasno prihvaćenu i svima razumljivu osnovu. Razgovor o konkretnim varijantama implementacije pitanja o proizvodnim ulogama leži u okviru našeg kreativnog odnosa prema životnom ciklusu softvera.
Dakle, razmotrimo faze koje obuhvata životni ciklus softvera, na primeru RUP metodologije. One su dovoljno formirane karike kada je reč o sadržaju i terminologiji. Proizvodni proces uvek i svuda počinje sa poslovnim modeliranjem i formiranjem zahteva, a završava se (uslovno, naravno) savetovanjem korisnika i doradama softvera na osnovu „željâ“ korisnika.

Ukoliko provedemo istorijski izlet na kraj prošlog veka (kao što je poznato, to je bio period „ostrvske automatizacije“), možemo videti da je celim procesom kreiranja softvera upravljao programer. Tu su koreni mita da je svaki IT stručnjak zapravo programer.
Sa složenošću proizvodnih procesa, pojavom integrisanih platformi i prelaskom na kompleksnu automatizaciju predmetnih oblasti, sa reengineeringom poslovnih procesa postaje neizbežno pojavljivanje specijalizovanih uloga vezanih za faze životnog ciklusa. Tako se pojavljuju analitičar, tester i stručnjak za tehničku podršku.
Raznolikost pozicija na primeru uloge analitičara
Analitičar (također poznat kao inženjer-analitičar, metodolog, poslovni analitičar, sistemski analitičar itd.) pomaže „uskladiti” poslovne zadatke i tehnologije njihove implementacije. Opis postavljanja zadatka za programera – to je glavna funkcija apstraktnog analitičara. On služi kao poveznica između klijenta i programera u procesima formiranja zahtjeva, analize i projektiranja softvera. U stvarnim uvjetima proizvodnje, skup funkcija analitičara određuje način organiziranja proizvodnje, kvalifikacija stručnjaka i specifičnost modelirane tematske oblasti.

Dio analitičara nalazi se bliže klijentu. To su poslovni analitičari (Business Analyst). Oni duboko razumiju poslovne procese tematske oblasti i sami su stručnjaci automatiziranih procesa. Vrlo je važno imati takve stručnjake u timu poduzeća, posebno pri automatizaciji metodološki složenih tematskih područja. Konkretno, za nas kao automatizatore budžetskog procesa države, nužno je da među analitičarima budu stručnjaci za predmetnu oblast. To su visoko kvalificirani zaposlenici s dobrim financijsko-ekonomskim obrazovanjem i radnim iskustvom u financijskim organima, poželjno u ulozi vodećih stručnjaka. Izuzetno je važan iskustvo rada ne u IT sektoru, već upravo u predmetnoj oblasti.
Drugi dio analitičara bliži je programerima. To su sistemski analitičari (System Analyst). Njihov osnovni zadatak je otkrivanje, sistematizacija i analiza zahtjeva klijenta u pogledu mogućnosti njihova ispunjenja, priprema tehničkih zadataka i opis postavljanja zadatka. Razumiju se ne samo u poslovnim procesima, već i u informatičkim tehnologijama, dobro predstavljaju mogućnosti isporučenog klijentu softvera, posjeduju vještine projektiranja i, shodno tome, razumiju kako najbolje prenijeti interese klijenta programeru. Ovi zaposlenici svakako imaju obrazovanje u području ICT-a i inženjersko-tehničko razmišljanje, poželjno – iskustvo rada u IT-u. Prilikom odabira takvih stručnjaka jasno će biti prednost imati vještine projektiranja uz korištenje modernih alata.

Još jedan tip analitičara su tehnički pisci (Technical Writer). Oni se bave dokumentovanjem unutar procesa razvoja softvera, pripremaju korisničke i administrativne priručnike, tehnološke upute, obrazovne video materijale itd. Njihova osnovna zadaća je prenijeti korisnicima i drugim zainteresiranim stranama informacije o radu programa, opisati tehnički složene stvari sažeto i jasno. Tehnički pisci, u svojoj masi, odlično ovladaju hrvatskim jezikom, a pritom imaju tehničko obrazovanje i analitički sklop uma. Za takve stručnjake najvažnije su vještine sastavljanja razumljivih, točnih i detaljnih tehničkih tekstova u skladu sa standardima, kao i poznavanje i ovladavanje alatima za dokumentaciju.
Tako možemo vidjeti istu ulogu (i, usput, radno mjesto u radnoj knjižici) – analitičar, ali u različitim njenim konkretnim primjenama. Traženje stručnjaka za svaku od njih ima svoje osobitosti. Važno je znati da te vrste analitičara često moraju posjedovati nespojive vještine i znanja u jednoj osobi. Jedan – humanist, sklon analitičkom radu s velikim obimom tekstualnih dokumenata, s razvijenim govorom i komunikativnošću, drugi – „tehničar“ s inženjerskim razmišljanjem i interesima u području IT-a.
Uzimati izvana ili obrazovati iznutra?
Za velike predstavnike IT industrije, učinkovitost direktnog zapošljavanja putem internetskih izvora opada s rastom projekata. To se događa, između ostalog, iz sljedećih razloga: nemogućnost brze prilagodbe složenim procesima unutar kompanije, brzina usvajanja specifičnih alata ispod je brzine razvoja projekta. Stoga je HR stručnjaku važno znati ne samo koga tražiti izvana, već i kako angažirati unutarnje resurse kompanije, od koga i kako razviti stručnjaka.
Za poslovne analitičare vrlo je važna praksa rada unutar stvarnih procesa predmetnog područja, stoga je njihovo zapošljavanje "s vanjske strane" učinkovitije nego unutar kompanije. Pri tome je za HR stručnjake važno znati popis organizacija koje mogu biti izvori ovog kadrovskog resursa i prilikom zapošljavanja usredotočiti se na pretraživanje životopisa iz tih organizacija.
Za popunjavanje pozicija kao što su sistemski analitičar i arhitekt softvera, naprotiv, proces pripreme kadrova unutar kompanije ima ogroman značaj. Ovi stručnjaci moraju se razvijati u uvjetima postojeće proizvodne sredine i specifičnosti konkretne organizacije. Sistemskih analitičari (System Analyst) razvijaju se iz poslovnih analitičara (Business Analyst), tehničkih pisaca (Technical Writer) i inženjera tehničke podrške (Technical Support Engineer). Arhitekti softvera (Software Architect) dolaze iz projektanata (System Designer) i programera softvera (Software Developer) kako stječu iskustvo i proširuju svoje horizonte. Ova okolnost omogućava HR stručnjacima da učinkovito iskoriste unutarnje resurse kompanije.
Preklapanje, spajanje i evolucija proizvodnih uloga
Postoji još jedno teško pitanje s obzirom na implementaciju u proizvodnom procesu - uspostavljanje jasnih granica između uloga. Na prvi pogled može se činiti da je sve očito: završila se implementacija, potpisali su se dokumenti o puštanju softvera u industrijsku eksploataciju i sve je predano tehničkoj podršci. Sve je to točno, međutim, često se javljaju situacije kada klijent, naviknut da bude u bliskoj vezi s analitičarom i vidi ga kao "štaku", nastavlja aktivno komunicirati s njim, unatoč tome što je sustav već implementiran i formalno je u fazi podrške. Međutim, s gledišta klijenta, tko bi mogao bolje i brže od analitičara, koji je zajedno s njim postavljao zadatak, odgovoriti na pitanja o radu sa sustavom. I tu nastaje pitanje djelomičnog preklapanja uloga inženjera tehničke podrške i analitičara. S vremenom se sve normalizira, klijent se navikne komunicirati sa službom tehničke podrške, ali u samom početku korištenja softvera takav "unutarnji prijelaz" ne uspijeva uvijek bez stresa s obje strane.

Preklapanje uloga analitičara i inženjera tehničke podrške javlja se i kada se zahtevi za razvojem izražavaju tokom faze podrške. Vraćajući se na životni ciklus softvera, primetno je neslaganje između stvarnih proizvodnih uslova i formalnih postavki da analizu zahteva i postavljanje zadataka mogu obaviti isključivo analitičari. Stručnjaku za ljudske resurse, naravno, treba da bude jasna idealna slika uloga u okviru životnog ciklusa softvera, koje imaju jasno definisane granice. No istovremeno, neophodno je imati na umu da može doći do preklapanja. Pri proceni znanja i veština kandidata, treba obratiti pažnju na prisustvo povezanog iskustva, što znači da se prilikom traženja inženjera tehničke podrške mogu razmatrati kandidati s iskustvom analitičara i obrnuto.
Pored preklapanja, često se primećuje i spajanje proizvodnih uloga. Na primer, poslovni analitičar i tehnički pisac mogu postojati u jednoj osobi. U velikoj industrijskoj proizvodnji, prisustvo arhitekte softvera (Software Architect) je obavezno, dok se u vrlo malim projektima može proći bez te uloge: tamo uloge arhitekte obavljaju programeri (Software Developer).
Promena istorijskih perioda u pristupima i tehnologijama razvoja neizbežno dovodi do toga da životni ciklus softvera takođe evoluira. Globalno, osnovne faze ostaju nepromenjene, ali se detaljno razrađuju. Na primer, s prelaskom na web-rešenja i porastom mogućnosti udaljene konfiguracije, pojavila se uloga stručnjaka za podešavanje softvera. U ranom istorijskom periodu to su bili implementatori, odnosno inženjeri koji su većinu radnog vremena provodili na radnim mestima kod klijenata. Porast obima i složenosti softvera doveo je do pojave uloge arhitekte softvera (Software Architect). Zahtevi za ubrzanjem izdanja verzija i poboljšanjem kvaliteta softvera doprineli su razvoju automatizovanog testiranja i formiranju nove uloge – QA inženjera (Quality Assurance Engineer), itd. Evolucija uloga na svim fazama organizacije proizvodnog procesa značajno je povezana s razvojem metoda, tehnologija i alata.
Dakle, razmotrili smo neke zanimljive aspekte raspodjele razvojnih uloga unutar softverske kompanije u kontekstu životnog ciklusa softvera. Jasno je da je ovo pogled iznutra, specifičan za svaku firmu. Za sve nas kao sudionike tržišta rada u IT industriji i odgovorne za promociju brenda poslodavca, izuzetno je važan i pogled s vanjske strane. A ovdje postoji veliki problem ne samo u pronalaženju značenja, već i u prenošenju tih informacija ciljnoj publici.
Što nije u redu s "zoološkim vrtom" IT pozicija?
Zbunjenost među HR stručnjacima, organizatorima proizvodnje i raznolikost pristupa dovode do vrlo širokog spektra, gotovo "zoološkog vrta" IT pozicija. Iskustvo intervjua i profesionalnih kontakata često pokazuje da ljudi često nemaju jednoznačno razumijevanje značenja koja bi trebala proizaći iz naziva pozicija. Na primjer, u našoj organizaciji pozicije koje uključuju pojam "inženjer-analitičar" podrazumijevaju da je to osoba koja postavlja zadatke. Međutim, ispostavlja se da to nije svugdje tako: postoje organizacije razvijači gdje je inženjer-analitičar implementator. Sasvim drugačije razumijevanje, složit ćete se?
Prvo, "zoološki vrt" IT pozicija nesumnjivo smanjuje efikasnost zapošljavanja. Svaki poslodavac, dok razvija i promiče svoj brend, želi u sažetom obliku prenijeti sve informacije koje postoje u njegovom poslovanju. Ako on sam često ne može jasno reći tko je tko, prirodno je da će vanjskom svijetu prenositi neizvjesnost.
Drugo, "zoološki vrt" IT pozicija stvara ogromne probleme u obuci i razvoju IT kadrova. Svaka ozbiljna IT kompanija koja ima za cilj formirati i razvijati ljudski potencijal, a ne samo "milovati" web stranice za zapošljavanje, prije ili kasnije suočava se s potrebom za suradnjom s obrazovnim institucijama. Za visoko kvalificirane IT kadrove, to je segment fakulteta, i to najboljih, najmanje onih koji se nalaze na listi TOP-100.
Problema integracije s visokim školama tijekom uspostavljanja kontinuiranog procesa obrazovanja IT stručnjaka dijelom leži u nedostatku razumijevanja unutar visokoškolskih ustanova o tome tko je tko unutar IT kompanije. O tome imaju vrlo površno razumijevanje. Obično, visoke škole nude nekoliko programa sa riječi „informatika“ u nazivima, te se često događa da se tijekom prijemnog postupka oslanjaju na tezu da su svi programi u osnovi o istom. To izgleda kao da se oslanja na narodni mit da su svi IT stručnjaci programeri.
Iskustvo naše bliske suradnje s visokim školama pokazuje da program „Primenjena informatika (po granama)“ isporučuje kadrove za odjele metodologije i tehničke podrške, ali nikako ne za razvoj. Dok „Fundamentalna informatika“ i „Programski inženjering“ pripremaju odlične kadrove za programere. Kako bismo izbjegli usmjeravanje studenata na neodgovarajući put, potrebno je „rasvijetliti maglu“ koja okružuje IT proizvodnju.
Može li se sve svesti na zajednički nazivnik?
Može li se ujediniti proizvodne uloge i doći do jedinstvenog razumijevanja iznutra i izvana kompanije?
Naravno, može i treba, jer akumulirano kolektivno iskustvo svih razvojnih poduzeća pokazuje postojanje zajedničkih, objedinjavanju koncepta organizacije proizvodnog procesa. To je posljedica činjenice da ipak postoji jednoznačno shvaćeno pojam životnog ciklusa softvera, a nove proizvodne uloge (DataScientist, QA-Engineer, MachineLearning Engineer itd.) rezultat su pojašnjenja i razvoja životnog ciklusa softvera kao takvog, uz usavršavanje tehnologija i alata, kao i razvoj i širenje poslovnih zadataka.
Istodobno, teško je ujediniti proizvodne uloge jer je IT jedna od najmlađih i najbrže rastućih industrija u ekonomiji. U određenom smislu, to je kaos iz kojeg je nastao svemir. Jasna organizacijska struktura ovdje nije moguća i nije prikladna, jer je IT intelektualna, ali vrlo kreativna sfera. S jedne strane, IT stručnjak je 'fizičar'-intelektualac s razvijenim algoritamskim i matematičkim razmišljanjem, a s druge strane, to je 'lirikal'-stvaratelj, nositelj i promotor ideja. Baš kao i umjetnik, nema jasnog plana za pisanje slike, ne može razdvojiti sliku na dijelove, jer ona prestaje postojati. On je majstor informacijskih procesa koji su sami po sebi apstraktni, neuhvatljivi, teško mjerljivi, ali brzi.
Putovi izgradnje učinkovitog kadrovskog rada u IT proizvodnji
Dakle, što je važno znati HR stručnjaku za izgradnju učinkovitog kadrovskog sustava u uvjetima raznolike IT proizvodnje.
Prvo, svaki stručnjak za kadrove u IT kompaniji treba imati predstavu o situaciji koja je specifična za njegovu tvrtku: tko se čime bavi, tko i kako se naziva, i najvažnije - kakvo značenje se pridaje tim ulogama u uvjetima konkretne proizvodnje.
Drugo, HR stručnjak mora imati fleksibilnu predstavu o proizvodnim ulogama. To znači da se inicijalno formira idealno razumijevanje tih uloga, što mu omogućava da sam riješi sve. Zatim mora postojati stvarna slika proizvodnje: gdje i u čemu se uloge preklapaju, kako se objedinjuju, kakvo je razumijevanje tih uloga među proizvodnim voditeljima. Kompleksnost za kadrovskog stručnjaka leži u usklađivanju stvarne i idealne situacije u svijesti, ne pokušavajući silom preurediti procese prema svom idealnom shvaćanju, nego pomažući proizvodnji da zadovolji svoje potrebe za resursima.
Treće, obavezno je imati predstavu o mogućim putanjama razvoja različitih stručnjaka: u kojem slučaju može biti učinkovit vanjski odabir, a kada je bolje razviti zaposlenika unutar vlastitog kolektiva, omogućujući mu mogućnosti za razvoj, koje osobine kandidata će im omogućiti napredovanje u određenom smjeru, koje od osobina ne mogu biti kompatibilne u jednoj osobi, što je od samog početka važno za odabir putanje razvoja.
Četvrto, vraćamo se na tezu da je IT područje visokokvalificiranih kadrova, gdje je za učinkovitiji rad s kadrom neizbježna rana integracija s visokoškolskim obrazovnim okruženjem. U toj situaciji svaki HR stručnjak treba razvijati ne samo vještine izravnog pretraživanja, rada s životopisima i intervjuiranja, nego se također obavezno orijentirati u okruženju visokoškolske pripreme stručnjaka: koji fakulteti obučavaju kadrove za tvrtku, koje specijalnosti unutar određenih fakulteta zadovoljavaju potrebe kadrova, i, što je važno, tko za tim stoji, tko rukovodi i provodi pripremu stručnjaka na fakultetima.
Dakle, ako se ciljano razbija mit da su svi IT stručnjaci programeri, potrebno je poduzeti čitav niz koraka u tom smjeru i obratiti posebnu pažnju na naše fakultete, gdje se postavljaju temelji percepcije buduće profesije. Drugim riječima, potrebno je stalno djelovati s obrazovnim okruženjem, na primjer, putem suvremenih formata zajedničkog rada u coworking centrima, "točkama vrenja", sudjelovanjem u obrazovnim intenzivima. To će omogućiti razbijanje netočnih predstava o IT poduzećima, povećati učinkovitost rada s kadrom i stvoriti uvjete za zajedničko djelovanje u pripremi različitih stručnjaka naše industrije.
Izražavam zahvalnost kolegama koji su sudjelovali u pripremi i održavanju relevantnosti ovog članka: Valentini Veršininoj i Juriju Krupinu.
Izvor: habr.com
