Naslovna » Full Stack Developer školovanje » Scrum, Kanban, SAFe – zašto junior koji ne zna agilne procese gubi bodove već na prvom intervjuu

Scrum, Kanban, SAFe – zašto junior koji ne zna agilne procese gubi bodove već na prvom intervjuu

Full Stack Developer školovanje Kanban Node React Scrum Vue
Scrum, Kanban, SAFe - zašto junior koji ne zna agilne procese gubi bodove već na prvom intervjuu

Zamislite ovaj scenario. Dva kandidata sedaju na tehnički intervju u istoj IT kompaniji, isti dan. Oba znaju React. Oba su radila CRUD aplikacije. Oba mogu da napišu SQL upit bez greške.

Jedan od njih dobija poziv za sledeći krug. Drugi ne!

Razlika nije bila u tehničkom znanju. Bila je u tome što je jedan kandidat razumeo kako IT timovi zapravo rade – a drugi nije.

Tehničko znanje je ulaznica, ne prednost

Postoji tačka u procesu selekcije koju mnogi kandidati ne primećuju: tehnička pitanja nisu tu da pokažu ko je najbolji programer u sobi. Ona su tu da eliminišu one koji nisu dovoljno dobri.

Kad preostanu kandidati koji su prošli tehnički prag – počinje pravo filtriranje. I tu se pita nešto sasvim drugo.

Kompanija ne zapošljava programera koji će pisati kod u izolaciji. Zapošljava člana tima koji će učestvovati u planiranju, preuzimati zadatke, davati procene, učestvovati na code reviewu, komunicirati sa kolegama i isporučivati funkcionalne delove softvera u redovnim intervalima.

Sve to ima ime. Zove se agilni razvoj softvera. I od kandidata se očekuje da zna šta to znači – ne kao apstraktna fraza, nego kao konkretan način rada.

Svaka kompanija koja zapošljava softverske inženjere radi po nekom obliku agilnog procesa. Ući na intervju bez tog znanja je kao ući na ispit bez jednog od predmeta.

Šta su Scrum, Kanban i SAFe – i zašto ih intervjueri pitaju

Agilni razvoj nije jedna metodologija – to je porodica pristupa koji dele zajednički princip: sofver se isporučuje u malim, čestim iteracijama, a tim se prilagođava promenama umesto da slepo prati plan napravljen na početku projekta.

Tri najčešće metodologije koje ćete sresti na srpskom tržištu:

Scrum

Najrasprostranjeniji agilni okvir u srpskim IT kompanijama. Rad je organizovan u sprinteve – vremenski ograničene periode (obično dve nedelje) u kojima tim preuzima određen broj zadataka i na kraju isporučuje funkcionalan softver. Ključne ceremonije: sprint planning, daily standup, sprint review, retrospektiva. Uloge: Product Owner, Scrum Master, Development team.

Kanban

Fokus je na vizualizaciji toka rada kroz board sa kolonama (To Do, In Progress, Done) i ograničavanju broja zadataka koji se rade istovremeno. Manje formalan od Scruma, češći u manjim timovima i u fazi održavanja softvera.

SAFe (Scaled Agile Framework)

Primenjuje se u većim organizacijama koje koordinišu više agilnih timova. Manje verovatno da ćete ga sresti na juniorskom intervjuu – ali poznavanje koncepta govori o ozbiljnosti kandidata.

Na intervjuu za juniorsku poziciju, pitanja o agilnim procesima izgledaju ovako: Šta je sprint planning? Šta radite na daily standapu? Šta je Definition of Done? Kako se ponašate kad ne stignete da završite zadatak do kraja sprinta? Šta je retrospektiva i čemu služi?

Kandidat koji odgovara sa „pa, to je kad tim planira šta će raditi“ – nije isti kao kandidat koji može da opiše kako je u svom školovanju prošao kroz sprint planning, procenio zadatke, sarađivao sa timom i isporučio funkcionalnost na kraju sprinta.

Intervjuer ne traži definiciju iz knjige. Traži dokaz da ste zaista tako radili.

Zašto teorijsko znanje Scruma nije dovoljno

Postoji zamka u koju upada dosta kandidata: pročitaju Scrum Guide, naučite termine, i misle da su spremni. Na intervjuu zvuče kompetentno – sve dok ih ne pitaju nešto konkretno.

Šta se desi na retrospektivi kad je sprint bio loš? Kako reagujete kad Product Owner promeni prioritete usred sprinta? Šta je vaša uloga na code reviewu? Kako procenjujete zadatak koji nikada niste radili?

Na ova pitanja ne može da odgovori neko ko je čitao o Scrumu. Može samo neko ko je kroz njega prošao – ko je sedeo na planiranju i procenjivao zadatke, ko je završio sprint i ušao na review sa timom, ko je na retrospektivi rekao „ovo nam nije funkcionisalo“.

Razlika između teorijskog i praktičnog znanja Scruma je ista kao razlika između čitanja o vožnji bicikla i zapravo voziti bicikl. Jedna vam pomaže da razumete terminologiju. Druga vas čini funkcionirajućim članom tima.

