Als fullstack developer werk je mee aan verschillende onderdelen van de platforms die wij ontwikkelen. Hieronder geven we je een beeld van hoe wij bij 9to5 software werken.
Bij de start van een project wordt de epic voorbereid in Jira van Atlassian. Het team geeft de schattingen op van het aantal sprints aan werk en na goedkeuring gaat eerst onze designer aan de slag met het visuele ontwerp. Dit doet hij in Figma en maakt daarbij gebruik van het Atomic Design System (van Brad Frost). Na afronding is er een mondelinge overdracht aan de developers die het zullen gaan maken en worden de benodigde assets klaargezet.
De backend developers gaan dan eerst samen bekijken welke queries en mutations er zullen moeten worden geïmplementeerd in de GraphQL omgeving van het project. Vervolgens wordt de code in Elixir (Phoenix framework) geschreven met een zo groot mogelijke test coverage, waar we voor sommige projecten gebruik maken van Coveralls om dit te kunnen monitoren. Als overdracht naar de frontend (web / iOS / Android) developers wordt er een 'developer handoff' aan de documentatie (in Confluence van Atlassian) toegevoegd en vervolgens ook met elkaar besproken.
De web developer implementeert het design in VueJS (soms met NuxtJS) gebruik makend van de slimme componenten die ook in het Atomic Design System worden gebruikt. Daarnaast voegt hij het Apollo Framework toe om de communicatie via GraphQL te kunnen verzorgen. De deployment vindt plaats via CircleCI naar de staging-omgeving. Na interne acceptatie krijgt de klant een test-plan zodat zij eenvoudig de acceptatie-test kunnen uitvoeren. Na afronding wordt het project opgeleverd door de deployment naar de productie-omgeving.
De Android developer ontwikkelt de app native in Kotlin, met MVVM, Hilt, coroutines en flows. De iOS app wordt uiteraard in Swift ontwikkeld, gebruik makend van oa. Xcode, Combine, MVVM. Om de apps te kunnen deployen is er een CI/CD proces opgezet mbv Bitrise. Om te voorkomen dat wij en de klant teveel tijd kwijt zijn met testen voegen we zoveel mogelijk automatische tests toe, unit tests maar soms ook UI tests. Na interne acceptatie laten we de klanten vervolgens op een gestructureerde manier de staging-versie testen dmv een test-plan. Ze kunnen de apps downloaden via 'Closed testing' van Google Play en TestFlight van Apple. Na acceptatie dienen wij de apps in ter review en begeleiden we ook het proces om live te gaan.
Na oplevering van het project monitoren wij het systeem met behulp van tools zoals Firebase Crashlytics, Sentry en Grafana. Om snel te kunnen schakelen bij incidenten maken wij voor sommige klanten gebruik van OpsGenie van Atlassian. Ook bij eventuele supportvragen zijn wij beschikbaar om de klant of gebruiker goed te kunnen ondersteunen.
Past dit ook bij jouw manier van werken en zou jij hier graag een onderdeel van uitmaken? Dan maken we graag eens kennis!