JAV programavimo paslaugų įmonėje „Devbridge” šiuo metu dirba daugiau nei 120 testavimo inžinierių. Kokį darbą IT įmonėje atlieka testuotojai? Kokia ateitis laukia šių specialistų ir kaip tapti testavimo inžinieriumi bei įsidarbinti perspektyvioje IT įmonėje? Įžvalgomis dalijasi „Devbridge“ įmonėje testavimo praktikoms vadovaujantis Nikolajus Tolkačiovas.
Ką IT įmonėje veikia ir už kokius darbus yra atsakingas programinės įrangos testuotojas?
Visas programinės įrangos kokybės klausimas sulaukia vis daugiau dėmesio ne tik iš testavimo specialistų, bet ir iš kitų komandos narių, todėl ši sritis labai sparčiai juda į priekį. Testuotojui privalu suprasti kaip veikia visa sistema, kokia jos paskirtis ir kaip galutinis vartotojas naudosis šia sistema, tik taip testuotojas kurs vertę ir padės savo komandai.
Pavyzdžiui, rankinio testavimo specialistui pirmiausia reikia užtikrinti kuriamo produkto kokybę. Tai yra didžiulė amplitudė įvairių testavimo procesų: tai ir gairių sudėliojimas projekte, viso IT produkto rizikos analizė, testavimo strategija, komandos apmokymas ir visi kiti su kokybės užtikrinimu susiję darbai.
Tuo tarpu, ne tik rankinio, bet ir automatinio testavimo sritį išmanantis specialistas padeda komandai automatizuoti testavimo darbus, kurie yra reikalingi, kad būtų užtikrintas visos aplikacijos teisingas funkcionalumas, užkertant kelią pakartotiniam rankiniam testavimui ateityje.
Automatizuoti procesai padeda produktą išleisti į vartotojo rankas dažniau ir greičiau, nes efektyviau pavyksta išsiaiškinti ir sužinoti ar viso produkto funkcionalume neatsirado klaidų.
Kokius pagrindus ir kompetencijas reikia puoselėti, norint tapti testuotoju?
Vis dar egzistuoja stereotipas, kad testuotoju gali tapti bet kas, o IT įmonėje gauti darbą yra kur kas lengviau, nei, pavyzdžiui, programuotojui. Nors galbūt į testavimą lengviau patekti nei į programavimo sritį, tačiau ilgainiui čia taip pat prireikia nemažai specifinių žinių.
Darbas testavimo srityje tikrai nėra lengvas, o ir tempas yra pakankamai greitas, todėl pas mus pradedantys dirbti žmonės profesine prasme užauga labai greitai. Žinoma, ne visiems toks tempas yra priimtinas, yra juk ir tokių žmonių, kurie nori vengti iššūkių, nes tai kartais vargina. Tačiau mūsų profesijos atstovams būtina išeiti iš tos komforto zonos ir nuolat tobulėti.
Tad čia prireikia ir komunikacijos kompetencijų, ir drąsos, kadangi dažnai teks bendrauti su kolegomis programuotojais bei kelti sudėtingus, nepatogius klausimus, kurie turi padėti išvengti klaidų ir problemų ateityje. Pravers ir analitinis mąstymas, komandinio darbo įgūdžiai, sugebėjimas prisitaikyti prie besikeičiančios ir iššūkių aplinkos.
Informacinių technologijų žinios ir pagrindai taip pat gali padėti stojant ir mokantis, pavyzdžiui, testavimo akademijoje, bet tai tikrai nėra privaloma. Mūsų kasmet organizuojamos nemokamos „Sourcery“ akademijos dalyviai turi mokytis spręsti problemas, tobulinti darbo komandoje įgūdžius.
![„Devbridge“ testavimo praktikų vadovas Nikolajus Tolkačiovas](https://images.delfi.lt/media-api-image-cropper/v1/1fe9e540-7e27-11ed-b757-7dece7cc14cd.jpg?noup&w=400)
Kuo yra panašios ir kuo skiriasi testavimo inžinieriaus, ir programuotojo rolės?
Ribos tarp abiejų šių IT sričių nyksta. Nors dar šiandien yra populiaru tiek apie programuotojus, tiek ir testavimo inžinierius kalbėti, kaip atskiras profesijas, vis dėlto kompetencijų laukas vis labiau persidengia. Atsiranda poreikis tiek programuotojui gerai išmanyti testavimo sritį, tiek ir testuotojams mokėti programuoti.
Pasitaiko, kai testuotojai nori save išbandyti ir kitose srityse kaip – verslo analitika, projektų valdymas ar vadovaujančios rolės. Vis daugiau atsiranda testavimo inžinierių, kurie ilgainiui tampa programuotojais. Kiekvieno specialisto indėlis į atliekamą darbą projekte yra svarbus, kaip ir jo nuolat keliama kvalifikacija ir tobulėjimas.
Pavyzdžiui, šiuo metu prie vieno iš didžiausio „Devbridge“ projekto dirba daugiau nei 25 testavimo specialistai, kurie turi galimybę sukaupti labai platų spektrą įvairiausios profesinės patirties ir atrasti sau patinkančią testavimo sritį. Komandoje darbuojasi automatizavimo, greitaveikos, saugumo, rankinio testavimo sritis išmanantys inžinieriai, tai ne tik padeda sparčiai tobulėti, bet ir kelti kompetencijos kartelę dar aukščiau.
Testuotojai padeda klientui sudarydami vartotojų elgsenos profilius, analizuodami kaip jie naudojasi sistema, kas jiems yra svarbu, kokias funkcijas, pavyzdžiui, jie naudoja dažnai, o kurias – retai. Tai leidžia klientui koncentruotis į dažniausiai naudojamas funkcijas, o testuotojams jas kruopščiau patikrinti bei skirti daugiausiai testų automatizavimo pastangų.
Kas lemia sėkmę bandant įsidarbinti į testuotojo poziciją perspektyvioje IT įmonėje?
Sėkmingą karjerą testavimo srityje nulemia žingeidumas ir smalsumas. Iš pirmo žvilgsnio testavimas gali pasirodyti kaip labai paprasta ir daug pastangų nereikalaujanti specialybė, bet iš tiesų ši specialybė reikalauja daug žinių, patirties, analizės ir smalsumo. Tai galioja ne tik norint pakilti karjeros laiptais, bet net ir siekiant nuolat išlaikyti aukštą kompetencijos lygį, todėl šiame darbe nuolatinis tobulėjimas yra būtina sąlyga.
Testuotojai labai sparčiai auga ir tobulėja, jei pažvelgtume į kelis patyrusio testuotojo lygio darbo skelbimus prieš kelerius metus ir dabar, tai pastebėtume labai aiškią tendenciją, kad reikalavimai keičiasi, tačiau ne sukauptos patirties darbe atžvilgiu, o techninių kompetencijų prasme. Tai tik parodo kylantį testuotojų profesijos lygį. IT išsilavinimas taip pat gali padėti, bet jis tikrai nėra būtinas, turime labai daug sėkmės istorijų, kai į mūsų „Sourcery“ testuotojų akademijas įstoja žmonės, siekiantys persikvalifikuoti ir visiškai pakeisti karjeros sritį. Visus juos vienija motyvacija ir gebėjimas pasiraitojus rankoves kibti į darbus.
![Programuotojas](https://images.delfi.lt/media-api-image-cropper/v1/06c77970-7e21-11ed-ab81-a71b60a80a19.jpg?noup&w=400)
Kokia ateitis ir perspektyvos laukia programinės įrangos testuotojų?
Vis daugiau ir daugiau projektų bei paslaugų keliaus į skaitmeninę erdvę. Tie laikai, kai internete dominavo tinklaraščiai, kačiukų nuotraukos ir diskusijų forumai jau praeityje, projektai ir aplikacijos, kurios dabar yra kuriamos ne tik internetui, bet ir išmaniesiems daiktams, auga ir atsiranda vis daugiau funkcionalumo bei sudėtingų sprendimų. Kažkam reikia užtikrinti, kad visi produktai atitiktų griežtus kokybės reikalavimus, kad veiktų taip, kaip tikisi vartotojai ir visos galimos rizikos būtų laiku sustabdytos.
Testuotojo karjeros įvairovė IT įmonėje gali prasidėti nuo jaunesniojo specialisto rolės iki vadovaujančio testavimo eksperto visai įmonių grupei. Vis dėlto labiausiai specialistus augina ir siekti karjeros skatina suburta profesionalų bendruomenė. Visos organizacijos testavimo žinių auginimu ir gerosiomis praktikomis rūpinasi vadovaujantys testavimo specialistai (angl. Lead Test Engineer), jie yra tie žmonės, kurie gali padėti visais (su testavimu susijusiais) klausimais.
Jiems tenka sustyguoti projektus, paskaičiuoti preliminarius projekto testavimo kaštus, sudėlioti testavimo specialisto karjeros kelią, kurti vidines testuotojų bendruomenes, organizuoti žinių dalijimosi iniciatyvas, patiems aktyviai dalytis žiniomis bei dalyvauti visos organizacijos testavimo krypties sudėliojimo ir įgyvendinimo procese.
Nors pasigirsta kalbų, kad automatizavimas gali drastiškai sumažinti testavimo inžinierių poreikį ateityje, tačiau automatizavimas vis dar nespėja vytis pasaulinių skaitmenizacijos tempų. Tam, kad tai įvyktų, reikėtų ne automatizuoti viską iš eilės, o kryptingai dirbti, pavyzdžiui, automatizuoti tik tai, kas yra reikalinga ir stengtis suprasti kaip veikia sistema.
Šiuo aspektu robotai ir dirbtinis intelektas dar negreitai galės konkuruoti su žmogaus pajėgumais. Specialistai, kurie sugeba analizuoti rinkos situaciją, suprasti kaip jie gali prisidėti prie sėkmingo projekto įgyvendinimo, o klientui padėti savo įžvalgomis sukurti dar didesnę vertę verslui, išliks paklausūs ir ateityje.