AND Digital
AND Digital
AND Digital är ett teknikkonsultföretag som hjälper organisationer att stärka sin digitala förmåga och utveckla bättre digitala produkter. Företagets arbete omfattar rådgivning, mjukvaruutveckling, utveckling av mobilappar, upplevelsedesign och datalösningar, med stöd till kunder i Storbritannien, Europa och USA. Genom arbetssättet ”Guide, Build, Equip” kombinerar AND Digital praktiskt genomförande med kompetensutveckling och arbetar i nära sammansvetsade klubbar som förenar dedikerade kundrelationer med tillgång till bredare teknisk expertis.

Kontraktsanställd C++-utvecklare – hybrid i London

Roll som kontraktsanställd C++-utvecklare hos AND Digital, med fokus på tillförlitlig inbyggd Linux-programvara för säkerhetskritisk medicinteknik. Arbetet omfattar applikationskomponenter i C++17, larm, beständig lagring, övervakning och felhantering.

Beskrivning

  • Utveckla tekniska larmvillkor från telemetri från hårdvara och operativsystem
  • Implementera larm för patientsensorer, signalkvalitet och extern övervakning
  • Integrera hårdvarugränssnitt för larm, inklusive ljudavstängning, validering av larmnivåer och telemetri
  • Bygga mekanismer för felhantering och återställning
  • Utveckla självtester vid uppstart samt tester av hårdvarukompatibilitet, GPU och system
  • Implementera felsäkra tillstånd, felhantering, watchdog-funktioner och systemövervakning
  • Stödja identifiering och återställning efter avbrutna sessioner
  • Utveckla applikationsloggning, revisionsloggning och loggrotation
  • Bygga lagringsgränssnitt med atomära skrivningar och kontrollsummor
  • Hantera läsning, radering och sessionslistning över fasta lagringspartitioner
  • Utveckla paketering, köläggning, tömning, lagring och hämtning av patientdata
  • Stödja återfyllnad av data och presentation av historiska data
  • Skapa versionshanterade gränssnitt mellan backenddata och det grafiska användargränssnittet
  • Hantera livscykler för patientsensorer och sessioner
  • Stödja sessionsmetadata, återställning och kontrollerad avstängning
  • Utveckla hantering av strömknappen och kontrollerade processer för att stänga av enheten
  • Stödja USB-export av data, serviceverktyg och servicehanterare för enheten
  • Stödja programvaruuppdateringar samt procedurer för bekräftelse och återställning
  • Implementera logguttag och revisionsloggning
  • Äga ett avgränsat applikationsområde från design till sammanslagen, testad och dokumenterad kod
  • Samarbeta med programvaruarkitekten och utvecklare som arbetar med angränsande komponenter
  • Bidra till en starkt reglerad och säkerhetskritisk produkt inom medicinteknik

Krav

  • Gedigen erfarenhet av att utveckla moderna C++17-applikationer på inbyggd Linux
  • Goda kunskaper i RAII, heltalstyper med fast bredd, std::atomic, flertrådning samt låsningsfria eller begränsade köer
  • Erfarenhet av att bygga programvara där deterministiskt beteende och tillförlitlighet är avgörande
  • Erfarenhet av körmiljöer utan eller med få allokeringar, inklusive förallokerat minne och containrar med fast kapacitet
  • Erfarenhet av ports-and-adapters- eller hexagonal arkitektur, gränssnitt och beroendeinjektion
  • Gedigen erfarenhet av Linux-systemintegration, inklusive tjänster, watchdog-funktioner och systemnivåbaserad felhantering
  • Erfarenhet av IPC och serialiseringstekniker som FlatBuffers, Unix-domänsocketar eller namngivna rör
  • Erfarenhet av CMake, automatiserade tester och CI/CD-pipelines
  • Erfarenhet av korskompilering, helst för aarch64-plattformar
  • Gedigen bakgrund inom enhetstestning, kodtäckning och kvalitetsgrindar
  • Bekväm med att arbeta enligt formella ingenjörsprocesser, inklusive kollegial granskning, spårbara ändringar och dokumenterade designbeslut
  • Erfarenhet av att utveckla säkerhetskritisk, verksamhetskritisk eller starkt reglerad programvara
  • Erfarenhet av att utveckla medicintekniska produkter eller andra säkerhetskritiska system (meriterande)
  • Erfarenhet av arbete i reglerade miljöer eller inom life science (meriterande)
  • Mycket god kompetens inom AI (meriterande)
  • Kunskap om IEC 62304, ISO 13485 eller jämförbara standarder för reglerad programvaruutveckling (meriterande)
  • Erfarenhet av medicinska larmsystem eller andra system för larm och felhantering (meriterande)
  • Förståelse för IEC 60601-1-8 eller motsvarande säkerhetsstandard (meriterande)
  • Erfarenhet av tillståndsmaskinsdrivna övervakare och felhanteringssystem (meriterande)
  • Erfarenhet av NVIDIA Jetson, CUDA eller GPU-accelererad databehandling (meriterande)
  • Erfarenhet av Yocto och board-support-paket för inbyggd Linux (meriterande)
  • Erfarenhet av systemd, sd_notify, D-Bus och journald (meriterande)
  • Erfarenhet av OpenSSL, TensorRT eller liknande externa tekniker (meriterande)
  • Erfarenhet av Docker för utvecklingsmiljöer (meriterande)
  • Erfarenhet av GoogleTest, beteendedriven testning eller Gherkin (meriterande)
  • Erfarenhet av Python för verktyg och distributionsskript (meriterande)
  • Erfarenhet av att bidra till FMEA-aktiviteter för programvara och implementera riskkontroller (meriterande)

Förmåner

  • En arbetsgivare som erbjuder lika möjligheter och arbetar för en inkluderande arbetsplats
  • Rimliga anpassningar finns tillgängliga under hela rekryteringsprocessen när det behövs