Jesu li programeri šarlatani ako koriste ChatGPT na testiranju za posao?

Jesu li programeri šarlatani ako koriste ChatGPT na testiranju za posao?

Kako prepoznati da je (potencijalni) zaposlenik koristio ChatGPT, što se događa s programerima kada imaju ChatGPT na radnom mjestu i kako će izgledati testiranja novih zaposlenika, provjeravamo.

ChatGPT jedna je od onih tehnologija zbog koje dobivamo bombastične naslove kako će nas umjetna inteligencija zamijeniti, a milijuni će ostati bez posla. Koliko će točno ljudi ona zamijeniti ili im barem značajno promijeniti rad, teško je reći, ali programerska struka jedna je od tih kojoj se predviđa jak udarac.

U želji da se odmaknemo od fatalističkih predviđanja, razgovarali smo s Milošem Trifunovićem, Team Leadom u Lemaxu; Željkom Švedićem, osnivačem TestDomea, i jednim anonimnim programerom kojeg ćemo nazvati Ivan, kako bismo bolje upoznali situaciju na terenu.

Kako Lemax i Testdome znaju koji je kandidat koristio ChatGPT?

Iako kažu kako još nisu imali kandidata koji je rješavao zadatke pomoću ChatGPT-ja, Lemax se osigurao kako će te kandidate prepoznati. Dva su faktora ključna u prepoznavanju rješenja koja je stvorila umjetna inteligencija, naglašava Miloš.

Prvo je potrebno poznavati koje opcije rješenja AI može poslati, što znači kako će zatražiti ChatGPT da riješi zadatak. Tako u Lemaxu dobiju osjećaj kako izgleda jedno AI rješenje. Idući ključni faktor je prezentacija uživo koja predstavlja priliku da vide razumije li kandidat rješenje. Ovako mogu ispitati najmanje detalje u slučaju da bilo kakve sumnje u kandidata, objašnjava nam Miloš.

Kratkoročni i dugoročni problemi AI-a

Kako bi TestDome, softver namijenjen automatskom testiranju znanja i vještina programera pri zapošljavanju, bio otporan na ChatGPT, tako su Željko i njegov tim prepoznali kratkoročne i dugoročne promijene koje je potrebno napraviti. Kratkoročne promjene tiču se njihovih klijenata koji ne žele dozvoliti kandidatima korištenje alata ChatGPT. Zbog toga su uveli značajke protiv “varanja”:

  • Desktop proctoringtijekom testa se snima kandidatov ekran;
  • Webcam proctoringtijekom testa se vidi što kandidati rade preko web kamere;
  • Copy/paste protectionblokirano je kopiranje teksta pitanja koji je često dugačak i kandidati nemaju dovoljno vremena pretipkati pitanje;
  • TestDome Interviews – otežava varanje putem korištenja AI alata na online intervjuu.

S druge strane, Željko smatra da će se posao programera na dugoročno promijeniti pa zato mijenjaju samu bazu pitanja:

  • Slike i animacije ponašanja u opisu zadatkatako zadatak postaje apstraktniji i testira zna li kandidat definirati problem, a ne samo napisati kod;
  • AI-resistant pitanjakako bi pitanje bilo AI-resistant, tako često mora biti složenije.

Zašto Ivan smatra da su trenutni načini testiranja kandidata “živi užas”?

U isto vrijeme, mnogi programeri trenutni način testiranja kandidata za radno mjesto smatraju neadekvatnim. Leetcode i slični servisi pred kandidata stavljaju algoritamske zadatke kakve velika većina neće rješavati u praksi, bar ne svakodnevno, objašnjava nam programer Ivan:

Iako su takvi zadaci odlična mentalna gimnastika i principi koji su u njima traženi su bitni i korisni, obično su kandidati prilikom rješavanja ograničeni vremenom, a često su potrebni mjeseci i mjeseci priprema.

Ivan ne voli ovaj tip testiranja jer se onda kandidati koji ne mogu izdvojiti mjesece slobodnog vremena za pripremu nalaze u vrlo nepovoljnom položaju. Zatim, sama testiranja iziskuju mnogo vremena od kandidata. Za jedan Leetcode intervju kandidat mora odvojiti nekoliko sati koje obično mora utrošiti u komadu, a take-home zadaci pak zahtijevaju i po nekoliko dana ili tjedana neplaćenog rada. Također, testiranja su vrlo stresna:

