Davne 2005. godine, na domaćoj IT sceni pojavila se tvrtka s dvojicom zaposlenika, studenata, strastvenih prema tehnologiji i razvoju softvera. Danas smo tvrtka s više od 220 zaposlenih u uredima u Zagrebu, Varaždinu, Ljubljani te New Yorku.
Profesionalni, ali ne i službeni, u opuštenoj atmosferi i koristeći suvremene tehnologije stvaramo funkcionalna i elegantna rješenja za klijente iz područja financija, telekomunikacija, zdravstva, turizma, medija te drugih industrija. Naš tim čine mobile i web developeri, UX/UI dizajneri, projektni voditelji i mnogi drugi talentirani stručnjaci.
Da naš ugled nije samo slovo na papiru svjedoče brojna priznanja struke, od kojih izdvajamo nagradu za najbolju HR praksu, Zlatni indeks, Awwwards, Site of the Day, Mixx i SoMo. Osim toga, tvrtka je već šest puta zaradila plasman na Deloitte-ovim listama uspješnosti i rasta.
Energiju uspjeha i postignuća volimo širiti i na druge, pa tako više puta godišnje organiziramo edukativne tečajeve, natjecanja i evente za studente kako bi im pomogli da postanu konkurentniji na informatičkom tržištu koje se neprestano razvija. Osobito smo ponosni na Infinum Academy, besplatnu akademiju u sklopu koje studenti uče napraviti vlastitu aplikaciju od nule. Moguće je birati između JavaScript, iOS, Android i Backend tehnologija, a radimo i u Javi, i to projekte vezane za IoT, machine learning, blockchain i slično.
Kada ne radimo na projektima i ne predajemo na akademiji, održavamo talkse za IT zajednicu, šaljemo informativne newslettere, pišemo članke ili koristimo timski budžet na neku društvenu aktivnost. Da nam važnost edukacije i rasta zaposlenika nije floskula dokazuje edukacijski budžet alociran svakom zaposleniku, a koji može trošiti na kupovinu knjiga, ili pak za plaćanje kotizacija za predavanja ili konferencije.
Nema smisla prepričavati kako izgleda prosječan dan programera, koje tehnologije koriste i kako su zadovoljni svime time, pa smo zato “mikrofon” prepustili njima samima.
Luka Jurić – Java Engineer
Nekad na posao dođem u 8 sati, a nekad sekundu prije početka dnevnog standupa, ovisno o privatnim planovima toga dana. Fleksibilno radno vrijeme dopušta nam da si krojimo dan po želji. Standup uvijek imamo u isto vrijeme, u 10h, i na njemu ukratko prolazimo statuse implementacije novih funkcionalnosti i popravljanja bugova te iznosimo planove za dan pred nama. Servise implementiramo koristeći SpringBoot 2.0+ Framework i Javu 8, te ih buildamo koristeći Gradle. Kad smo kod “bildanja”, Infinum nam subvencionira teretanu i druge sportske aktivnosti kojima se neki bave prije, neki poslije, a neki sredinom radnog dana.
Za migracije baza podataka koristimo Liquibase, a zatim JOOQ iz njih generira modele koje koristimo u sloju repozitorija. WhiteSource analizira svaki dependency te javlja postoje li problemi poput sigurnosnih propusta ili licenci zbog kojih se dependency ne smije koristiti, a Checkstyle nas upozorava na odstupanja od dogovorenog stila pisanja koda. Taj stil odgovara onome što definira Spring Framework, a postavljen je i u IntelliJ IDEA-i kako bismo tijekom razvoja bili sigurni da ga se pridržavamo. API je formatiran po JSON:API standardu (https://jsonapi.org/) i dokumentiran u RAML formatu iz kojeg se generira HTML. Testove pišemo u JUnitu 4, a koristimo Mockito, Wiremock, Testontainers i AssertJ. Nakon buildanja aplikacije i izvršavanja testova, SonarQube vrši analizu koda i kupi rezultate pokrivenosti koda testovima koje pruža JaCoCo, te kreira izvješće o raznim kontrolnim parametrima na temelju čega se zaključuje zadovoljava li kod zadane kriterije i može li ići u produkciju. Aplikacije se u produkciji vrte unutar Docker containera koji su deployani na AWS-u, a za CI pipeline koristimo Jenkins.
Edukacijskim budžetom firma nas potiče na usvajanje novih znanja, a isto postižemo i Springfield sastancima na kojima članovi Java tima jedni drugima predstavljaju nove tehnologije, druge JVM jezike i dobre prakse.
Domagoj Latečki – Java Engineer
Radni dan mi obično počinje u 9 sati. U 9:15 imamo standup sastanak, prije kojeg taman imam vremena napraviti kavu i pročitati mailove. Standup obično traje 15-20 minuta te nakon toga počinje glavni dio posla koji uključuje popravljanje bug-ova ili implementaciju novih feature-a, ovisno kako kada. U timu se izmjenjujemo na popravljanju bug-ova i rada na novim featuri-ma. Kolege u mom timu su iz Hrvatske i Nizozemske (oni rade remotely), pa se većina komunikacije odvija putem poruka i poziva. Većinom komuniciramo putem poruka, ali ako se radi o nekoj većoj cjelini koju treba iskomunicirati, onda dogovorimo poziv preko Microsoft Teams-a. Između 11 i 12 sati obično odemo na ručak kao tim ili u manjim grupama. Ponekad bude još koji sastanak kroz dan, ali uglavnom je jutarnji standup jedini. Tehnologije koje koristimo su uglavnom vezane uz programski jezik Scala, ali počinjemo polako migrirati stvari na Javu i možda u budućnosti na Kotlin. Za buildanje servisa koristimo SBT i Gradle, ovisno o jeziku koji servis koristi. Java i Kotlin servisi koriste Gradle, dok Scala servisi koriste SBT. U Scala servisima koristimo Cats biblioteku za funkcijsko programiranje. Zbog toga, Google pretrage znaju nekad izbaciti slike mačaka, ali je lako podesiti pretragu da traži ono što treba. Uostalom, tko ne voli mačke i malo smijeha? Ostale tehnologije koje koristimo su Http4s i Circe za definiranje HTTP endpointa i serializaciju/deserializaciju JSON-a, Doobie za funkcijski pristup bazi, AMQP za komunikaciju porukama između servisa, te MQTT za komunikaciju servisa i hardware-a. Za testiranje koristimo ScalaTest i ScalaMock.
Više o tome kako pojedinom timu izgleda dan možeš vidjeti na našem Instagramu u highlightsima. Ako želiš otići korak dalje od proučavanja i možeš se zamisliti kao dio tima, svakako nam se javi. 🙂