SC-gecertificeerde backend-engineer
We zoeken een beginnend engineer die sterke softwarevaardigheden combineert met een ambitieuze, onderzoekende instelling. Dit is een fantastische kans om je bij het engineeringteam aan te sluiten op een cruciaal moment. We zijn een klein team binnen een snelgroeiende organisatie, dus we spelen allemaal een rol in het vormgeven van de engineeringcultuur, -praktijken en -fundamenten van het bedrijf naarmate we groeien.
Je ontwerpt en bouwt de gedistribueerde systemen, opslaginfrastructuur en platformcomponenten die ten grondslag liggen aan het sensorintegratieproduct van het bedrijf. Dit omvat de volledige backend, van streamverwerking en opslag tot API-ontwerp, datapijplijnen en servicearchitectuur, in een Rust-stack met Python aan de API-grenzen van het platform. Je neemt belangrijke architectuurkeuzes en bouwt systemen die schaalbaar zijn tot petabyte-dataopslag, waarbij je helder kunt redeneren binnen onbekende probleemgebieden onder reële beperkingen.
Kernvaardigheden
- Kerntechnologieën: Rust, met Python op sommige API-grenzen. Kafka, PostgreSQL/TimescaleDB/PostGIS, gRPC/protobuf en Kubernetes.
Van kandidaten wordt niet verwacht dat ze ervaring hebben met al deze aspecten, maar kennis van verwante gebieden is cruciaal.
- Systeemdenken: Bekwaam in het ontwerpen en beheren van productiesystemen onder reële beperkingen – migraties zonder downtime, complexe afwegingsanalyses en het soort pragmatische besluitvorming dat de betrouwbaarheid van services waarborgt naarmate de eisen veranderen.
- Softwarevaardigheid: Schrijft schone, goed gestructureerde code met goed gebruik van abstracties, namespaces en interfaces. Heeft een uitgesproken mening over codebeoordelingsprocessen en -cultuur.
- Redeneren onder onzekerheid: Kan onbekende systemen snel doorgronden en weloverwogen architectonische beslissingen nemen zonder een volledig beeld te hebben.
- AI-ondersteunde ontwikkeling: Vloeiend in LLM-ondersteunde workflows en zelfverzekerd in het aansturen van AI-tools naar hoogwaardige output, en in staat om te weten welke problemen beter door mensen kunnen worden opgelost.
- Samenwerking: Ervaring met of aanleg voor communicatie tussen teams; in staat om zelfstandig context te vergaren en functionaliteiten te ontwikkelen met beperkte instructies van bovenaf.
Vereiste vaardigheden
- Ervaring met Rust
- Ervaring met Python (API-grenzen)
- Ervaring met Kafka
- Ervaring met PostgreSQL / TimescaleDB / PostGIS
- Ervaring met gRPC en protobuf.
- Ervaring met Kubernetes
- Systeemdenken; het ontwerpen en beheren van productiesystemen onder beperkingen.
- Sterke softwarevaardigheden: schone, goed gestructureerde code en gezonde codebeoordelingspraktijken.
- Vermogen om te redeneren en architectonische beslissingen te nemen onder onzekerheid.
- Bekendheid met LLM / AI-ondersteunde ontwikkelworkflows
- Samenwerking en communicatie tussen teams; vermogen om te werken met beperkte, van bovenaf opgelegde instructies.
- Eerdere ervaring met grootschalige data-infrastructuur (gedistribueerde opslag, sharding, high-throughput pipelines) is vereist.
Wenselijk
- Ervaring met grootschalige data-infrastructuren, zoals gedistribueerde opslag, gesharde databases en high-throughput pipelines, is vereist. Het is een pluspunt als je zelf een dergelijke infrastructuur hebt gebouwd of ervaring hebt met de basisprincipes daarvoor, zoals sharding-bibliotheken, consistent hashing, data-parallelle dataflow-berekeningen, enzovoort.