Senior Software Engineer, Backend

Engineering - Remote

FishingBooker je najveća online travel platforma za rezervisanje ribolovačkih putovanja širom sveta koju je prošle godine posetilo preko 10.000.000 korisnika iz 100 različitih zemalja sveta. 

Još od 2013. u FishingBooker-u razvijamo sopstveni proizvod za svoje korisnike, potpuno autonomno, bez spoljnih investicija. To omogućava da radimo brz, iterativni razvoj uz čest deploy koda. Verujemo u kvalitetna rešenja, zdrave i otvorene ljudske odnose i mogućnost da se stalno napreduje.

Kroz redovne A/B testove i "data-driven" pristup, ostvarujemo pobede i donosimo odluke koji nisu bazirane na ličnim stavovima pojedinaca, već su potkrepljene činjenicama i brojevima. Svako ima priliku da učestvuje u definisanju pravca u kome će se proizvod razvijati, nezavisno od funkcije, vremena provedenog u firmi i sl.

O tebi

Ti si Senior, Lead ili Principal inženjer sa dosta iskustva u razvoju veb aplikacija i visokim standardima kvaliteta pri razvoju servisa i ostale infrastrukture. Jasno nam je da nećeš znati kako naši sistemi funkcionišu od starta i ne očekujemo to od tebe. Najbitnije od svega je da imaš dobar temelj opštih veština za razvoj softvera, tehnički dizajn, debagovanje i rad u timu. 

Ako poseduješ ove karakteristike, postoji velika šansa da ćeš se dobro uklopiti u poziciju:

  • 5+ godina iskustva u backend razvoju veb aplikacija.

  • Iskustvo u radu na skalabilnim veb aplikacijama dizajniranim za krajnje korisnike (na primer, dobro dizajnirani API, messaging tehnologije, upotreba efikasnih algoritama).

  • Odlično poznavanje objektno orijentisanih principa i web frameworka.

  • Dobro poznavanje baza podataka, uključujući pisanje kompleksnih upita i njihovu optimizaciju.

  • Iskustvo i razumevanje vrednosti upotrebe dobrih praksi poput A/B testiranja, continuous integration i automatizovanog testiranja.

  • Razumevanje struktura podataka i različitih pristupa rešavanja problema, kao i sposobnost za donošenje odluka na osnovu trade off-a.

  • Inženjerska diploma ili odgovarajuće iskustvo umesto toga. Diploma, idealno u računarstvu ili softverskom inženjerstvu.

Plata i uslovi

  • FishingBooker zapošljava softverske inženjere po principu ugovora o radu. 

  • Plata zavisi od nivoa senioriteta koji procenjujemo u odnosu na ostatak tima u FishingBooker-u.

  • Proaktivni smo oko deljenja plata, u skladu sa tim ispod mogu da se vide rasponi za svaku od pozicija, bez da prolaziš kroz nekoliko krugova intervju procesa.
     

    • Senior Software Engineer: od 3.000 EUR do 3.575 EUR neto* (moguće menjati deo plate za equity po želji)

    • Lead Software Engineer: od 4.225 EUR do 5.050 EUR neto* (moguće menjati deo plate za equity po želji)

    • Principal Software Engineer: 5.900 EUR do 6.975 EUR neto* (moguće menjati deo plate za equity po želji)

  • Na svakih šest meseci ćeš od svog tim lidera dobiti detaljan performance review sa jasnim instrukcijama kako da napreduješ dalje u okviru firme. Imajući to u vidu, imaćeš priliku za unapređenje i povišicu u skladu sa tempom kojim se razvijaš i standardnim rastom inženjerskih plata na tržištu,

  • Imaš slobodu da samostalno definišeš svoje radno vreme, dokle god ono dozvoljava dobru saradnju sa tvojim kolegama, 

  • Možeš da radiš remote, a možeš i iz kancelarije

  • 23 dana plaćenog odmora (do najviše 25 dana zavisi od dužine staža),

  • Privatno zdravstveno osiguranje,

  • Pristup knjigama, treninzima i kursevima,

  • Apple MacBook Pro, uz Dell Ultrasharp monitor, i miš/tastatura po tvom izboru.

  • Ne moraš da budeš pasionirani ljubitelj pecanja. Ne moraš išta da znaš o pecanju. Ali, imamo tradiciju da svake godine počastimo celu firmu ribolovačkim putovanjem. 2019. smo išli u Rovinj, Hrvatsku, a 2018. u Ujedinjene Arapske Emirate, ove godine planiramo Egipat.

O poslu

