Preskoči na vsebino
agiledrop logo
  • Rešitve
  • Naročniki
    • O podjetju
    • Zgodovina
    • Ekipa
    • Akademija
    • Odprta delovna mesta
    • Ugodnosti za zaposlene
    • Poklicna pot razvijalcev
    • Uvajanje in mentorstvo
    • Izobraževanje zaposlenih
  • Blog
Kontakt
Footer Agiledrop logo
Sedež podjetja v LjubljaniStegne 11a, 1000 LjubljanaVeč o sedežu podjetja v Ljubljani
gold creditworthiness
Pisarne
  • Poslovna enota Celje
  • Poslovna enota Maribor
Skupnost
  • Drupal.si
  • Pravno obvestilo
  • Varstvo osebnih podatkov
Kontakt
  • Zaposlovanje:
    [email protected]
  • Prodaja:
    [email protected]
  • Telefon:
    +386 590 18180
© 2013-2025 AGILEDROP Ltd
  • Politika piškotkov

AI za začetnike – pomoč ali past?

Janez

Objavljeno na22. jul. 2025v

Razvoj

Uvajalna faza na novem delovnem mestu je pomembno obdobje, ki predstavlja osnovo za dolgoročni uspeh. Junior razvijalcem omogoča, da pridobijo osnovna znanja, gradijo odnose, in razvijejo sposobnosti reševanja problemov, ki jim bodo pomagala tekom celotne kariere.

Žal pa se veliko novincev vedno pogosteje zanaša na AI orodja, ki ponujajo takojšnje odgovore ter usmerjanje. Čeprav so ta orodja brez dvoma uporabna, lahko pretirano zanašanje na njih negativno vpliva na potencial za rast razvijalca.

Na developer meetupu v Agiledropovi mariborski pisarni, ki je potekal 11. junija, sem predstavil pasti ter dobre prakse uporabe AI za junior razvijalce. V nadaljevanju si lahko preberete povzetek te predstavitve.

 

Kako se ljudje učimo?

Za začetek si oglejmo glavne teorije o tem, kako se ljudje učimo.

  • Behaviorizem temelji na ideji, da je človek kot prazen list, ki ga oblikuje okolje. Le-to s svojimi odzivi nagrajuje ali kaznuje vedenje. Glavni principi so ponavljanje, vaja in okrepitev.
    • Primer: učenje na pamet.
  • Kognitivizem učenje smatra kot aktivni miselni proces. Človek sam gradi notranjo sliko tematike, s poudarkom na razumevanju tematike. Po kognitivizmu možgani delujejo podobno kot računalnik, torej, sprejemajo, obdelujejo in hranijo informacije. Takšen pristop je izredno pomemben pri kritičnem razmišljanju in reševanju problemov.
    • Primer: izdelava miselnega vzorca.
  • Konstrukcionizem je ideja, da si človek znanje gradi sam, in sicer preko izkušenj, raziskovanja ter eksperimentov. Najbolj učinkovito učenje je takrat, ko lahko tematiko povežemo z resničnim življenjem. Pri konstrukcionizmu so napake del učnega procesa, in njihova analiza vodi do novega znanja.
    • Primer: delo v laboratoriju.
  • Teorija socialnega učenja, kjer se učimo skozi opazovanje modela (npr. starš, učitelj, nadrejeni), pa učenje smatra kot pasivno in ne potrebuje neposrednje izkušnje. Če je model nagrajen ali “kaznovan” s strani okolice, se na to primerno odzovemo. Učenje je bolj uspešno, če model spoštujemo ali nam je podoben.
    • Primer: opazovanje senior razvijalca.

 

Razvijalec je več kot njegova koda

