Productupdates

Waarom CRDT-Gebaseerde Collaboratief Editen Wint voor Live Coding Interviews

ClarityHire Team(Editorial)3 min read

Twee benaderingen voor real-time samenwerking

Wanneer twee personen gelijktijdig dezelfde bestand editen, moet de editor hun veranderingen samenvoegen zonder gegevens te verliezen of vreemd geflitser te veroorzaken. Twee hoofd benaderingen bestaan:

  • Operational Transform (OT). Elke bewerking wordt verzonden als een operatie; een centrale server transformeert inkomende ops om ze in de juiste volgorde toe te passen. Gebruikt door Google Docs.
  • Conflict-free Replicated Data Types (CRDTs). Elke bewerking draagt genoeg metadata (typisch een unieke ID en logische klok) zodat twee clients naar dezelfde toestand convergeren ongeacht aankomstvolgorde. Gebruikt door Figma, Linear en meeste moderne collab tools.

Voor live codingrondjes specifiek winnen CRDTs.

Waarom CRDTs winnen voor interviews

Interviews gebeuren op hotel Wi-Fi, mobiele hotspots en bedrijfsnetwerken met agressieve proxies. Drie dingen gaan fout:

  1. Korte verbreking. Een 4-seconde netwerkglitch midden-typen.
  2. Asymmetrische latentie. Keystrokes van kandidaat bereiken server in 80ms; van interviewer in 400ms.
  3. Herverbinding chaos. Beide zijden gaan weer online met divergente staat.

OT-gebaseerde editors vereisen dat de server elke operatie medieert. Wanneer het netwerk glitcht, edits stapelen op en herverbindingen produceren vaak zichtbaar flitser, verloren karakters of — worst case — stil staat verlies. Kandidaten raken van streek, interviewers beschuldigen de kandidaat.

CRDTs verwerken alle drie scenario's stil. Elke client kan lokale edits onmiddellijk toepassen; merges gebeuren op herverbinding met geen user-zichtbare impact. De editor voelt offline-first — wat meer uitmaakt dan mensen realiseren wanneer je ook integriteitscontroles op de edit layer draait.

Waarom Yjs + Monaco de standaard werd

Yjs is de meest battle-tested CRDT bibliotheek voor tekst. Het paren schoon met Monaco — de editor die VS Code aandrijft — via y-monaco. De combinatie geeft je:

  • VS Code's volledige editor ervaring (IntelliSense, multi-cursor, alle keybindings)
  • Real-time collab die werkt op slechte netwerken
  • Meerdere cursors, selectie delen, awareness presence
  • Battle-tested op schaal

ClarityHire is gebouwd op Monaco + Yjs voor precies deze redenen. De code edits van de kandidaat bereiken de interviewer in onder 50ms op een gezond connection en overleven netwerkglitches die een server-gemedieerde editor zou doden. Dat maakt even veel uit voor pair programming ronden als voor traditionele live codingrondjes, waar enig flitser wordt gelezen als de schuld van de kandidaat.

Wat dit betekent in de praktijk

Als je een live coding platform evalueert, simuleer een slecht netwerk tijdens je trial. Throttel naar 3G in DevTools, verbreek de verbinding voor 5 seconden, kijk wat gebeurt. CRDT-gebaseerde tools herstellen onzichtbaar. Anderen niet.

yjscrdtmonaco editorcollaboratief editen