Waar werkt Changing Life aan? Deel I

Aangezien we meer en meer een lifestyle-tech bedrijf worden is het belangrijk dat we veel aandacht schenken aan de technologie. De afdeling die zich hier het allermeest om bekommert binnen Changing Life is de Changing Life Factory, bestaande uit 20 mensen.

changing life

De afdeling bestaat uit twee teams:
Team Knowledge & Education; de experts op inhoudelijk vlak
Team User Experience & Engineering; de experts op technologisch vlak

Technologie is voor ons een middel om onze informatie over te brengen. Technologie of het ontwikkelen van mobiele applicaties is voor ons geen doel op zich. In deze blogpost een overzicht van waar we op technologisch vlak aan werken en waarom.

Allereerst wat achtergrondinformatie
In 2011 zijn we gestart met de ontwikkeling van de Personal Body Plan applicatie. Toentertijd enkel voor web en de iPhone, met als inhoud de pijler training en online coaching. De Android app kwam pas eind 2013 op de markt, inclusief de overige pijlers: gedrag, voeding en herstel. De iPhone app ging mee in deze ontwikkeling en bood ook toegang tot alle pijlers.

In 2013/2014 deden we onze softwareontwikkeling niet in-house, maar via een externe softwareleverancier. Aangezien het toen allemaal in de kinderschoenen stond, is er destijds te weinig nagedacht over de langere termijn. Waardoor de architectuur van het platform in zijn totaliteit niet voorbereid was op de explosieve groei die zich inzette vanaf eind 2014. Je zou het kunnen vergelijken met een fundering die is neergelegd voor een eengezinswoning, waar nu een wolkenkrabber op moet komen te staan.

Sinds anderhalf jaar zijn we alle ontwikkeling in-house gaan doen om deze architectuur opnieuw in te richten, met als doel flexibiliteit, schaalbaarheid en stabiliteit. Dit heeft nogal wat voeten in de aarde omdat de complexiteit groot is. Op dit moment werken hier 12 developers (backend, mobile & frontend) fulltime aan.

De introductie van het Changing Life Platform
Het bouwen van een microservice platform is de architectonische benadering waarvoor we hebben gekozen om de toekomst mee tegemoet te gaan. Dit platform heet het Changing Life Platform. Hier zijn de applicaties van onze diensten (Personal Body Plan, Coaching, DoorMeal Delivery, etc.) op aangesloten.

Al deze kleine onderdelen worden los gebouwd en daarom spreken we van microservices. Deze onderdelen communiceren vervolgens met elkaar via een eigen API (Application Service Provider). Dit is van belang, omdat het ene onderdeel data en informatie nodig heeft van het andere onderdeel om te kunnen functioneren.

Door het platform op deze wijze in te richten kunnen we sneller ontwikkelen en functionaliteiten toevoegen, zonder dat we ons zorgen hoeven te maken dat een wijziging in het ene onderdeel negatieve gevolgen kan hebben voor het andere onderdeel. Dit zorgt er uiteindelijk voor dat het platform schaalbaar, flexibel en stabiel is.

Hoe werken jullie?
We hanteren de Scrum werkwijze binnen de Changing Life Factory. Concreet betekent dit dat onze developers verantwoordelijk zijn voor een specifiek onderdeel van het platform. De basisprincipes van het werken in Scrum zijn het iteratief doorontwikkelen, het aanbrengen van focus en het sturen op basis van feedback.

We werken in ‘sprints’ van twee weken. Voorafgaand aan een sprint vindt er een sprintplanning plaats. In deze sessie wordt bepaald aan welke onderdelen er de komende sprint wordt gewerkt. In principe bevat een sprint altijd taken die ook binnen deze twee weken kunnen worden afgerond. Grotere projecten worden dus in kleinere stukken verdeeld. Zo is het mogelijk stap voor stap door te ontwikkelen, aangezien er elke twee weken een moment van reflectie is.

Nieuwe onderdelen die worden geplaatst in de sprint komen vanuit de backlog. De backlog is eigenlijk een ‘dump’ van alle functionaliteiten en ideeën die in de toekomst mogelijkerwijs worden gebouwd. In de sprintplanning wordt bepaald welke onderdelen uit de backlog daadwerkelijk in de sprint komen en welke prioriteit ze hebben binnen deze sprint.

changing life - chart
Het voordeel van de Agile werkwijze is de flexibiliteit van werken. Je kunt adequaat en snel beslissen om toch een andere richting in te slaan. Dit kan bijvoorbeeld noodzakelijk zijn wanneer er een fout optreedt in de software, de behoeften van de doelgroep veranderen of dat je extra functionaliteiten wilt toevoegen.

Daarnaast is het fijn dat de rest van de organisatie ook op een agile manier (Kanban) werkt. Dit betekent dat ook andere afdelingen werken in sprints en dat deze in elkaar overlopen. Dit maakt het efficiënt werken makkelijker, aangezien de werkzaamheden uit de sprints op elkaar worden afgestemd. Dit zorgt er voor dat we achter de schermen al een hoop functionaliteiten hebben gebouwd die we de komende tijd releasen.

changing life - post its

Conclusie
In deze blogpost heb je meer kunnen lezen over de opzet van ons technologisch platform en de werkwijze om verbeteringen door te voeren. Op deze wijze hopen we je meer inzicht te geven in hetgeen we achter de schermen doen, ook al is dat aan de voorkant wellicht nog niet altijd zichtbaar.

In deel II kun je meer lezen over alle ontwikkelingen per product.

– Tom Barten

Een bericht schrijven

Het e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *

Je kunt de volgende HTML opmaak gebruiken

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Download het gratis e-book: "Word de beste versie van jezelf"