Da, možemo pretpostaviti da je velikom broju firmi bitno da kandidati dobro funkcioniraju pod stresom, ali u praksi većinom nemamo scene kao iz Swordfisha u kojima Leet Haxor kodira s pištoljem uperenim u glavu.

Kod firmi koje imaju stroge procese selekcije, Ivan ima osjećaj kako će zauvijek biti eliminiran ako ne prođe na generičkom tehničkom testiranju iz bilo kojeg razloga (npr. nije bilo dovoljno vremena za pripremu, trivijalan bug i slično):

Ako nema ljudskog faktora koji može prosuditi radi li se o trivijalnoj stvari i osobe koju mogu provoditi kroz svoj način razmišljanja, firma potencijalno eliminira izuzetno dobre kandidate koji su napravili ono što developeri rade doslovno svaki dan – imali su bug.

Kad se sve to uzme u obzir, nije ni čudno što dio developera poseže za ChatGPT-jem prilikom testiranja.

Može li ChatGPT učiniti developera boljim?

Ako stavimo na stranu ulogu i problematiku ChatGPT-ja u procesu zapošljavanja, postoje i prednosti koje takvi alati donose. Tako Miloš vidi ChatGPT kao konstruktivniji Google jer, osim davanja odgovora na pitanja, on može pomoći s brzinskim code reviewom, odraditi repetitivne zadatke poput kreiranja podatka za unit testove temeljem definicije metode. Također, moguće je i dobiti dosta detaljne primjere kako se integrirati s vanjskim servisima ili dobiti odgovore na neka tehnička pitanja, ali ne smijemo zaboraviti da govorimo o nesavršenom alatu:

Treba biti svjestan da ChatGPT ne daje nužno uvijek činjenice, već najvjerojatniji odgovor. Stoga, ako nema nekih informacija, postoji mogućnost da će ti dati lažnu informaciju.

ChatGPT može izuzetno povećati produktivnost developeru koji zna kako kvalitetno postaviti pitanje, kako postavljati potpitanja, kako identificirati kad ChatGPT zabrazdi u krivom smjeru i slično, ističe Ivan:

Ono što je odlično što ChatGPT ima kontekst i mogućnost povezivanja koju je developer do sad morao odrađivati ručno (npr. kvalitetno nabosti ključne riječi guglajući i nabadajući rezultate po StackOwerflowu, GitHubu itd., pa isprobavati jednu po jednu od desetak ponuđenih opcija i slično). ChatGPT-u postaviš problem, navedeš što si isprobao i eventualno dodaš još konteksta ako vidiš da je krenuo u krivom smjeru.

Ako ChatGPT čini developere boljima, zašto ga onda ne bi koristili tijekom testiranja?

Neki poslodavci već sada na testiranju daju da potencijalni zaposlenici koriste Google i slične alate, a Miloš ne vidi problem u rješenjima koja su potpuno generirana ChatGPT-jem, ali sve dok kandidat stoji iza tog rješenja, da ga razumije u potpunosti i barata sa svime što je u rješenju:

Očito je da nam je prihvatljivo korištenje svih alata na raspolaganju, s obzirom na to da je zadatak po prirodi offline, odnosno kandidat ga rješava mimo našeg utjecaja i nadzora

Može li poticanje korištenja ChatGPT-ja pokazati neke korisne stvari o kandidatu kao programeru, Željko smatra – i da i ne. Sve ovisi o kompleksnosti zadatka i trajanju testa:

Jednostavni i kratki zadaci ne pokazuju razliku između programera – tekst zadatka se kopira u ChatGPT-ju i možda se dobije odgovor.

Ali složeniji i duži zadaci projektnog tipa zahtijevaju popravljanje ChatGPT grešaka, ponovno promptanje, razdvajanje zadatka u manje cjeline, definiranje arhitekture te pisanje vlastitog koda. Njih će puno lakše napraviti iskusni inženjeri.

Svjedočimo li evoluciji programera?

Ako računamo na to da će se pri selekciji kandidata više tražiti objašnjenja kako je netko došao do rješenja, a ne samo čisti rezultat, znači li to kako se mijenja i tip znanja koja će se tražiti ubuduće od inženjera? U Lemaxu se ta promjena dogodila već prije nekoliko godina, ističe Miloš:

