Software ontwikkelaar
- Plaats
- Utrecht
- Start
- 18 oktober 2026
- Reageren tot
- 1 oktober 2026
- Opdrachtgever
- Universiteit Utrecht
Kies je bemiddelaar
De Transparante Broker
- Wie betaalt de fee
- opdrachtgever betaalt
- Tarief bij deze opdracht
- Niet vermeld
- Beoordelingen
- 40 beoordelingen
Omschrijving
M-Tool is een open-source webapplicatie die aan de Universiteit Utrecht is ontwikkeld voor het in kaart brengen van mentale modellen. De applicatie wordt momenteel gebruikt binnen meer dan 25 onderzoeksprojecten in meer dan 90 landen. Onderzoekers gebruiken M-Tool om studies op te zetten waarin deelnemers causale kaarten maken van de relaties die zij zien tussen verschillende concepten.
De huidige applicatie is ontwikkeld in Clojure, met ClojureScript als frontend. Een eerdere nieuwe versie heeft geleid tot regressies en een aantal functionaliteiten is nog niet volledig afgerond. Daarom zoekt de Universiteit Utrecht een ontwikkelaar die de applicatie verder kan stabiliseren, ontwikkelen en toekomstbestendig kan maken.
Er zijn hierbij twee mogelijke technische richtingen:
Het verder ontwikkelen en herstellen van de bestaande Clojure/ClojureScript-code;
Het herschrijven van de applicatie naar een meer gangbare technologie, bijvoorbeeld TypeScript/React voor de frontend en Python of Node.js voor de backend.
Een herschrijving heeft de voorkeur, mits kan worden aangetoond dat de bestaande functionaliteit behouden blijft en de nieuwe oplossing op lange termijn beter onderhoudbaar is.
Verantwoordelijkheden
Als Softwareontwikkelaar ben je verantwoordelijk voor het stabiliseren, doorontwikkelen en toekomstbestendig maken van M-Tool. Je werkzaamheden bestaan onder andere uit:
Stabilisatie en bestaande functionaliteit
Behouden en herstellen van de huidige functionaliteit van M-Tool.
Oplossen van regressies en technische problemen in de bestaande applicatie.
Oplossen van het probleem met conceptnamen waarin een koppelteken voorkomt, zodat data correct wordt verwerkt en geëxporteerd.
Zorgen dat de deelnemersinterface correct herschaalt bij verschillende schermformaten.
Waarborgen dat de applicatie betrouwbaar functioneert binnen de huidige onderzoeksprojecten.
Doorontwikkeling van bestaande functionaliteiten
Ontwikkelen van een betrouwbare offline versie waarmee onderzoekers data op tablets kunnen verzamelen.
Ondersteunen van offline opslag en synchronisatie zodra een tablet weer online is.
Zorgen dat gesynchroniseerde data beschikbaar komt in de online omgeving.
Implementeren van rich text voor consent-, welkomst- en afsluitteksten.
Mogelijk maken van herinneringen/pop-ups op het mapping-scherm.
Configureerbaar maken of deelnemers het doelicoon mogen verplaatsen.
Genereren van een downloadbare map met screenshots van ingediende mental maps.
Implementeren van tussentijds opslaan van een mental model via een Opslaan-knop.
Je ontwikkelt daarnaast nieuwe functionaliteiten, waaronder:
Een mappenstructuur voor studies en geüploade media.
Automatische herkenning van bestandstypen bij uploads.
Mogelijkheid voor onderzoekers om bestandsnamen te wijzigen.
Mogelijkheid voor deelnemers om zelf een icoon en bijbehorend label aan te maken, indien dit binnen een studie is toegestaan.
Een Practice Task Creator waarmee onderzoekers zelfstandig oefentaken kunnen configureren.
Automatische generatie van de bijbehorende begeleidende afbeelding.
Correcte werking van de browser Back/Vorige-knop zonder verlies van ingevoerde data.
Ondersteuning voor zowel drag-and-drop als klikinteractie bij het verbinden van concepten.
Een configureerbaar FAQ-paneel op het mapping-scherm.
Instellingen waarmee audio standaard uit kan staan.
Een optie om instructievideo’s per studie wel of niet beschikbaar te stellen.
Afhankelijk van prioriteit en beschikbare capaciteit kunnen aanvullende verbeteringen worden gerealiseerd, zoals:
Meerdere iconen tegelijk uploaden. Instellen en zichtbaar maken van pijlgewichten. Ondersteuning voor feedback loops. Audio toevoegen aan het toestemmingsformulier. Vastzetten van begin- en eindpunten op het canvas. Richtingsvalidatie van verbindingen. Configureerbare foutmeldingen. In- en uitzoomen op het mapping-scherm.
… lees de volledige omschrijving bij MiPublic.