OpenConsultant och OpenAssignment: från idé till öppna standarder med AI
Två öppna standarder för konsultmarknaden. Konsultbolag publicerar sina profiler och företag sina uppdrag på den egna sajten, och marknaden läser därifrån. Fritt att använda, inget att registrera sig för. Vi byggde dem med hjälp av AI för att undersöka en idé om hur konsultmarknaden skulle kunna fungera bättre.
En konsults profil skrivs en gång. Sedan skrivs den av, i varje portal, hos varje förmedlare och i varje system som frågar efter den. Kopiorna ska hållas uppdaterade var för sig, och det blir de inte. Tillgängligheten ändras, kopiorna står kvar, och till slut går det inte att säga vilken version som gäller eller var den kom ifrån.
Samma sak gäller åt andra hållet. Ett företag som behöver en konsult skriver in sitt uppdrag i en förmedlares formulär, och i nästa, och i nästa.
Det borde inte behöva vara så. Vi publicerar redan våra tjänster och vår adress på vår egen sajt, och ingen förväntar sig att vi ska skriva av dem i andras system. Varför inte konsulterna?

Ett problem från vår egen vardag
Vi driver en liten design- och utvecklingsbyrå i Göteborg. En stor del av vårt arbete sker som konsulter, i andra företags digitala produkter. Vi vet därför hur konsultmarknaden fungerar och har själva erfarenhet av att hålla profiler uppdaterade, beskriva kompetenser och hantera olika förmedlares system.
Det märkliga är att informationen redan finns. Vi vet vilka vi är, vad vi kan och när vi är tillgängliga. Ändå ska samma information gång på gång matas in i någon annans system.
Vi började fundera på om problemet egentligen är att det saknas en gemensam överenskommelse om hur informationen ska publiceras. Inte ytterligare en konsultplattform eller en bättre databas, utan ett sätt för olika system att läsa informationen direkt från den som publicerat den.
Ungefär som vi redan gör med så mycket annat på webben.
Det blev starten för OpenConsultant och OpenAssignment.
En fil på en fast adress
Idén är densamma som bakom robots.txt: en fil på en bestämd adress på den egna domänen.
Konsultbolaget publicerar /openconsultant.json med sina konsultprofiler, och företaget som behöver kompetens publicerar /openassignment.json med sina uppdrag. Förmedlare, plattformar och matchningstjänster läser därifrån och länkar tillbaka, i stället för att vara beroende av egna kopior.
Det finns ingen central databas och inget att registrera sig för. Uppgifterna publiceras hos den som ansvarar för dem, och marknaden kan bygga tjänster ovanpå informationen.
Förmedlaren behöver alltså inte försvinna. Tvärtom. En förmedlare som slipper samla in, tolka och underhålla samma information som alla andra kan lägga mer tid på att faktiskt hitta och matcha rätt kompetens.
Från idé till fungerande produkt med AI
Vi arbetar med digital produktutveckling och har under en längre tid förändrat vårt sätt att arbeta med hjälp av AI. OpenConsultant och OpenAssignment är ett ganska bra exempel på vad det innebär i praktiken.
Projektet är till stora delar AI-genererat. Vi har använt AI för att undersöka befintliga standarder, resonera om informationsmodeller, ta fram kod, bygga webbplatser och implementera funktionalitet.
Vi har också medvetet lagt ganska lite tid på den visuella designen.
Som designbyrå kan det kanske låta märkligt, men det fanns helt enkelt viktigare saker att göra. Vi ville ta reda på om idén gick att genomföra och om den kunde vara intressant för andra. Att lägga en massa tid på detaljer i gränssnittet hade inte hjälpt oss särskilt mycket med det.
Det betyder inte att vi tycker att design är oviktigt. Snarare tvärtom. För oss handlar design om att förstå ett problem, utforska möjliga lösningar och fatta beslut om vad som behöver göras. I det här fallet behövde vi fungerande standarder, dokumentation och ett enkelt sätt att testa dem. Inte ett genomarbetat designsystem.
När AI gör det enklare och billigare att producera kod blir de besluten allt viktigare. Att bygga något är inte längre nödvändigtvis den stora utmaningen. Att förstå vad som är värt att bygga är en annan sak.
Det här projektet är heller inte ett bevis på att vi har löst konsultmarknadens problem. Det är ett sätt att göra en idé tillräckligt konkret för att andra ska kunna prova den, ifrågasätta den och förhoppningsvis utveckla den vidare.
Två standarder som talar samma språk