Tražimo od kandidata određeno tehničko znanje, postavimo mu taj zadatak da ga riješi, ali daleko veću ulogu nam igraju “neprogramerske kvalitete” kod čovjeka, kao što su poznavanja industrijskih praksi, te standardnih paradigmi u programiranju.

Zadatak nam služi kao početna točka kako bismo vidjeli gdje kandidat stoji s tehničke strane te kao materijal za otvaranje malo šire priče, gdje ne tražimo odgovore na pitanja ŠTO je kandidat koristio, već ZAŠTO.

Programerski posao se mijenja tako što postaje apstraktniji, arhitekturalni i zahtijeva više pisanja teksta, ističe Željko. Na primjer, komentare je sad poželjno pisati prije koda, jer alati kao Copilot na osnovu komentara mogu odmah generirati kod:

Čim bolje opišemo problem u prirodnom jeziku, to će nam ChatGPT dati bolji kod. Prvo rješenje često nije točno te treba dodatno ChatGPT-ju objasniti kako modificirati kod. Što AI alati postaju bolji, to zadatak programera više postaje dobro opisati problem i osmisliti arhitekturu nego kodirati detalje.

Tehnički temelji, način razmišljanja, vještine komuniciranja i karakter osobe elementi su koje je potrebno prepoznati u kandidatima, ističe Ivan. Vjeruje da ne postoji razvojni tim koji bi umjesto vrhunskog developera, čiji karakter ne mogu smisliti, radije uzeli solidnog, a koji je vješt komunikator i s kojim je ugodno surađivati:

Većina developera ne gradi svemirski brod i ne otkriva toplu vodu. Da, potrebni su tehnički izuzetno sposobni ljudi, ali ne treba svaki developer u timu biti takav (niti ih možete platiti toliko, niti im možete svima dati dovoljno izazovnog posla).

Dobri developeri, osim tehničkih stvari, znaju postavljati pitanja o proizvodu, razmišljati o klijentu i iz perspektive klijenta, znaju razmišljati šire od svog Jira ticketa, znaju da umiranje u ljepoti koda ne donosi novac i da klijentu nije bitno je li aplikacija refaktorirana u Typescript ako ne rješava problem koji klijent ima.

Kakve tipove zadataka ChatGPT sada eliminira iz testiranja zaposlenika?

Dolaskom ChatGPT-ja nema više smisla pitati kandidate da napišu boilerplate code, standardne algoritme, poznate interview zadatke ili kodove koje je lako pronaći na internetu, objašnjava nam Željko. ChatGPT je treniran na cijelom internetu, uključujući StackOverflow i GitHub, te takve zadatke rješava bez problema.

Na primjer, ako pitate ChatGPT za FizzBuzz problem ili quick sort algoritam, dobit ćete točan kod i za manje korištene jezike kao što su F# ili Julia. Ponavlja se ista stvar kao s pojavom Googlea ili StackOverflowa, a to je da nema smisla pitati stvari na koje se odgovor može naći u manje od minute, ističe Željko:

Treba pitati nestandardne zadatke, koji se ne nalaze na internetu ili nema puno dostupnih odgovora. Moguće je i stare zadatke zakomplicirati tako da standardno rješenje ne zadovoljava.

Ivan vjeruje da će biti manje testiranja na tehničkim platformama poput Leetcodea, ali i više tehničkih razgovora u kojima kandidati odgovaraju kako su došli do rješenja. System design intervjui vjerojatno mogu ostati kakvi jesu (oni se ionako odvijaju uživo, bilo preko videopoziva ili bas uživo u prostorijama firme):

Sigurno će biti više razgovora o tome kako rješavati određene problemske zadatke, nego samog rješavanja i analize koda od strane firmi koje intervjuiraju kandidate.

Sukladno članku 94. Zakona o elektroničkim medijima, komentiranje članaka na Netokraciji dopušteno je samo korisnicima koji ostave svoje ime i prezime te mail adresu i prihvate pravila ponašanja.

Pravila ponašanja

