Inzichten

Hoe kiest u een softwareontwikkelaar?

11 min lezen

De meeste selectietrajecten vergelijken prijs en portfolio. Geen van beide voorspelt de uitkomst goed. Dit zijn de controles die dat wel doen — inclusief de contractbepalingen die bepalen of u kunt vertrekken.

Een ontwikkelpartner kiezen is lastig juist omdat het onderwerp dat u beoordeelt het onderwerp is waarin u geen expertise heeft. Het gangbare proces — drie offertes verzamelen, portfolio's bekijken, een bedrag kiezen waar u zich prettig bij voelt — selecteert op verkoopvaardigheid en niet op leveringsvaardigheid. Dit is wat de uitkomst wél voorspelt.

Stel vast wie het werk gaat doen

Vraag het rechtstreeks: gaan de mensen in deze bespreking het systeem bouwen? Bij een aanzienlijk deel van de opdrachten zijn de senior medewerkers die presenteren niet de medewerkers die leveren, en gaat het werk naar een juniorteam of wordt het volledig uitbesteed. Dat diskwalificeert niet automatisch, maar u hoort het te weten vóór ondertekening en niet bij het eerste voortgangsgesprek.

  • Wie precies gaat de code schrijven, en welke ervaring heeft die persoon met dit soort systemen?
  • Wordt het werk uitbesteed, geheel of gedeeltelijk?
  • Wie is mijn aanspreekpunt als er iets misgaat, en welke bevoegdheid heeft die persoon om het op te lossen?
  • Wat gebeurt er als de hoofdontwikkelaar halverwege het project vertrekt?

Controleer referenties in plaats van portfolio's

Een portfolio laat zien wat er is opgeleverd. Het laat niet zien of het te laat was, of het budget verdubbelde, of de klant hen opnieuw zou inhuren. Vraag om twee referenties: één recente, en één van een project dat minstens een jaar geleden is afgerond. De tweede zegt meer — die vertelt u of de software nog werkte en werd ondersteund nadat de facturen stopten.

Let op wat er gebeurt als u een lastige vraag stelt

Beschrijf een eis die werkelijk moeilijk of dubbelzinnig is en kijk wat er terugkomt. Een bekwame leverancier stelt verhelderende vragen, benoemt de risico's, en zegt u mogelijk dat de eis zoals geformuleerd een slecht idee is. Een minder bekwame stemt enthousiast in en offreert meteen.

De bereidheid om het tijdens het verkooptraject met u oneens te zijn, hoort tot de betrouwbaarste indicatoren die er zijn. Wie overal ja op zegt voordat er een contract is, ontwikkelt niet plotseling oordeelsvermogen zodra dat er wel is.

De contractbepalingen die ertoe doen

BepalingWat u wiltWaarom
Eigendom van IEU bezit alle code en bestanden na betalingZonder dit licentieert u mogelijk uw eigen systeem
Toegang tot de repositoryOp het account van uw organisatie, vanaf dag éénU ziet de voortgang en wordt bij een geschil niet buitengesloten
Hosting en domeinnamenOp uw naam geregistreerdDe meest voorkomende vorm van gebondenheid, en het makkelijkst te voorkomen
WijzigingsprocesSchriftelijk, met vooraf afgesproken tarievenVoorkomt heronderhandeling van elke aanpassing
AcceptatiecriteriaPer fase omschreven vóór aanvangGeeft 'klaar' een objectieve betekenis
ExitvoorwaardenGedocumenteerde overdracht inbegrepenU gaat ooit uit elkaar, in goede of kwade verstandhouding

De allernuttigste bepaling is toegang tot de repository vanaf de eerste commit. Een bekwame en zelfverzekerde leverancier kost het niets om daarmee in te stemmen, en terughoudendheid zegt u iets belangrijks.

Signalen die u als waarschuwing moet opvatten

  • Een vaste offerte zonder noemenswaardige verkenning. Óf de inschatting is giswerk, óf de scope is los genoeg omschreven om er later over te twisten.
  • Gegarandeerde posities of gegarandeerd verkeer. Niemand beheerst Google's resultaten, en anders beweren duidt op onbegrip of misleiding.
  • Terughoudendheid om u toegang tot de repository te geven, of hosting op naam van de leverancier.
  • Een voorstel dat uitsluitend uit technologienamen bestaat zonder enige verwijzing naar uw bedrijfsprobleem.
  • Druk om snel te tekenen voor een korting die verloopt.
  • Geen gesprek over onderhoud. Een leverancier die doorlopende kosten niet ter sprake brengt, is onervaren of laat u ze zelf ontdekken.
  • Aanbevelingen zonder toewijsbare namen of bedrijven.