Preden se spustimo v pasti prevelikega zanašanja na AI orodja med učenjem, si je potrebno zapomniti, da je razvijalec več kot samo koda, ki jo producira. Dober razvijalec je hkrati tudi:

  • Problem solver, ki zna kompleksne probleme razdeliti na manjše enote. Reševanja problemov se loti analitično in z veliko mero ustvarjalnosti. Izzivov se ne ustraši, ampak jih vidi kot priložnost za dosego novega znanja.
  • Učinkovit komunikator, ki jasno komunicira s člani svoje ekipe in ostalimi deležniki. Zna razumljivo dokumentirati svoje delo ter izbrskati potrebe, jih preoblikovati v tehnične rešitve in le-te enostavno obrazložiti.
  • Timski igralec, ki aktivno posluša ter sodeluje pri komunikaciji. Deli svoje znanje in podaja povratne informacije, tako pri implementaciji kot tudi arhitekturi, poleg tega pa poskuša tudi zapolniti primanjkljaje v ekipi.
  • Večni učenec, ki sledi novostim v jeziku in orodjih. Ohranja radovednost, se enostavno prilagaja spremembam ter vlaga v osebni in strokovni razvoj.
  • Arhitekt, ki razmišlja širše od svojega trenutnega problema – npr. o poslovnih potrebah, zmogljivosti in skalabilnosti, ter načrtih za prihodnost. Dober razvijalec za svoje delo ne potrebuje tehnično dovršenega vodje projekta, saj so tehnične rešitve njegova odgovornost.
  • Povrh vsega mora razvijalec znati prevzeti odgovornost za svoje delo. Koda, ki jo piše, je berljiva, varna in vzdržljiva.

 

Pasti dela in učenja s pomočjo AI modelov

Kot rečeno, prevelika uporaba AI modelov predstavlja številne pasti za učinkovito delo in učenje.

  • Prevelika odvisnost: veliko junior razvijalcev se preveč zanaša na AI modele. Posledično probleme rešujejo površinsko in se vanje ne poglobijo. Ker niso prisiljeni v sprejemanje odločitev, so prikrajšani pri razumevanju. Z vidika konstrukcionizma je to neučinkovito – ker niso sami eksperimentirali, odnesejo manj znanja.
  • Površinsko učenje: prekomerno zanašanje na AI pomeni copy/paste in autocompletion programiranje. Razvijalci ne pridobijo poglobljenega znanja, npr. o robnih primerih. Pridobijo le površinsko poznavanje programskih konceptov in vzorcev designa.
  • Varnost in licenciranje: koda, ki jo sproducira AI, je lahko varnostno problematična, saj AI modeli pri komunikaciji ne opozorijo na varnostne pomanjkljivosti. Lahko celo priporočajo uporabo starih in varnostno ranljivih knjižnic oz. knjižnic, ki so licenčno problemlatične. Tukaj je pomemben koncept problem neznanega: ne vemo, česa ne vemo, kar pri implementaciji lahko vodi do varnostnih lukenj.
  • Zmanjšanje vpletenosti v probleme: AI modeli pogosto trivializirajo, v stilu “To je tvoj problem, tukaj je rešitev za ta problem.” Posledica je, da se skozi čas izgubi želja po poglobljenem znanju. Dejansko pa se redko zgodi, da ima problem eno samo specifično rešitev. Podana rešitev ni nujno tudi pravilna za dotičen primer, poleg tega pa se s pretirano rabo AI tudi zmanjša razmišljanje o širši arhitekturni uvrstitvi neke rešitve.
  • Krade občutek zadovoljstva: pogosto je glavni razlog, da se nekdo odloči za razvijalsko kariero, občutek zadovoljstva in doseganje novega znanja ob implementaciji rešitve. Razvijanje z zanašanjem na AI modele pa je drugačno; ker nam rešitev podajo na lahek način, izgubimo ta občutek zadovoljstva. Zmanjšanje občutka profesionalne rasti pa posledično znižuje zadovoljstvo pri opravljanju poklica.
  • Zmanjša sodelovanje v ekipi / skupnosti: razvijanje resnega produkta je stvar ekipe in ne posameznika, ključ do uspeha pa je učinkovita komunikacija znotraj ekipe. Ker pa so AI modeli vedno pri roki, se bomo avtomatično najprej obrnili na njih, kar lahko vodi do poslabšanja ali izgube medsebojne komunikacije. Prav tako tudi težje oz. sploh ne spoznamo tudi širše skupnosti okoli določene tehnologije, programskega jezika ali poslovnega sveta produkta, na katerem delamo.
  • Zanesljivost in halucinacije: še en pogosto problem AI je zanesljivost. AI modeli lahko samozavestno podajajo napačne odgovore (ti. “AI halucinacije”), saj v svojem bistvu ne poznajo rešitev, poznajo samo statistično najverjetnejši odgovor na podano vprašanje. Lahko se zgodi tudi to, da uporabljajo programske prvine enega jezika v odgovoru drugega jezika, ali pa nam navedejo neobstoječe vire. Zato je potrebno vsako rešitev, ki nam jo poda AI model, neodvisno verificirati.
  • Zapleta ustaljeno rast in karierno pot: pretirana uporaba AI poglablja past večnega juniorja. Ker se vsakodnevno delo trivializira in probleme rešuje površinsko, pride do prikrajšanja širšega učenja (soft skilli). Vendar pa bodo podjetja kljub napredku AI modelov še naprej potrebovala izkušene razvijalce. Tako se morajo zavedati potrebe rasti junior razvijalcev in jih pri tem čim bolje podpirati.

 

