API Developer
Context
Data wordt momenteel aan ons geleverd via de API van een third-party tool, waarvan de toekomst onzeker is. We willen een subset van die API (of een zeer vergelijkbare) opnieuw implementeren zodat huidige gebruikers met minimale frictie kunnen overstappen. De API is niet erg complex en er is enige documentatie beschikbaar.
De API heeft twee functionele onderdelen:
-
Metadata layer: stelt metadata bloot aan de aanroeper (bijvoorbeeld dataverzamelingsstructuren).
-
Submission layer: maakt het mogelijk om data in te dienen voor een bepaalde dataverzameling en valideert de indiening.
De nieuwe implementatie is gebouwd rond de database van het ODS-project, die twee rollen vervult:
-
Bron van de metadata: de metadata die door de metadata layer wordt aangeboden, is al beschikbaar in de ODS-database.
-
Bestemming van de submissions: ingediende data wordt verwerkt door de bestaande Python loading code van het ODS-project.
Security is vanaf het begin een ontwerpoverweging. Het security model (authenticatie, autorisatie, transport en databeveiliging) kan verschillen van de huidige API en moet worden gedefinieerd.
Opdracht
Implementeer de kritische onderdelen van de API (scope wordt aan het begin overeengekomen) om aan te tonen dat een compatibele vervanging haalbaar is. Het werk wordt opgeleverd met productieklare code, tests en documentatie voor wat is afgedekt. Het deliverable bevat een beknopt overzicht van wat is behandeld, wat nog openstaat en wat nodig is om productie te bereiken.
Taken
-
Analyseer de bestaande API en de documentatie ervan, en kom overeen welke subset wordt afgedekt
-
Analyseer de ODS-database en koppel de metadata aan wat de bestaande API blootstelt, waarbij eventuele hiaten worden geïdentificeerd
-
Stel een security-aanpak voor en implementeer deze (authenticatie, autorisatie, veilige verwerking van ingediende data), en geef aan waar deze verschilt van de huidige API
-
Implementeer de metadata endpoints bovenop de ODS-database
-
Implementeer de submission endpoints, met validatie van ingediende data en betekenisvolle foutmeldingen
-
Draag ingediende data over aan de ODS loading code (of sla deze op in de vorm die die code verwacht)
-
Schrijf geautomatiseerde tests en beknopte technische documentatie
-
Deploy en demonstreer de oplossing op Ubuntu Linux
-
Rapporteer over beperkingen, openstaande vragen en aanbevolen vervolgstappen
Vereiste vaardigheden
-
Python 3.12+ met FastAPI
-
SQLAlchemy en PostgreSQL (het lezen en mappen van een bestaand schema)
-
REST API design
-
API security: authenticatie en autorisatie (bijvoorbeeld OAuth2/OIDC, JWT, API keys), TLS, input validatie
-
Geautomatiseerd testen (pytest)
Pre’s
-
Polars in combinatie met SQLAlchemy
-
uv voor package management
-
Ervaring met API compatibility of migratieprojecten
-
Ervaring met het verwerken van gevoelige data (zoals gezondheidsdata) en GDPR-vereisten
-
Ervaring met Linux deployment
Soft skills
-
Zelfstandigheid en het vermogen om te werken met onvolledige documentatie
-
Pragmaticus: focussen op de kritische onderdelen eerst, terwijl de kwaliteit van het geleverde hoog blijft
-
Duidelijke communicatie van bevindingen en beperkingen
Apply for this Job
This position was originally posted on Pro Unity.
It is publicly accessible, and we recommend applying directly through the Pro Unity website instead of going through third party recruiters.
Search jobs by category
- AI Engineer
- Application Support Analyst
- Business Analyst
- Business Intelligence Analyst
- CRM Developer
- Cybersecurity Analyst
- Data Analyst
- Database Administrator
- Data Engineer
- Data Scientist
- Developer
- DevOps Engineer
- Embedded Systems Engineer
- ERP Consultant
gofreelance
© 2026 gofreelance.be