Pridružićeš se Backend timu kao Senior, Lead ili Principal inženjer. Tim se trenutno sastoji od 9 ljudi i zadužen je za izgradnju i održavanje platforme i servisa na koje se oslanja FishingBooker proizvod i sve njegove funkcionalnosti.

Imaćeš slobodu da radiš posao kvalitetno, sa podrškom kolega, sarađujući sa ljudima koji su pokrenuli firmu i još uvek je vode na dnevnoj bazi.

Sarađivaćeš blisko sa Product, Core, Mobile, DevOps i QA timovima u šestonedeljnim razvojnim ciklusima, koji su praćeni dvonedeljnim pauzama rezervisanim za planiranje narednog ciklusa, smanjivanje tehničkog duga i isprobavanje novih ideja.

Backend tim u FishingBooker-u je zadužen za sledeće stvari:

  • Izgradnja servisa i API-ja koji podržavaju nove i postojeće funkcionalnosti za FishingBooker veb i mobilne aplikacije.

  • Rad sa produkt menadžerima, dizajnerima, i frontend inženjerima na planiranju razvoja za usavršavanje proizvoda, kako sa tehničke, tako i sa biznis strane.

  • Saradnja sa DevOps inženjerima u timu radi definisanja, validacije i evolucije načina na koji gradimo, testiramo i vršimo deploy koda u servisno orijentisanoj arhitekturi.

  • Optimizacija FishingBooker sajta i aplikacija sa fokusom na brzinu i performanse.

  • Učestvovanje u tehničkom dizajnu i kod review sesijama.

  • Identifikovanje i usavršavanje dobrih praksi za backend razvoj.

  • Upravljanje našom cloud infrastrukturom, kao i provisioning, deployment, monitoring i on call sistema u saradnji sa DevOps inženjerima.

Karakteristike pristupa razvoju veb aplikacija:

  • Tehnički “stek” je baziran na PHP/MySQL, uz podršku NGINX servera čijom konfiguracijom upravlja Docker.

  • Od frontend tehnologija koristimo naš posebni build Bootstrap-a zajedno sa React / Redux i React Native za mobilne aplikacije.

  • Za monitoring, pouzdanost i upravljanje incidentima koristimo mešavinu alata kao što su New Relic, Elasticsearch, Pagerduty i nekoliko tipova automatizovanog testiranja (Unit, API E2E, Selenium).

  • Ozbiljno shvatamo i temeljno pristupamo tehničkom planiranju i kod review-ima za sve funkcionalnosti i infrastrukturu aplikacija koje gradimo kako bismo obezbedili njihovu dugoročnu održivost. Stremimo ka tome da uvek ostavimo kod u boljem stanju nego što smo ga našli prilikom svakog spajanja pull request-a.

  • Ne ostavljamo slučaju kakav će uticaj napravljene izmene imati na korisničko iskustvo i ne zasnivamo odluke na “osećaju”. Naprotiv, oslanjamo se na A/B testiranje, detaljnu instrumentaciju i pristup analitici za donošenje odluka informisanih podacima.

Da dobiješ ideju na čemu ćeš raditi, evo projekata na kojima smo radili ili trenutno radimo:

  • Izgradnja kalendara koji omogućava 40% svih profesionalnih ribolovačkih vodiča da upravljaju njihovim rezervacijama u realnom vremenu.

  • Podešavanje MySQL klastera sa replikacijom, bekapom i automatskim oporavkom od otkaza u realnom vremenu “od nule”, radi povećanja dostupnosti, pouzdanosti i brzine naše glavne relacione baze od 300GB+.

  • Refaktorisanje samo-optimizujućeg algoritma za rangiranje ponuda na našem sajtu kako bismo istakli najbolje opcije na osnovu istorijskih rezultata, ocena korisnika i verovatnoće otkazivanja.

  • Implementacija brzog, potpuno automatizovanog provisioning sistema za podizanje staging i razvojnih okruženja, sa minifikovanom kopijom produkcionih podataka radi uštede troškova servera.

  • Konfigurisanje novog Continuous Integration sistema za automatizovane provere kvaliteta koda, testabilnost i bezbednost deploy-a pomocu Github Actions.

  • Dizajn real-time messaging sistema sa automatskim filtriranjem osetljivog sadržaja, kojim naši korisnici razmene preko 1,5 miliona poruka godišnje.

  • Integracija Google AI infrastrukture za kontekstualnu analizu korisnički postavljenih fotografija i obeležavanje entiteta poput vrsta riba, brojeva telefona i ljudi radi lakog pretraživanja i administracije.

Radujemo se tvojoj prijavi! ✌️

 

Interested in applying?

We want to work with only the best engineers!

Before you apply, we have a riddle for you:

"The response header of this page will lead you towards the answer."