Webbanner cloud innersource libraries

Geef de vrijheid terug aan je developers in de Cloud via InnerSource libraries

Waarom zou je een Innersource-mechanisme in de AWS Cloud implementeren? En hoe pak je dat slim aan zodat beheerders, developers én de business daar maximaal van profiteren? In dit artikel delen ervaringsdeskundigen Menno Stroes en Bart Mommers hun inzichten. Daarnaast geven ze praktisch advies over het implementeren en inrichten van een Innersource Library.

Organisaties die applicaties ontwikkelen in de cloud hebben moeite om de juiste balans te vinden tussen de wensen van developers en IT-beheerders. Developers willen vrijheid in de cloud: de flexibiliteit om zelf te kiezen met welke tool ze nieuwe features ontwikkelen. Tegelijkertijd willen ze efficiënt kunnen (samen)werken en dubbel werk voorkomen. IT-beheerders hebben hele andere cloudbehoeften. Zij zijn op zoek naar controle om wildgroei, incompliancy, shadow IT en onnodige kosten te voorkomen. Daarvoor stellen ze regels in… regels die developers juist weer beperken in hun vrijheid. Hoe vind je als organisatie de balans tussen beide cloudwensen?

Drie cloudfases

Bij het optimaliseren van een cloudomgeving doorloopt een organisatie normaliter drie stadia. “Te beginnen met de eerste fase, die wij ook wel de Wild West Cloud noemen”, zegt Menno Stroes, AWS Managing Consultant bij Sogeti. “Hierin zijn developers vrij om te doen wat ze willen met alle mogelijke tools. Gaandeweg gaat IT-beheer zich steeds meer met cloud development bemoeien, door voorwaarden in te stellen. Dan volgt fase twee, de Bureaucratic Cloud. Door de controlemechanismen en regels kunnen developers minder snel nieuwe services ontwikkelen. Hoe los je dat op? “Dat doe je door je meer en meer te richten standaardisering, modernisering en automatisering. Zo kom je als organisatie in fase drie terecht. In deze Accelerating Cloud kan je accelerators toevoegen, zoals Centers of Enablement, CI/CD-platforms, guiding principles en FinOps.”

Innersource Library

In de derde cloudfase voldoet de manier van werken aan de wensen van developers én IT-beheerders. Hoe bereik je dit wankele evenwicht? Dat is makkelijker gezegd dan gedaan, want het vergt de nodige tijd, inzet en budget om standaardisatie, modernisering en automatisering te realiseren en dit op een slimme, voor iedereen goedwerkende manier, in te zetten. Innersource kan daarbij helpen. Tenminste, als je het op de juiste manier inricht en gebruikt. Maar wat is Innersource en hoe werkt dit? “Zie het als een open source library die alleen intern beschikbaar is. Waar iedereen samenwerkt aan gemeenschappelijke componenten en kan profiteren van elkaars ontwikkelingen”, zegt Bart Mommers, Cloud Engineer bij Sogeti. “In Innersource leg je de documentatie vast. Niet alleen de code, maar ook hoe je die moet gebruiken en wat het doel daarvan is. De library is open voor iedere betrokken medewerker, dus iedereen moet ook makkelijk kunnen vinden wat hij zoekt. Daarnaast bestaat Innersource uit herbruikbare softwarecomponenten, waarvan de parameters zorgen dat het makkelijk toepasbaar is op verschillende omgevingen en wensen.”

Voordelen voor developers

Dankzij Innersource kunnen developers sneller werken, zonder concessies aan de kwaliteit. Ze hebben toegang tot herbruikbare resources zoals eerder gemaakte features, die ze naar wens kunnen aanpassen. Kant-en-klare code, waarvan ze weten dat deze al gevalideerd is. Ook kunnen ze ervan op aan dat deze herbruikbare features en componenten veilig en compliant zijn. “Kortom, developers hoeven niet zelf meer het wiel uit te vinden”, benadrukt Mommers. “Ze houden tijd over, die ze kunnen besteden aan het tweaken van herbruikbare code waardoor deze nog meer waarde toevoegt voor hun specifieke klant. Of ze besteden extra tijd aan innovatie, bijvoorbeeld door zich te specialiseren in een bepaald gebied. Hun kennis daarover kunnen ze weer delen met collega’s via Innersource.”

Voordelen voor IT-beheerders

Ook IT-beheerders plukken de vruchten van Innersource. “Net als de developers kunnen ze dankzij de library meer doen in minder tijd. Ze hoeven immers niet meer op elk detail te letten. Door Innersource weten ze dat het met de security en compliancy van herbruikbare componenten wel goed zit. Willen ze dan toch iets checken of een nieuwe policy instellen? Dan kan dat vanaf een centrale locatie. Dat is een kwestie van één keer de code wijzigen en dit wordt automatisch overal doorgevoerd,” legt Mommers uit. In de beheermodule van Innersource kunnen beheerders ook zichtbaar maken wie, wat doet. “Wie besteedt er bijvoorbeeld veel tijd aan innovatie? Moeten we diegene daar niet voor belonen? Zo biedt Innersource je handvatten om innovatie te stimuleren.” 

Lessons learned

“Bij Sogeti werken we zelf ook met Innersource, dus we kennen de ins-and-outs, praktijkvoordelen en valkuilen als geen ander. Bovendien ondersteunen we verschillende klanten bij het werken met Innersource. Die ervaringen hebben we vertaald in enkele lessons learned”, zegt Stroes “Om te beginnen heb je guidelines nodig, bijvoorbeeld om ervoor te zorgen dat iedereen op dezelfde manier wijzigingen bijhoudt en code herbruikbaar blijft. Maak dit ook transparant voor iedereen door het automatiseren, implementeren en versioneren van templates op een uniforme manier uit te voeren. Bovendien moet software-documentatie voor iedereen vindbaar zijn. Dat vraagt om een gebruiksvriendelijke interface. Daarnaast raad ik vaak aan om core maintainers aan te stellen, want daarmee borg je innovatie. Hun taken gaan verder dan het oppakken van pull requests. Ze beantwoorden bijvoorbeeld ook vragen van developers en delen kennis over innovaties. Continue verbetering kan je ook borgen door feedback loops in te bouwen. Tot slot adviseer ik vaak om prioriteiten aan te brengen in je repository set-up. Want gaandeweg groeit de lijst aan features, waarvan sommige meer worden gebruikt dan andere. Zorg dan dat de populaire code automatisch bovenaan komt te staan, dat maakt het wel zo overzichtelijk.”

Heb je het Innersource-mechanisme op de juiste manier geïmplementeerd en ingericht? Dan profiteren niet alleen jouw developers en IT-beheerders daarvan. Want uiteindelijk versnelt Innersource ook de business – en managers kunnen dat via de beheermodule ook tot in detail cijfermatig aantonen. Applicaties en features worden sneller ontwikkeld, waardoor organisaties eerder kunnen inspelen op klantwensen en markttrends. Bovendien neemt de software quality toe. Dat leidt tot meer gebruiksgemak, productievere medewerkers en tevreden klanten.
 

Zelf aan de slag met Innersource? Wij helpen je graag verder.

Menno Stroes 1 AWS Cloud Consultant
Phone number: +31 886 606 600