Martin Čaniga je senior PHP developer pre náš globálny projekt Kimbino. Jeho začiatky v IT boli ako u väčšiny začínajúcich programátorov – tvorba webov a menších systémov. Do Hyperie ho nalákal kamarát, pretože ho okrem iného zaujalo, že sa firma nebojí skúšať nové technológie. Spýtali sme sa ho, ako sa mu u nás, po viac ako troch rokoch, pracuje.
Aká bola tvoja cesta k nám do Hyperie?
Pred Hyperiou som pracoval ako developer pre rôzne firmy. Mali sme vlastnú firmu na weby s administráciou, systémy typu kniha jázd a pod. Všetko v rámci programovania v PHP-čku a trochu Pythonu. Hyperiu som vnímal už dlhšie, ale nikdy som nepremýšľal o tom, že by som sa raz stal jej súčasťou. Kamarát, ktorý vo firme pracoval, a stále pracuje, mi zavolal, či by som nechcel vyskúšať niečo nové. Spočiatku som o ponuke ani nepremýšľal, nakoniec som však súhlasil so stretnutím. Keď sa na to teraz pozerám spätne, dobre som spravil. Prišiel som na neformálny rozhovor, ani som sa nenazdal a už som tu viac ako tri roky. Aktuálne zastávam rolu kapitána tímu.
Kapitán? To znie zaujímavo. Čo si máme pod tým predstaviť?
Tak ako futbalový alebo hokejový tím potrebuje svojho kapitána, takisto som ja kapitánom toho svojho. Mojou úlohou je zabezpečiť, aby bol tím v súlade so smerovaním nášho oddelenia. Či už po kvalitatívnej alebo procesnej stránke.
Mám ťa teda oslovovať pán kapitán?
Nie :D. Som v pohode s Maťom.
Ešte by ma zaujímalo, ako sa programátor v našej firme dostane do tejto role?
V podstate som sa do tejto role dostal tak nejak prirodzene :-). Kolegovia za mnou prichádzali, keď mali nejaké technické otázky, a tiež som bol často tzv. buddym pre nových ľudí vo firme. Vďaka tomu som sa stal akýmsi lídrom.
Aký veľký je tvoj tím a ako sa vyvíjal?
Na začiatku bol vytvorený jeden malý scrum tím fungujúci na dvojtýždňových SPRINT-och. Postupne sme prijali nových ľudí a vznikla potreba rozdeliť tento tím na dva, pretože pôvodný scrum tím bol už veľký a ťažko sa riešil planning. Rozdelením sa špecifikovalo, ktorý tím čo rieši – jeden sa zameriava na feedy, druhý na spracovanie obrázkov, rozpoznanie textu z letákov a pod. Projekt Kimbino sa takto lepšie riadi. Aktuálne je v tíme sedem backend developerov.
Akým spôsobom spolupracujete na úlohách?
Každý deň máme tzv. ranné standupy pre synchronizáciu úloh, pri komplexných úlohách sa vyžaduje spolupráca viacerých developerov na jednej úlohe. Pracujeme metódou SCRUM, pri ktorej máme jasne zadefinované mantinely, v ktorých sa pohybujeme. Je to časovo ohraničené a množstvo úloh, ktoré máme vyriešiť si určíme sami na dvojtýždňových SPRINT-och.
Čo sa ti na tomto spôsobe práce páči?
Vďaka dobrej organizácii práce formou SPRINT-ov je popri hlavných úlohách aj čas na sebarealizáciu napríklad na prípravu composer balíčkov, ucelených častí kódu, ktoré sa dajú použiť v rámci firmy či open-source balíkov. Takisto je čas na refactoring – znižovanie technického dlhu, a možnosť sa vždy niečo popri tom naučiť. Ďalej sa mi veľmi páči atmosféra vo firme – hocikedy si zahráme NHL na PlayStation so šéfom, máme pravidelné tímové hyper-raňajky, ping-pong, stolný futbal,… Keď sa ešte trackovala dochádzka, mali sme takú polhodinku na platené voľno – využívali sme ju na kolobežkovanie, prechádzky či hranie NHL. Teraz už zapisovanie dochádzky nie je :-). Je tu naozaj veľká dôvera, ale človek si musí dávať pri tom pozor…
Pozor na čo?
Na to, aby sa dôvera nestratila. Rovnako ako v manželstve, keď podvedieš svojho partnera, tá dôvera tam už nie je, alebo je veľmi krehká a už to potom nie je ono. Aj my tu máme vzťah zamestnanec – zamestnávateľ, a keď by som sa flákal alebo „podvádzal“, dôvera sa stratí.
Ako riešiš pracovnú disciplínu pri takej voľnej firemnej kultúre?
Treba si uvedomiť, že takýto voľný prístup tu vždy nebol – ľudia si museli vybudovať u vedenia dôveru v to, že konajú v najlepšom záujme firmy. Niekomu sa môže disciplína realizovať doma ťažšie. Ja mám vlastnú izbu, tam sa zavriem a pracujem. Stále si vediem za deň štatistiku toho, čo spravím pre seba. Úlohy máme v systéme Jira na sledovanie ich stavov, čiže kontrola tam je, len nie je časová ako pri dochádzke. Čas si sledujem, aby som osobne vedel, koľko som na čom strávil, či už nerobím príliš dlho :-D.
A stáva sa, že pracuješ dlho?
Občas áno, ale manželka mi to zatiaľ toleruje :-D.
Na čom aktuálne pracujete v tíme?
Máme to rozdelené na niekoľko oblastí, ale vo všeobecnosti sa popri štandardných úlohách snažíme rozbiť jeden veľký monolit na menší, s podporou viacerých služieb. Tie kontajnerizujeme do Dockera a cez Kubernetes nasadzujeme do produkcie. Veľkou témou je u nás aj feedová služba, B2B rozhranie a prechod frontendu na Vue.js.
Čo by si odkázal mladým junior developerom?
Nebojte sa výziev. Všetko je možné, ak na to idete logicky. A keď nie, tak niekedy jedna otázka na kolegu zaberie menej času ako prezeranie stackoverflow-u.