OpenConsultant bygger på JSON Resume, ett befintligt öppet format för cv:n, med tillägg för det som behövs på konsultmarknaden. Exempelvis tillgänglighet, distans eller arbete på plats och uppdragsform.
OpenAssignment har ett eget schema för att beskriva konsultuppdrag.
De två standarderna använder gemensamma begrepp där det är relevant. På så sätt går det att jämföra en konsults kompetenser med kraven i ett uppdrag, utan att någon av standarderna är beroende av den andra.
Vi ville också undvika att bygga något som bara såg ut att fungera. Schemat är därför utgångspunkten för dokumentationen och de exempel som publiceras. Exemplen valideras automatiskt vid varje bygge. Om de inte följer standarden faller bygget.
Det är en ganska enkel princip, men en viktig sådan. Dokumentation och implementation måste beskriva samma sak.
Testa en domän

Båda sajterna har en testare. Man skriver in en domän, och testaren läser de filer som domänen publicerar enligt båda standarderna. Därefter kontrollerar den om filerna följer respektive schema.
Testet körs i webbläsaren och kräver varken konto eller registrering.
En domän vars filer går igenom kan också läggas till i en katalog över anslutna domäner. Katalogen sparar bara domännamnet och antalet publicerade konsulter respektive uppdrag. Informationen kontrolleras på nytt var sjätte timme.

Det är alltså inte en databas med konsultprofiler. Katalogen talar bara om var informationen finns och om den fortfarande följer standarden.
Vi började med oss själva
Ett bra sätt att upptäcka problemen med en idé är att försöka använda den själv.
Därför har vi implementerat båda standarderna på wishyouwerehere.se. Vi publicerar våra konsultprofiler i /openconsultant.json och våra uppdrag i /openassignment.json.
Informationen hanteras i Sanity, vårt befintliga CMS, och används både för de vanliga webbsidorna och för JSON-filerna. Samma data, samma logik och samma källa. Det ska inte gå att ändra en konsultprofil på webbplatsen utan att motsvarande information också förändras i den publicerade filen.
Vi har också byggt in möjligheten att dölja exempelvis kundnamn, arbetsgivare och efternamn. Att information är strukturerad och maskinläsbar betyder inte att allt måste publiceras.
Det här har varit en viktig del av arbetet. En standard måste fungera i verkligheten, tillsammans med befintliga system och de krav som finns på hur information får hanteras.
Inte en marknadsplats
OpenConsultant och OpenAssignment är inte tänkta att bli ytterligare en konsultmarknadsplats.
De äger inga konsultprofiler, samlar inte in cv:n och försöker inte ersätta förmedlare eller matchningstjänster. De beskriver hur information kan publiceras och var den ska finnas.
Vi tror snarare att öppna standarder kan göra det enklare att bygga bättre tjänster ovanpå informationen. En förmedlare kan bygga sin egen sök- och matchningstjänst. Ett konsultbolag kan publicera sin kompetens en gång och låta flera aktörer använda samma källa. Ett företag kan publicera ett uppdrag och låta marknaden hitta det.
Ingen behöver äga hela kedjan.
Standarderna är fortfarande i ett tidigt skede, version 0.1.0. Vi har ingen aning om de kommer att få någon större spridning. För att det ska fungera behöver fler tycka att det är en bra idé och börja använda dem.
Scheman och kod har MIT-licens och texterna CC BY 4.0. Vem som helst får använda dem och bidra till deras utveckling.
En idé behöver inte börja som ett stort projekt
Det här började med en frustration över hur konsultmarknaden fungerar. Nu finns två publicerade standarder, två webbplatser, fungerande validering och en implementation på vår egen sajt.
Vi vet fortfarande inte om det är rätt lösning. Men vi har kommit betydligt längre i att undersöka frågan än om vi hade nöjt oss med att skriva ned idén i en presentation.
Det är också en av de stora förändringarna vi ser inom digital produktutveckling just nu. Med hjälp av AI går det att ta en idé betydligt längre innan man behöver bestämma sig för om den är värd en större investering.
För oss som arbetar med design och utveckling innebär det nya möjligheter. Vi kan ägna mindre tid åt att beskriva hur något skulle kunna fungera och mer tid åt att faktiskt prova det.
Och ibland kanske det man bygger visar sig vara tillräckligt bra redan från början.
Säljer eller köper du konsulttjänster och vill prova? Testa din domän på OpenConsultant, läs mer om standarderna eller hör av dig till oss.
Vill du i stället diskutera en egen idé om en digital produkt? Läs mer om hur vi hjälper till att utveckla idéer.