Šta intervjueri zaista gledaju – iz ugla kompanije

Razgovarali smo sa tehničkim vođama iz partnerskih kompanija. Konsenzus je jasan.

Junior koji razume agilne procese šalje nekoliko važnih signala odjednom:

  • Zna kako da komunicira napredak i prepreke – ne čeka da ga pitaju, sam prijavljuje kad zapne.
  • Razume kako se posao deli i procenjuje – ne uzima previše, ne podzadužuje se.
  • Prihvata iterativnost – ne insistira na savršenom rešenju pre nego što nešto isporuči.
  • Zna šta je code review i kako se ponaša u njemu – prima i daje feedback konstruktivno.
  • Razume da softver gradi tim, ne individua – i ponaša se u skladu s tim.

Ovi signali govore kompaniji: ovaj junior neće trebati tri meseca da se navikne na način rada. Biće produktivan član tima od prvog sprinta.

„Tehničko znanje mi govori da li osoba može da piše kod. Kako priča o svom iskustvu sa timskim radom govori mi da li će moći da funkcioniše u našem timu. To je ono što na kraju odlučuje.“ – tehnički vođa tima, partnerska kompanija FTN Informatike

Kako FTN Informatika uči Scrum – kroz praksu, ne kroz teoriju

Većina programa koji pominju Scrum posveti mu jedno predavanje, jedan PDF i par terminoloških pitanja na testu. Student izlazi sa znanjem da je sprint „dvonedeljni period rada“.

FTN Informatika je ovo rešila drugačije. Scrum nije tema predavanja – Scrum je način na koji funkcioniše treći modul programa.

Studenti u trećem modulu rade u timovima po Scrum okviru. Planiraju sprinteve, procenjuju zadatke, koriste Trello za praćenje napretka, drže review na kraju svakog sprinta i prolaze kroz retrospektivu sa mentorom. Projekat koji se razvija tokom modula nije vežba – to je realan softverski projekat sa React frontom, ASP.NET bekendom i bazom podataka, razvijen u iteracijama.

Kad takav student uđe na intervju i intervjuer pita „šta ste radili na sprint planiranju“ – student ne prepričava definiciju. Opisuje šta je radio prošlog meseca.

Scrum se ne uči čitanjem. Uči se radeći. FTN Informatika to radi u trećem modulu – kroz tromesečni projekat koji se razvija po Scrum okviru.

Šta je Trello i zašto svi traže da ga znate

Na ogласima za junior pozicije često se pojavljuje: „poželjno poznavanje Jire ili Trella.“ Malo ko objašnjava zašto.

Trello i Jira su alati za vizualizaciju i praćenje rada tima. U Scrum timu, svaki zadatak (user story ili task) postoji kao kartica na boardu. Kada preuzimajte zadatak – premijaštate karticu u „In Progress“. Kad završite – u „Done“. Svako u timu i van tima može da vidi u svakom trenutku šta se radi, šta čeka, šta je gotovo.

Ovo nije komplikovano. Ali razlika između kandidata koji je zaista koristio Trello na projektu i kandidata koji ga je samo video na screenshotu je vidljiva čim počnete da pričate o konkretnom iskustvu.

FTN Informatika studenti koriste Trello tokom trećeg modula na realnom projektu. Ne kao vežbu – kao svakodnevni alat tima.

Šta učiti i kojim redosledom

Ako tek počinjete da istražujete agilne procese, preporučeni redosled je sledeći.

  1. Razumite zašto agilan razvoj postoji

Pre nego što naučite termine, razumejte problem koji agilni razvoj rešava: softver koji se razvija godinu dana po unapred definisanom planu najčešće ne odgovara potrebama korisnika kad se isporuči. Iterativni pristup rešava to isporučivanjem malih delova često, uz kontinualnu povratnu informaciju.

  1. Naučite Scrum – termine i ceremonije

Pročitajte Scrum Guide (besplatan, dostupan online, traje sat vremena). Razumite šta je sprint, sprint planning, daily standup, sprint review i retrospektiva. Naučite razliku između Product Ownera, Scrum Mastera i Development tima.

  1. Primenite to na projektu

Ovo je korak koji ne možete preskočiti. Uzmite projekat – makar lični – i organizujte rad po Scrum okviru. Napravite Trello board, podelite posao na zadatke, radite u sprintevima.

Ili – uđite u program gde je Scrum deo načina rada od prvog dana trećeg modula.

Jedan savet za intervju

Ako ste već prošli neko školovanje ili radili na projektu u timu, na intervjuu budite konkretni. Ne govorite „znam Scrum“. Opišite šta ste zaista radili:

  • Radili smo u dvonedeljnim sprintevima. Na planiranju smo procenjivali zadatke u story pointsima.
  • Na daily standapu sam javljao šta sam završio i šta planiram. Kad sam zapeo, rekao sam to odmah.
  • Na kraju sprinta smo imali review sa mentorom gde smo pokazali šta smo isporučili.
  • Na retrospektivi smo pričali šta je funkcionisalo i šta bismo promenili.

Svaka od ovih rečenica govori intervjueru više od jednosatne diskusije o Agile Manifestu.