Functieomschrijving
Het Nederlands Forensisch Instituut (NFI) in Den Haag ontwikkelt software die van groot belang is in forensisch onderzoek. Wat wij maken moet goed zijn, omdat de toekomst van mensen ervan afhangt. Als software engineer bij het NFI ontwikkel je software die onze samenleving veiliger en rechtvaardiger maakt.
Bij het team Forensische Software Engineering Applicaties (FSE-A) start je met het project NFiDENT. NFiDENT bestaat uit zowel een FO (Forensische Opsporing locaties) als NFI-applicatie en heeft zijn eigen applicatie voor het communiceren met de Shimadzu Gas Chromatography-Mass Spectrometry (GC-MS) machine. Voor communicatie tussen de verschillende componenten maken wij gebruik van Kafka, ESB, JMS en verschillende XML en JSON API's. Het doel is dat de FO de drugsanalyses uitvoert en het NFI digitaal de zaken kan volgen, controleren en metingen en rapporten kan keuren. Uiteindelijk moet er na rapportgoedkeuring automatisch een digitaal ondertekend rapport met alle bevindingen naar de desbetreffende FO worden gemaild, zodat deze gebruikt kan worden in de rechtszaal. Je ontwikkelt nieuwe features voor NFiDENT in samenwerking met onze afdeling Verdovende Middelen (VM), collega software engineers, test engineers en data scientists.
De volgende punten geven een beeld van de werkzaamheden:
- Je vertaalt wensen van VM naar werkende functionaliteit, soms met prototypes als tussenstap. Je ontwikkelt zowel de front-end als de back-end;
- Je werkt actief samen met VM en onze afdeling Forensische Big Data Analyse bij het ontwikkelen van AI-algoritmes voor drugsidentificatie. Deze draaien binnen NFiDENT en zullen in de toekomst het werk van VM verder automatiseren;
- Je werkt samen met collega's van diverse teams aan het berichtenverkeer tussen NFiDENT en andere softwarecomponenten en naar de politie;
- Je ondersteunt bij de ontwikkeling van testautomatisering, build scripts en releases.
Daarnaast werk je ook aan diverse andere complexe applicaties, die binnen en buiten het NFI gebruikt worden voor opsporing en bewijsvoering. Bijvoorbeeld het beschikbaar maken van nieuwe forensische analysetechnieken op het gebied van data-recovery, data-analyse, DNA, (kogel)krassporen of app-analyse.
Kan jij ons laten zien hoe jij jouw development ervaring inzet voor de ontwikkeling van onze forensische applicaties?
In een hecht agile/Scrum team van gedreven software engineers en test engineers ben je betrokken bij het gehele ontwikkeltraject, van een idee dat je soms zelf bent gestart tot hulp bij het gebruik van de software. Deze software ontwikkel je voornamelijk in Java, maar ook diverse webapplicatie frameworks en mogelijk in C++, OpenCL.
Wij hechten waarde aan 'slimmere' software engineering en proberen onszelf altijd te verbeteren op softwaregebied. Denk aan het ontwikkelen van nieuwe tooling om forensische testen uit te voeren of mee te denken over het uitbouwen/verbeteren van onze test-frameworks en om het buildproces verder te optimaliseren. Onze applicaties worden zoveel mogelijk geautomatiseerd gebouwd en getest. Wij maken daarbij gebruik van Open Source en commerciële producten en ontwikkelen hiernaast zelf (test)frameworks die hier mooi op aansluiten. Denk hierbij bijvoorbeeld aan testautomatisering en onze buildtooling in Azure DevOps. Hiermee zorgen wij voor uniforme en compacte code voor onze testsuites en buildplannen.
Weet jij ons mee te nemen in hoe jij samen met je team software ontwikkelt voor een veiliger Nederland?
Functie-eisen
- Je hebt HBO werk- en denkniveau en bij voorkeur een afgeronde opleiding in de richting van (technische) informatica, wiskunde of software engineering
- Je hebt werkervaring met softwareontwikkeling in teamverband
- Je hebt meerdere jaren ervaring met diverse programmeertalen en -tools, waaronder tenminste Java en bij voorkeur ook Angular(JS). Python is een pré.
- Je bent kritisch en werkt op een nauwkeurige, systematische manier, en toetst jouw resultaten bij collega's.
Competenties
- Analyseren
- Plannen en organiseren
- Samenwerken
- Zelfontwikkeling
- Resultaatgerichtheid
Wat vinden wij nog meer belangrijk
We zien je graag verantwoordelijkheid nemen voor een correcte uitvoering van de opdrachten. Je draagt bij aan een gezamenlijk resultaat, ook wanneer dit niet van direct persoonlijk belang is. Met je collega's en/of externen wissel je actief ideeën uit over methoden, technieken en inzichten. Je bent nieuwsgierig naar de ideeën van anderen. Je denkt vooruit en weet de benodigde acties daarvoor in te zetten en kan goed met deadlines omgaan. Je hebt kennis van relevante technische voorschriften en procedures en past deze toe.
Je bent een enthousiaste puzzelaar die zich graag vastbijt in complexe uitdagingen. Daarnaast heb je een passie voor software engineering waarbij je eigen ervaring inbrengt en een expertiserol kan vervullen. Je bent communicatief vaardig, zowel mondeling als schriftelijk. Je bent kritisch en in staat om de haalbaarheid van de wens te onderzoeken en onderbouwen.
Waarin kunnen we jouw enthousiasme voor software terugzien en hoe neem je jouw collega's daar in mee?
- Kan jij ons vertellen hoe jij jouw development ervaring kunt inzetten voor de ontwikkeling van onze (forensische) applicaties?
- Weet jij ons mee te nemen in hoe jij samen met je team vernieuwing aanbrengt in de samenwerking en zo nog meer slimme software ontwikkelt voor een veiliger Nederland?
- Waarin kunnen we jouw passie voor software terugzien en hoe neem je jou collega's daar in mee?
Met jouw antwoorden kun je laten zien waarom jij die enthousiaste fullstack developer bent. Met goede communicatieve vaardigheden om deze kennis en ervaring te delen en collega's in mee te nemen. Op basis van de antwoorden op de vragen willen we zo objectief mogelijk alle geïnteresseerde kandidaten met elkaar vergelijken.
- Acquisitie naar aanleiding van deze vacature wordt niet op prijs gesteld.
- Aan deze vacaturetekst kunnen geen rechten worden ontleend.
Het salaris bedraagt €4024 - €6110