Odgovorna raba AI modelov pri začetnikih

Kljub vsem tem pastem pa je uporaba AI modelov neizbežna. Razširjenost njihove uporabe bo rasla, obenem pa bodo postali tudi kakovostnejši. Že zdaj vidimo, da se veča njihova integracije v sisteme, tako pri produciranju kode kot tudi pri pisanju dokumentacije in testiranju sistema.

Za uspešno in odgovorno rabo AI modelov je ključno, kako in zakaj jih uporabljamo. Lahko so namreč zelo uporabni pri enostavnih problemih; bolj kompleksen kot pa je problem, večja je potreba po iskanju rešitev znotraj ekipe. Potrebno je določeno predznanje pred učinkovito uporabo AI.

Kako torej izgleda odgovorna raba AI modelov pri začetnikih?

 

Sodelovanje, spraševanje in komunikacija v ekipi

Aktivno sodelovanje ter iskanje pomoči oz. rešitev znotraj ekipe gradi zaupanje, ki je ključ uspešnega začetka kariere v podjetju. Ekipa pozna širšo sliko in njena rešitev je lahko bolj primerna, predano znanje pa bolj poglobljeno. Zaradi aktivnosti v ekipi lahko le-ta lažje in natančneje svetuje pri pomanjkljivostih v znanju. Sodelovanje v ekipi tako izboljša raven komunikacije pri posamezniku ter pomaga utrjevati zdrave delovne navade.

 

Uporabo AI modelov mora spremljati zavedanje njihovih omejitev

Kot že izpostavljeno, AI modeli ne poznajo rešitev, le statistično najverjetnejše jezikovne odgovore. AI ne razume globljega konteksta, zato mu ga je potrebno podati. Prav tako ne razume vseh potencialnih varnostnih tveganj, zato ga je potrebno preverjati. Odgovornost leži na razvijalcu in ne AI modelih, zatorej je tudi končni rezultat odgovornost razvijalca. Razvijalec se mora zavedati, da je AI lahko ovira pri širšem razumevanju in karierni rasti.

 

Rezultate je potrebno kritično obravnavati

Rešitev, ki jih podajo AI orodja, ne smemo kar sprejeti brez preverjanja oz. kritične obravnave. Potrebno se je vprašati:

  • Ali je rešitev pravilna?
  • Ali razumem podano rešitev?
  • Ali je rešitev smiselna za sistem, ki ga razvijamo?
  • Ali je rešitev varna in podprta z resničnimi viri?
  • Ali so predlagane knjižnice primerne, brez varnostnih pomanjkljivosti in primerno licencirane?

 

Ali same sebe prikrajšamo z uporabo AI?

Da se z uporabo AI modelov ne bi prikrajšali, se moramo vprašati:

  • Smo se zares poglobili v problem, ki ga rešujemo?
  • Smo bili sposobni priti sami do rešitve z uporabo drugih virov (npr. dokumentacija, ekipa, skupnost)?
  • Ali nas je uporaba AI modelov polenila?
  • Ali njihova uporaba zmanjšuje naše zadovoljstvo pri delu?
  • Ali so predlagane knjižnice primerne, brez varnostnih pomanjkljivosti in primerno licencirane?

 

Mentoriranje v dobi AI modelov

Za konec pa si še oglejmo, kako se je mentoriranje spremenilo v dobi AI modelov, in zakaj postaja še pomembnejše kot prej.

 

Kako smo na Agiledropu pristopili k problematični uporabi AI modelov?

Agiledrop ima za nove razvijalce pripravljen ti. onboarding projekt, ki traja 1–3 mesece. Poudarek je na pridobivanju znanja in razumevanja, ne na hitrosti.

Zaradi opažanja slabih navad pri novih zaposlenih je uporaba AI modelov tekom onboarding projekta “preprovedana”. Velik pomen se namreč daje zaupanju in grajenju komunikacije ter odnosa med razvijalcem in mentorjem. Novi razvijalci v veliki meri pozdravljajo to omejitev in sami vidijo prednosti te odločitve.

 

Razvijalce je potrebno izobraževati o pametni uporabi AI modelov

