To seniorutviklere til Ruter
Oppstart: Senest 17.08.2020
Varighet: 31.01.2021, med opsjon på 6 + 6 + 6 mnd
Omfang: 100%
Arbeidssted: Oslo
Frist: 05.06 kl 12:00
Beskrivelse av anskaffelsen
Ruter ønsker å styrke team Sanntid med en til to senior utviklere som skal bidra med videreutvikling av sanntids- tjenestene og plattformen. Team Sanntid står sentralt i sanntidsplattformen og leverer kjernefunksjonalitet for mobilitetsdata til driftskritiske tjenester internt i Ruter og eksternt. Basert på moderne teknologier og arbeidsmetoder har teamet ansvar for utvikling, drift og forvaltning av sanntidsplattformen.
Oppdraget
Oppdraget inngår i team Sanntid som har ansvaret for sanntidstjenester og plattformen som samler bl.a. sanntidsdata som GPS posisjoner, passasjertall, antall kjørt kilometer og miljødata fra ulike sensorer i kjøretøyene. Datastrømmene bearbeides og tilgjengeliggjøres i Ruters Digitale Plattform (RDP).
RDP er resultatet av Ruters strategi for å bli datadrevet og er en plattform for strømmeprosessering automatisering og kontinuerlige leveranser. RDP er bygd opp på moderne teknologier som AWS, Apache Kafka og Kubernetes.
Sanntidsdataene danner grunnlag for viktig kundeinformasjon eksempelvis avgangstider, neste stopp og kapasitet om bord. Informasjonen sendes tilbake til kjøretøyene og tilgjengeliggjøres på skjermer og via høyttalere.
I tillegg brukes sanntidsdataene for operasjonell trafikkhåndtering, analyseformål, forbedring av kvalitet på tjenestene og for planlegging av kollektivtransport fremover.
Sanntidsplattformen i Ruter ble produksjonssatt i juni.2019 med ca. 400 busser kompatibel med nye standarder for datautveksling innen kollektivtransport (ITxPT).
Team Sanntid består av produkteier, teamleder, løsningsarkitekt, åtte backend utviklere og mange interne og eksterne interessenter med ulike behov til sanntidsdataene. Team Sanntid praktiserer DevOps og smidige utvikling.
Teamets formål er å videreutvikle, forvalte og drifte applikasjoner og verktøy på en slik måte at Ruter kan levere kostnadseffektive, stabile, dog fleksible, moderne og avanserte kundetjenester innen offentlig kollektivtransport. Dataene anses som driftskritiske og berører mange kundetjenester og operative behov i Ruter.
I team Sanntid vil du jobbe med toppmoderne teknologier og arbeidsmetoder. Du vil utføre en samfunnsnyttig oppgave og bidra til en enklere hverdag til befolkningen i Oslo og omegn, og et mer bærekraftig samfunn. Løsningene du lager vil treffe hverdagen til hundretusenvis av mennesker.
Arbeidsoppgaver:
- Utvikling av mikrotjenester i Java/Kotlin (inkl. Instrumentering, logging og overvåkning, kvalitetssikring, testing ved automatiserte tester, produksjonssetting og driftsoppfølging)
- Forvalte og drifte tjenester og plattformen
- Sette seg inn i nye teknologier og bidra til å bygge opp kompetanse i disse på teamet
- Bidra til å bygge en DevOps-kultur ved å tenke tverrfaglig
Sentrale forutsetninger for å lykkes i denne rollen er som følger:
- Høyere utdannelse på master nivå (Høyskole / Universitet)
- God kjennskap og erfaring med Java, Kotlin og Spring Boot
- God kjennskap til Linux og drift av løsninger på Linux-plattformen
- Kjennskap til Kubernetes og Helm eller lignende teknologier
- Kjennskap til utviklingsverktøy for kontinuerlig integrasjon/utrulling (CI/CD pipeline) f.eks. Jenkins, Gitlab
- Kjennskap til og erfaring med AWS Public cloud
- Kjennskap til og erfaring med open source-teknologier som Apache Kafka og Kafka API-er (Streams, Consumer, Producer)
- Erfaring med verktøy for sentralisert logging som ElasticCloud og Fluentbit
- Erfaring med monitorerings- og varslingsverktøy som Grafana, Prometheus og Prometheus Alert Manager
- Erfaring med DevOps praksis i team
- Skandinavisk (norsk/svensk/dansk) minimum nivå B2, Engelsk minimum nivå B2
Det er en fordel at konsulenten har erfaring med:
- EMQ (MQTT broker)
- Kjennskap til testverktøy og rammeverk for automatisert testing f.eks. Kafka-streams-test-utils
- Hendelsesdrevet arkitektur, publish/subscribe pattern og mikrotjenester
- JIRA, Confluence og Git
- Smidige metoder/iterative leveranser i komplekse løsninger
Personlige egenskaper:
- Ryddig og nøyaktig
- Kvalitet på leveranser
- Gjennomføringsevne og leveransedyktighet
- Skaper klarhet og driver leveranser
- Strukturert og evner å dokumentere
- Tålmodig og langsiktig
- Initiativrik og positiv
- Samarbeidsevne
- Løsning- og serviceorientert
- Evne til å vurdere langsiktige konsekvenser, men levere inkrementelt og smidig (Think big, start small)