Goede programmeurs vinden is een grote uitdaging voor it-bedrijven. Hoe bind je de goede mensen aan je bedrijf en zorg je ervoor dat je je projecten kan uitvoeren? In deze blogserie wil ik jullie deelgenoot maken van een aantal oplossingen voor dit probleem en hoe wij hier als bedrijf tegenaan kijken. In deze editie: offshore outsourcing.
In Nederland is er een schrijnend tekort aan programmeertalent. Als je al mensen vindt, betaal je als werkgever al gauw de hoofdprijs. Waarom dan niet mensen inhuren in het buitenland? Van een Nederlands salaris kan je in Oekraïne of India immers riant leven en in die landen zijn er veel meer programmeurs beschikbaar dan hier. En de logistiek is bij het uitbesteden van programmeren naar het buitenland ook geen grote uitdaging, want code kan je eenvoudig versturen via het internet.
Reputatie
Het uitbesteden van werkzaamheden naar het buitenland gebeurt erg veel, maar heeft tegelijk ook een twijfelachtige reputatie. Een negatief voorbeeld dat ikzelf altijd op het netvlies heb is het grote it-project bij de Sociale Verzekeringsbank waar Zembla een uitzending over maakte. De programmeeropdracht werd uiteindelijk via de detacheringspartij belegd bij programmeurs uit India en die leverden bijzonder slechte, onwerkbare spaghetticode. Maar succesverhalen zijn er ook genoeg. Vrijwel alle grote softwarehuizen werken met offshore outsourcing. En zelf hebben we ook goede ervaringen. Het kan dus wel, maar je moet weten wat je doet.
Als het mis gaat bij outsourcing is het negen van de tien keer omdat er communicatieproblemen zijn:
- Taalbarrières – Vaak hebben mensen toch behoorlijk wat problemen om zich goed uit te drukken in het Engels. Belangrijke details kunnen hierdoor verloren gaan.
- Cultuurverschillen – Nederlanders kunnen nogal direct zijn en zonder veel omwegen vertellen hoe ze het willen hebben. Mensen kunnen dat als bot ervaren. Bovendien kent Nederland behoorlijk egalitaire verhoudingen tussen managers en personeel. In andere culturen kan dit anders zijn en ook dit kan miscommunicatie tot gevolg hebben.
- Geen face-to-facecontact – Tegenwoordig heb je allerlei tools waarmee je kan samenwerken, zoals Skype, Slack, Trello, et cetera. Maar al die middelen halen het niet bij face-to-facecontact.
- Moeite met het omschrijven van een taak – Het kan best lastig zijn om op te schrijven wat je precies van een ander verlangt. Als dit niet met voldoende aandacht gebeurt kan dit tot slecht geformuleerde opdrachten leiden, wat weer slechte resultaten tot gevolg heeft.
Deze communicatieproblemen zijn niet zo makkelijk te ondervangen en worden vaak onderschat. Wat je veel bedrijven ziet doen is dat ze alleen ‘makkelijk’ werk outsourcen, zoals bijvoorbeeld het hosten van een infrastructuurplatform. Dat zijn geprotocolleerde taken die je makkelijk elders neer kan leggen. Voor programmeertaken is dat echter lastiger. Programmeurs hebben de ruimte nodig om problemen zelf creatief op te lossen. Je kan niet alles voorkauwen. Bovendien is het belangrijk dat mensen aangehaakt blijven. Mensen voelen zich niet serieus genomen als je ze alleen maar simpele klusjes laat doen en als gevolg daarvan leveren ze ook minder goed werk.
Outsourcingstips
De oplossing is mijn inziens dat je je outsourcingspartij echt onderdeel maakt van je team. Ik zou daar de volgende outsourcingstips bij kunnen geven:
- Betrek outsourcingspartijen bij klantgesprekken-– Het is volgens mij onmogelijk om effectief code te schrijven als je niet precies weet waar de software uiteindelijk voor bedoeld is. Neem je outsourcingspartij dus ook mee in centraal overleg en overleg bij de klant. Mensen voelen zich dan betrokken en kunnen daardoor beter zelf beslissingen nemen.
- Ga een relatie aan de voor de lange termijn – Door lang samen te werken krijgen je mensen oog voor elkanders manier van werken. Ook andere zaken ondervang je ermee. Slecht werk of het niet halen van deadlines zal minder snel voorkomen als je weet dat je voor de lange termijn met elkaar door een deur moet.
- Neem je tijd bij het vinden van een it-partner – Ga bij meerdere partijen langs, doe bij al die partijen een proof of concept (poc) en kijk naast het geleverde resultaat ook hoe ze problemen aanpakken. Wij waarderen eigen initiatief en feedback bijvoorbeeld sterk. Onze partner wees ons tijdens de poc op een aantal ontwerpfouten die we hadden gemaakt. Dan weet je dat je een match gevonden hebt.
- Zorg voor regelmatig face-to-facecontact – Een vlucht naar India of China is duur, maar het scheelt heel erg veel als je elkaar gezien hebt. Mensen hebben dan meer voor elkaar over. Uitwisselingen kunnen wat dit betreft ook erg goed werken. Het is voor onze mensen hier uitdagend om in China aan de bak te gaan. En andersom is het voor Chinese werknemers ontzettend inspirerend om een keer rond te lopen op een Nederlandse werkvloer.
in de ruim 20 jaar dat ik als adviseur en trainer betrokken ben bij outsourcing en offshoring (vooral in de financiële wereld) zijn bovenstaande zaken niet verbeterd, integendeel. De snelle digitalisering vergroot het belang van communicatie en kennis van je eigen cultuur (wie ben ik en hoe verhoud ik mij tot de ander). Door de digitalisering wordt de samenwerking op alle niveaus veel intensiever (partnerships en teamwerk) en daarmee groeit het belang van soft skills. Het merendeel van de Nederlandse en Indiase (en andere) bedrijven geeft dit onvoldoende aandacht waardoor gestelde doelen meestal niet worden gehaald.