Projekat 03 · Platforme i dizajn sistemi
Standardi koda zbog kojih je prihvatanje AI koda postalo jeftino
Standarde tima pretvorili smo u provjere koje se pokreću prije svakog commita i u CI-ju. Propusnost je porasla za otprilike 50%, prema vremenu ciklusa tiketa.
50%
Propusnost tima porasla je za otprilike 50%, prema procjeni iz vremena ciklusa tiketa
Testovi se više nisu pisali ručno
tim ih je generisao pomoću Claude Codea, a to je važno jer su testovi prvo što otpadne pod pritiskom roka
Priča u 5 koraka
Stack
- Claude Code
- pre-commit hookovi
- CI
- ESLint
- TypeScript
- Figma
01 · Kontekst
Do 2026. tim je svaki dan koristio Claude Code za komponente, testove i integracije, a dizajn je bio povezan s Figmom.
Do 2026. tim je svaki dan koristio Claude Code za komponente, testove i integracije, a dizajn je bio povezan s Figmom. Propusnost tima porasla je za otprilike 50%, prema procjeni iz vremena ciklusa tiketa, a testove tim više nije pisao ručno.
AI premješta posao s pisanja koda na pregled, a ukupnog posla ne bude manje. Ako je pregled već usko grlo, više generisanog koda samo pogoršava stvar, pa je pregled morao postati jeftiniji prije nego što je AI ušao u upotrebu.
Počeli smo od pravila: inženjerske standarde napisali smo kao izvršne provjere koje se provode prije svakog commita i ponovo u CI-ju, sa zasebnim skupom pravila za svaki codebase, jer su backendu i biblioteci komponenti potrebna različita pravila.
02 · Nije se smjelo mijenjati
Konvencija za koju niko ne odgovara samo je prijedlog: poštuje se dok neko ima vremena za pažljiv pregled, a prestaje prve sedmice kad niko nema.
Konvencija za koju niko ne odgovara samo je prijedlog: poštuje se dok neko ima vremena za pažljiv pregled, a prestaje prve sedmice kad niko nema.
Konvencije se prestanu poštovati i u disciplinovanim timovima, jer ništa ne osigurava da se dogovor drži. Na sistemu od devetnaest repozitorija, s četiri developera u timu od dvanaest ljudi, „dogovorili smo se da radimo ovako“ za otprilike jedan kvartal upola se zaboravi. Već sam vidio kuda to vodi: isti helper za red poruka kopiran je u sedam repozitorija, jer to ništa nije spriječilo.
Kad u rad uđe AI, mekan standard postaje još slabiji: generisani kod stiže brže nego što ga čovjek može pažljivo pročitati, pa od standarda ostane samo ukras.
Zato je zahtjev bio da standarde provjeravaju alati, kako bi prihvatanje koda koštalo manje od pisanja.
03 · Šta smo uradili
Pravila napisana kao kod
Standarde smo napisali kao provjere koje pokreću alati, pa nijedno pravilo nije zavisilo od toga hoće li se neko sjetiti vodiča za stil. Među njima su bila:
- Nema
any, uz propisan način deklarisanja tipova - Komponenta ne smije preći 200 linija
- Svaki API poziv mora imati tip zahtjeva i tip odgovora
Zaseban skup pravila za svaki codebase
Web aplikacija, backend i biblioteka komponenti imali su svaki svoj skup pravila. Jedan skup za backend i dizajn sistem bio bi ili toliko labav da u jednom od njih nema smisla, ili toliko strog da se u drugom rutinski zaobilazi.
Odluka o tome koja su pravila važna u kojem codebaseu bila je dio mog posla kao tehničkog lidera.
Tri nivoa ozbiljnosti, po fazi
Isto pravilo imalo je drugačiju ozbiljnost u svakoj fazi:
| Faza | Ozbiljnost | Zašto |
|---|---|---|
| Tokom razvoja | upozorenje | kaže vam, a ne prekida posao |
| Pre-commit hook | greška | zaustavlja problem prije nego postane zajednički |
| CI | greška | kapija koju niko ne može preskočiti |
Kad ozbiljnost raste po fazama, pravilo je prisutno cijelim putem, a blokira samo tamo gdje je blokiranje jeftino. Većina timova izabere jednu ozbiljnost i dobije jedan od dva problema: ako je prestroga, ljudi se bore s alatima ili ih isključe, a ako je preblaga, pravilo se postepeno prestane poštovati. Ovaj dio postavke preporučio bih svakom timu.
Raspored provjera slijedi istu logiku. Formatiranje i linting idu u hook, jer su brzi i lokalni, a tipovi i testovi u CI, jer su spori i konačni. Hook koji traje trideset sekundi počne se zaobilaziti već za sedmicu.
AI u svakodnevnom radu
Kad su provjere bile na mjestu, Claude Code je ušao u svakodnevnu upotrebu za komponente, testove i integracije, a dizajn je povezan s Figmom.
Redoslijed je bio važan jer je generisani kod jeftin samo kad je jeftino i njegovo prihvatanje, a za to dosadnu polovinu umjesto čovjeka mora provjeravati nešto drugo.
04 · Rezultat
Propusnost tima porasla je za otprilike 50%, prema procjeni iz vremena ciklusa tiketa
- Propusnost tima porasla je za otprilike 50%, prema procjeni iz vremena ciklusa tiketa
- Testovi se više nisu pisali ručno: tim ih je generisao pomoću Claude Codea, a to je važno jer su testovi prvo što otpadne pod pritiskom roka
- Standardi su se provodili jednako, bez obzira na to ko je radio pregled koda i da li ga je iko radio
Gledano unazad, najvrjednije pravilo bila je granica od 200 linija po komponenti, vrjednija od pravila o tipovima i API ugovora. Isplaćuje se godinama, jer tjera na razlaganje čim se nešto počne širiti, dok je razdvajanje još lako.
05 · Šta bih uradio drugačije
Brojka od 50% je procjena iz vremena ciklusa tiketa, a ne kontrolisano mjerenje.
Brojka od 50% je procjena iz vremena ciklusa tiketa, a ne kontrolisano mjerenje.
METR je u julu 2025. proveo randomizovano kontrolisano istraživanje sa 16 iskusnih developera, na 246 stvarnih zadataka u repozitorijima u kojima su radili godinama. Developeri su predvidjeli da će ih AI ubrzati za 24%, a poslije su izjavili da su bili 20% brži. Mjerenje je pokazalo da su bili 19% sporiji, pa je razlika između osjećaja i stvarnosti iznosila 39 procentnih poena.
METR je u međuvremenu promijenio dizajn studije i rezultat tretira kao historijski, dijelom zato što je u nastavku mnogo developera odbilo učestvovati ako bi morali raditi bez AI-ja. Glavni nalaz i dalje vrijedi kao upozorenje: brzina koju ljudi sami prijave nije pouzdana, ni onda kad im laska.
Postavka u ovom angažmanu razlikovala se od one u studiji na načine koji bi mogli biti bitni. METR je mjerio pojedinačne developere u kodu koji su poznavali pet godina, a AI su koristili ad hoc u editoru, s alatima s početka 2025. Ovdje je tim radio na proizvodu u aktivnom razvoju, s pravilima koja se provode automatski i s alatima iz 2026. Zbog tih razlika moguće je da je 50% stvarna brojka, ali one to ne dokazuju.
Izmjerio bih vrijeme ciklusa kako treba: tri mjeseca prije i tri mjeseca poslije, iz podataka koje je tim već imao. Podaci su bili dostupni, a ja sam umjesto toga procijenio.
Povezane usluge
Usluge koje se oslanjaju na ovaj projekat.
- Kako možemo sarađivatiDeveloper u vašem timuStandardi koda pretvoreni u automatske provjere i tri developera koja smo iz jedne specijalnosti doveli do full-stack rada.
- AIRevizija i spašavanje aplikacijeU timu koji kod piše uz Claude Code pre-commit hook i CI provjeravaju pravila kao što su ova: nijedna komponenta ne smije imati više od 200 linija, any u TypeScriptu nije dozvoljen, a svaki API poziv mora imati deklarisan tip zahtjeva i tip odgovora.
- Web razvojArhitektura React SPANa istom marketplaceu pravila u buildu tražila su da svaki API poziv navede tip zahtjeva i tip odgovora i da nijedna komponenta ne bude duža od 200 linija.
- Cloud i DevOpsCI/CD i standardi kodaPravila na devetnaest repozitorija jednog američkog marketplacea, među kojima su zabrana tipa any, najviše 200 linija po komponenti i tipiziran zahtjev i odgovor za svaki API poziv. Provjeravaju ih i pre-commit hook i CI.
- Cloud i DevOpsAutomatizovano i end-to-end testiranjeNa američkom marketplaceu za usluge kamionima tim je, čim su pravila uvedena u CI, prestao ručno pisati testove i počeo ih generisati pomoću Claude Codea.
- AIAI u vašem inženjerskom timuAmerički marketplace s timom od dvanaest ljudi, gdje je propusnost tima porasla za otprilike 50% kad su se pravila počela provjeravati prije commita i u CI-ju. Brojka je procijenjena iz vremena ciklusa tiketa.
- AIAI agenti i LLM integracijaJezički model u svakodnevnom inženjerskom radu: Claude Code piše integracije, komponente i testove za američki marketplace, a ništa što napiše ne ulazi u kod dok ne prođe automatske provjere tima.
- Dizajn sistemiFigma u kodTim od dvanaest ljudi na američkom marketplaceu za usluge kamionima. Tokom 2026. dizajn je bio povezan s Figmom, a tim je svaki dan koristio Claude Code.
- Kako možemo sarađivatiTehničko vođstvoInženjerski standardi za svaki codebase posebno, s provjerom u CI-ju, a tek zatim AI u svakodnevnom radu tima. Propusnost tima povećala se za oko 50%, što smo procijenili poređenjem trajanja ciklusa tiketa.
Projekat 03
Radite na sličnom problemu? Odgovaramo u roku od jednog radnog dana.
Prvi poziv traje 30 minuta i ni na šta vas ne obavezuje.