Een verstandig selectieproces

  1. Schrijf het bedrijfsprobleem op, in bedrijfstermen. Niet de oplossing die u voor ogen heeft — het probleem, en hoe succes er als meetwaarde uit zou zien.
  2. Benader drie of vier leveranciers van wie de ervaring plausibel aansluit. Meer verdunt de aandacht die u aan elk gesprek kunt geven.
  3. Betaal voor een verkenning bij uw voorkeurspartij of -partijen. Een betaalde verkenning levert een echte scope op en laat u zien hoe ze werken vóór de grote verplichting.
  4. Vergelijk voorstellen op scope en uitsluitingen, niet op het bedrag bovenaan.
  5. Vraag referenties op, waaronder een ouder project.
  6. Begin zo mogelijk met een klein, echt stuk werk. Een eerste fase met werkelijke waarde is een veel betere toets dan welk gesprek dan ook.
  7. Lees het contract goed, met bijzondere aandacht voor IE, wijzigingsbeheer en exit.

Over offshore, nearshore en lokaal

Bekwame en zwakke engineers bestaan overal, en locatie voorspelt kwaliteit veel minder dan mensen aannemen. Wat locatie wél beïnvloedt, zijn de communicatiekosten. Een groot tijdzoneverschil werkt goed bij duidelijk vastgelegde eisen en iemand aan uw kant die de relatie actief stuurt; het werkt slecht bij een evoluerende opdracht die dagelijks overleg vraagt.

Wees er nuchter praktisch over: zijn uw eisen nog in wording, geef dan voorrang aan overlappende werktijden. Zijn ze goed vastgelegd en stabiel, dan is een groter verschil beheersbaar en kan het kostenverschil reëel zijn. Vraag waar het team werkelijk zit in plaats van waar het bedrijf is ingeschreven.

De vraag die het zwaarst weegt

Vraag wat ze zouden doen als het project in de problemen kwam — een gemiste datum, een eis die onmogelijk blijkt, een budget onder druk. Het antwoord laat zien hoe ze over risico denken en over u. Leveranciers die al jaren leveren hebben goede antwoorden omdat ze het hebben meegemaakt. Wie dat niet heeft, vertelt u dat het hun niet overkomt.

Dit is het soort werk dat wij doen. Is het van toepassing op iets dat u van plan bent, dan beschrijft onze pagina over maatwerksoftware hoe wij het aanpakken, of u kunt het project beschrijven en dan zeggen wij wat wij ervan denken.

Gerelateerde vragen

Moet ik een bureau of een freelancer kiezen?

Een freelancer kan uitstekende waarde bieden bij een goed omschreven project en vormt één punt van kwetsbaarheid — ziekte, een andere klant, of simpelweg verder trekken. Een bureau kost meer en biedt continuïteit, een breder scala aan vaardigheden en vervanging. Voor alles waar het bedrijf operationeel van afhankelijk wordt, is continuïteit het betalen meestal waard.

Hoe belangrijk is ervaring in onze sector?

Nuttig, en minder doorslaggevend dan vaak wordt voorgesteld. Ervaring in uw sector verkort het verkenningsgesprek en helpt een leverancier wettelijke eisen te voorzien. Sterk vakmanschap laat zich tussen sectoren overdragen; zwak vakmanschap wordt niet gered door bekendheid met het domein. Laat het meewegen, maar maak het niet doorslaggevend.

Wat is een redelijke aanbetaling?

Betalingen in termijnen, gekoppeld aan opgeleverde fasen, zijn normaal en redelijk. Een grote vooruitbetaling die het merendeel van het project dekt voordat er iets is opgeleverd, is dat niet. Richt de betalingen zo in dat op elk moment wat u heeft betaald ruwweg overeenkomt met wat u heeft ontvangen.

Hoe beoordeel ik technische kwaliteit als ik zelf niet technisch ben?

Gebruik indirecte maatstaven. Vraag regelmatig om werkende software in plaats van voortgangsrapportages. Vraag hoe ze testen, en verwacht een concreet antwoord. Vraag wat er gebeurt als een fout in productie belandt. Gaat u een grote verplichting aan, betaal dan een onafhankelijke ontwikkelaar een paar uur om de code te bekijken — dat is goedkoop ten opzichte van het risico en zegt u veel.

Zit u met zo'n beslissing?

Wij zijn graag een tweede mening, ook wanneer het antwoord is dat u ons niet nodig heeft.

Neem contact op