IT=Alkmaar is een samenwerking van tien Alkmaarse IT-bedrijven. Bedrijven die allemaal hun eigen expertise, werkwijze en bedrijfscultuur hebben. Om die reden interviewen we elke week een medewerker van één van die bedrijven om meer over hen te weten te komen. Deze keer is het de beurt aan Niek Nijland van Betty Blocks.
Niek, zou je ons iets meer kunnen vertellen over Betty Blocks?
Jazeker! Betty Blocks is een bedrijf dat een platform maakt. Met dat platform zorgen wij ervoor dat mensen die niet kunnen of willen programmeren webapplicaties kunnen maken. Dat is wat wij in een notendop doen.
En hoe zou je de bedrijfscultuur bij Betty Blocks omschrijven?
Dat kan je denk ik opdelen in twee dingen. Hoe wij omgaan met elkaar en wat onze dagelijkse werkzaamheden zijn.
Tijdens onze dagelijkse werkzaamheden werken wij agile. Wij werken via de scrum methode, waarin wij werken in blokken van twee weken. Elke twee weken moet elk team iets opleveren dat op productie staat. Door die blokken zo op te delen kunnen we elke twee weken bijsturen naar wat de belangrijkste dingen zijn om te produceren. Dus welke features er het meest gevraagd worden door onze gebruikers en welke aanpassingen en verbeteringen er nodig zijn. Elk team is daarin verantwoordelijk voor zijn eigen onderdeel van het platform.
Dan heb je het gedeelte van hoe wij met elkaar omgaan. Als we buiten corona omkijken is Betty Blocks een bruisend bedrijf op het moment dat iedereen op kantoor is. Het is altijd druk, de lunch is goed verzorgd en er worden leuke activiteiten georganiseerd. We hebben leuke feestjes, de vrijdagmiddagborrel is altijd goed verzorgd en we hebben leuke collega’s. Iedereen is heel open naar elkaar en kent elkaar.
Dat klinkt als een leuk bedrijf om voor te werken! Maar even terug naar de dagelijkse werkzaamheden. Welke technieken gebruiken jullie?
Wij maken dus de applicatie. Wij passen daar verschillende technieken op toe. De programmeertalen die wij gebruiken zijn voornamelijk Elixir en Javascript. Eigenlijk schrijven wij daarmee twee gedeeltes van het platform. We delen dat op in design time en run time.
Design time is het gedeelte waar gebruikers de applicatie in elkaar klikken en run time is waar de gebruikers van onze gebruikers in werken. Dat is ook gelijk het interessante gedeelte van het werken bij Betty Blocks. We moeten rekening houden met twee soorten gebruikersgroepen. Voor de gebruikers in design time maken wij een API en de frontend applicatie. Die frontend applicaties maken gebruik van die API.
En als derde maken we compilers. Een compiler maakt van alles wat in design time in elkaar wordt geklikt een run time applicatie. Die runtime applicatie staat helemaal los van design time, dus als er iets gebeurt met ons design time platform dan blijft het run time platform gewoon draaien. De gebruikers van onze gebruikers zullen dus nooit last hebben van een outage van ons.
Zou je me iets kunnen vertellen over het meest uitdagende project waar jullie aan gewerkt hebben de laatste tijd?
Voor mij persoonlijk is het meest uitdagende project het werken aan een javascript compiler. Ik werk aan wat wij noemen de page builder en dat is eigenlijk een interface waarmee je slepend een webpagina in elkaar kan zetten.
Dus stel je voor jij wil een navigatiebalk hebben met daarin een hamburger menu, daaronder een titel en bijvoorbeeld een overzicht van bepaalde data die je wilt tonen. Dat kan je dan allemaal in elkaar slepen met de page builder. Deze wordt ontwikkeld in design time, maar zodra onze gebruikers dat aan hun gebruikers willen voorschotelen heb je dus de run time nodig. En die stap daartussen, om van design time naar run time te gaan, dat gebeurt met de compiler.
De uitdaging in die compiler is vooral om iets super generieks om te zetten naar een goed performende en heel efficiënte run time applicatie. Normaal schrijf je als developer een code om een applicatie te maken. In dit geval wordt het echter niet getypt, maar genereren wij die hele applicatie op basis van data uit die design time. Dus dat is echt wel het meest uitdagende project waar ik de laatste tijd aan gewerkt hebt.
En wat onderscheidt jullie van de concurrentie?
Wij richten ons op twee gebruikersdoelgroepen. De een noemen wij de pro-coder en de ander de no-coder. Stel je voor: Je hebt een groot bedrijf, daar zit een IT-afdeling en je hebt allemaal business users die nu bijvoorbeeld iets via Excel doen. Dat blijkt echter niet heel efficiënt en daarom willen ze dat graag omzetten naar een webapplicatie, alleen kunnen ze niet programmeren.
Wat je dan kan doen is de IT-afdeling, dat zijn in ons geval de pro-coders, bepaalde dingen klaar laten zetten voor de no-coders. Dat kan bijvoorbeeld de huisstijl zijn, of ze kunnen dienst technische dingen oppakken. Dan kunnen de no-coders, de business users, zelf de applicatie in elkaar gaan klikken en dat zo makkelijk mogelijk. Vaak zie je bij concurrenten dat ze alleen de pro-coder of alleen de no-coder ondersteunen en wij proberen dat allebei te doen.