Na Netokraciji za vas stvaramo kvalitetan, autorski potpisan sadržaj i zaista se veselimo vašim kvalitetnim, kontruktivnim komentarima. Poštujmo stoga jedni druge prilikom komentiranja, kao i Zakon, držeći se sljedećih pravila ponašanja:

  • Ne budite 💩: Nema vrijeđanja, diskriminiranja, ni psovanja (osim ako nije osobni izričaj, ali onda neka psovka bude općenita, a ne usmjerena prema nekome). Također, upoznajte se sa stavkom 2. članka 94. Zakona o elektroničkim medijima prije no što ostavite komentar.
  • Samo kvalitetna rasprava, manje trolanja: Ne morate se ni sa kim slagati, ali budite konstruktivni i doprinesite raspravi! Svako trolanje, flameanje, koliko god "plesalo" na granici, leti van.
  • Imenom i prezimenom, nismo Anonymous 👤: Autor sadržaja stoji iza svog sadržaja, stoga stojite i vi iza svog komentara. Koristimo ime i prezime te pravu email adresu.

Kako koristimo podatke koje ostavljate? Bacite oko na našu izjavu o privatnosti.

Sve ostale komentare ćemo s guštom spaliti, jer ne zaslužuju svoje mjesto na internetu.

Komentari

Odgovori

Tvoja e-mail adresa neće biti objavljena.

Popularno

Umjetna inteligencija

Najvažniji dio Rimčevog Vernea nije robotaksi, već iskustvo?

Ovaj tjedan rebrendirana u Verne, Project 3 Mobility, tvrtka koju su 2019. godine osnovali Mate Rimac, Adriano Mudri te Marko Pejković, danas napokon ima prvo “opipljivo” predstavljanje onog što su razvijali. No, je li robotaksi usluga zbilja najvažnije što mogu ponuditi?

Pametni automobili

Direktor Vernea tvrdi da su granice između 4. i 5. razine autonomije nejasne – što kažu stručnjaci?

Peta razina autonomnosti vozila svojevrstan je sveti gral industrije, no je li uopće dostižna i potrebna?

Tvrtke i poslovanje

Istraživanje korisničkog iskustva: Jeste li spremni čuti što trebate napraviti?

Ako se pravilno postavi, kao ključna poslovna funkcija, UX istraživanje može pomoći u diverzifikaciji portfelja proizvoda, usluga i korisnika, otkrivanju različitih vrijednosti vaše ponude, implementiranju novih trendova i strategija, a mogao bi vam ukazati i na neiskorištene prilike za širenje i inoviranje. Ako vam to nije dovoljno, čitajte dalje, i otkrijte kako to rade najveće tvrtke na svijetu...

Što ste propustili

Veliki intervjui

Platformski rad u Hrvatskoj: Na 4 digitalne platforme i 1500 agregatora rasporedilo se 16 tisuća “gigera”

Od početka godine u sustavu JEER evidentirano je 16.000 osoba koje su u nekom razdoblju radile putem digitalnih radnih platformi i 1500 agregatora koji su ih zapošljavali. Nijednoj od tih osoba neka od 4 aktivne platforme nije direktno dala ugovor o radu.

Prikaz

Book&Zvook: Jeste probali audioknjige na hrvatskom?

...bolje nego da trčimo za njima i vičemo: „Pa vi ništa ne čitate!“, kažu Ljubica Letinić i Lana Deban iz Book&Zvooka koje su nam objasnile kako nastaju audioknjige - na hrvatskom.

Novost

Euromoney proglasio RBA najboljom digitalnom bankom u Hrvatskoj

Jedan od vodećih europskih časopisa u području financija i bankarstva Euromoney, proglasio je Raiffeisenbank Hrvatska najboljom digitalnom bankom u Hrvatskoj. Ova se nagrada svake godine dodjeljuje banci s vodećom ponudom digitalnih proizvoda i usluga.

Pametni automobili

Direktor Vernea tvrdi da su granice između 4. i 5. razine autonomije nejasne – što kažu stručnjaci?

Peta razina autonomnosti vozila svojevrstan je sveti gral industrije, no je li uopće dostižna i potrebna?

Društvene mreže

Andrej Plenković i Možemo razvaljuju TikTok

Do kraja parlamentarnih izbora premijer Plenković lajkaniji je bio od Pernara, a Možemo najpraćenija stranka.

Novost

Cijeli svijet zahvatio “plavi ekran smrti”: Što do sada znamo

Aviokompanije otkazuju letove, televizije su prestale s emitiranjem, poslovanje su prekinule mnoge banke, pa i Londonska burza. U Hrvatskoj probleme ima CEZIH, televizije, pa i kontrola leta.