Izkušeni mentorji, ki so svojo kariero gradili brez AI modelov se lažje zavedajo vseh pasti, ki jih prinašajo. Zavedajo se, da je delo razvijalca širše od vrstic kode. Imajo potrebne izkušnje, ki jih lahko predajo razvijalcem, s poudarkom na “alternativnih” virih informacij.

 

Mentoriranje je postalo kompleksnejše in hkrati tudi pomembnejše

Predajanje znanja in izkušenj je postalo pomembnejše pri izobraževanje razvijalcev. Za podjetja je sedaj posledično še bolj pomembno, da se zavedajo pomena dobrih mentorjev za njihov dolgoročnejši cilj. Hkrati je potreben še večji poudarek na grajenju medsebojnih odnosov.

Dobro mentorstvo lahko hitro in učinkovito neizkušenega razvijalca spremeni v pomembnega člana ekipe, ki prinaša vrednost podjetju. Seveda pa to včasih pomeni, da je nekoga potrebno najprej postaviti na realna tla – tudi zaradi tega, ker junior razvijalci zaradi uporabe AI modelov precenijo svoje dejansko znanje in razumevanje svojih sposobnosti.

 

Dostopnost mentorjev je ključna

Podjetja morajo za svoj razvoj poskrbeti za dostopnost in kvaliteto mentorjev; le-ti morajo razvijalcem ponuditi večjo vrednost od AI modelov. Mentoriranje oz. učenje prinašata veliko mero zadovoljstva, potrebno pa si je zapomniti, da ni vsak dober razvijalec nujno tudi dober mentor, saj v prvi vrsti tu pridejo do izraza človeški faktorji mentorja, kot so smisel za pedagoško delo, sposobnost prepoznavanja osebnostnih lastnosti junior razvijalca in način podajanja tako pohval kot tudi kritik.

Onboarding projekti, kot jih imamo pri Agiledropu, so tukaj neprecenljivo orodje znotraj posameznega podjetja, dokler se držijo nekaj osnovnih pravil:

  • Onboarding projekt ni nabor taskov, ki jih je potrebno rešiti, temveč mora imeti smisel. To pomeni, da se tekom projekta razvija produkt, ki ima uporabnost tudi v realnem svetu.
  • Projekt mora biti namenjen izključno učenju in vpeljevanju junior razvijalca v razvijalsko delo.
  • Projektu mora biti dodeljenega dovolj časa, da razvijalec spozna širok aspekt konceptov in razvojnih principov, ki se uporabljajo pri sodobnem razvoju.
  • Poudarek mora biti na osvajanju znanja in ne na hitrosti izdelave samega projekta.
  • Mentor mora v tem obdobju vzpostaviti zaupanje med njim in razvijalcem, ki bo pripomoglo k uspešni komunikaciji tudi po dokončanju onboarding projekta.

Z upoštevanjem teh osnovnih pravil so onboarding projekti odlična začetna točka pri osvajanju novih tehnologij in grajenju odnosov med razvijalci in mentorji.

 

Zaključek

Programiranje je spretnost, ki zahteva veliko mero kreativnosti, komunikacije, sodelovanja in tehničnega znanja. Za učenje spretnosti in pridobivanje izkušenj pa ni hitrih rešitev, oziroma so le-te lahko tudi kontraproduktivne; potreben je čas, potrpljenje in tudi z vidika podjetja določen začeten finančen vložek.

Ne glede na nadaljnji razvoj, izboljšave in integracije AI modelov, bodo podjetja vedno potrebovala dobre in izkušene razvijalce, ki bodo ideje razvili v produkte. Iz tega razloga se podjetja morajo zavedati, da se izkušen razvijalec lahko razvije samo iz neizkušenega, zato so za dolgoročnost podjetja še vedno neprecenljivi. Iz istega razloga je tudi k samemu mentoriranju potrebno pristopiti skrbno, načrtovano in strpno, z zavedanjem njegove dolgoročne pomembnosti.

Related blog posts

Blog post card background image.

Konec monolita: kdaj ločiti backend in frontend

Objavljeno  14. jul. 2025  v Razvoj 
Blog post card background image.

Kako podpiramo lokalno razvijalsko skupnost

Objavljeno  19. jun. 2025  v Podjetje, Razvoj, Skupnost 
Blog post card background image.

Osnovni UI/UX principi, ki bi jih moral poznati vsak razvijalec

Objavljeno  04. mar. 2020  v Razvoj