Evelyn

Mobile developer gezocht: hoe neem je de juiste persoon aan?

Eén van de hottest jobs van 2016 is die van mobile developer. En dat is niet zo gek: steeds meer mensen hebben één of meerdere mobiele apparaten in huis. Alleen al in Nederland bezit bijvoorbeeld 80% van de bevolking een smartphone. De groei van het aantal smartphone- en tabletgebruikers vraagt om de doorlopende ontwikkeling van nieuwe apps – en dus om veel, heel veel app developers. Steeds meer bedrijven willen eigen apps om extra service aan hun klanten te bieden. Wat moet je weten om de juiste keuzes te kunnen maken op het gebied van app development? Hoe neem je de mobile developer aan die qua skills precies aansluit bij je wensen? Bonque helpt je op weg.

Een app laten ontwikkelen, betekent keuzes maken: je moet bepalen voor welk platform (of welke platforms) je je app wilt laten ontwikkelen. Pas als je dat hebt bepaald, weet je wat voor eisen je moet stellen aan een mobile developer. Natuurlijk wil je te allen tijde een bad hire voorkomen. Wat moet je weten om te bepalen of je een goede kandidaat te pakken hebt? We hebben een aantal handige feiten voor je op een rijtje gezet.

iOS vs. Android

Apps zijn een belangrijk onderdeel van de operating systems van smartphones en tablets. De ontwikkeling en het onderhoud van apps behoren tot de taken van een app-developer. En omdat er zoveel verschillende mobiele devices worden aangeboden, moet er voor elk populair platform waar een device op draait, ook code geschreven worden in een platform-afhankelijke taal. De meest gebruikte platformen zijn:

  • iOS
  • Android

Apples App Store

Veel topgames en -apps komen vaak eerst voor iPhone uit: Apples iOS is één van de populairste besturingssystemen van dit moment.

Je app in Apples App Store aanbieden kan niet zomaar; Apple heeft een geavanceerd kwaliteitsfilter. Het voordeel van dit filter is dat er minder van dezelfde apps worden aangeboden en er kwalitatief goede apps worden toegelaten in de App Store. Daarnaast betaal je als indiener van een app, $99,-, (± €90,-) per jaar voor een App Store account. Dat account heb je nodig om een app in te kunnen dienen – en na goedkeuring te kunnen plaatsen (deployen) – in Apples App Store.

Googles Play Store

De Android Store (Google Play Store) heeft geen kwaliteitsfilter. Dat betekent dat je app veel sneller wordt toegelaten op het Android-platform dan op iOS. Daarnaast kan je app na deployment (‘publicatie’) in de Google Play Store binnen een paar uur door je gebruikers worden gedownload. Ter vergelijking: bij Apples App Store duurt dit wel een paar weken. Als indiener van de app betaal je voor de Google Play Store eenmalig $25,- (± €23,-) aan registratiekosten.

Kiezen of delen

Als bedrijf kan je je apps op meerdere platformen uitbrengen of exclusief inzetten op één van de populairste platformen: Android of iOS. Richt je je exclusief op één platform, dan mis je natuurlijk de gebruikers die met andere besturingssystemen werken; weet dus wat je doet als je deze keuze maakt.

Wil je een app uitbrengen op meerdere platformen? Dan kan je ervoor kiezen om a) verschillende native apps naast elkaar uit te brengen of b) je app(s) hybride te laten ontwikkelen.

Native of hybride?

Het verschil tussen native en hybride apps zit in de techniek – in de code erachter. Waar native apps specifiek voor één platform ontwikkeld worden, worden hybride apps zo ontwikkeld dat ze compatibel zijn met meerdere platformen of besturingssystemen. Logischerwijs vraagt het ontwikkelen van een native app om een heel andere werkwijze dan het ontwikkelen van een hybride app: bij beide werkwijzen zijn weer andere technische skills vereist.

Het is dus van belang om te weten wat voor type app(s) je wil gaan of laten ontwikkelen (en wat het beschikbare budget daarvoor is), voor je een mobile developer gaat sourcen. Ga je voor een native of een hybride app? En welke hard skills zoek je dan in een developer?

App development 1

Native apps

Native apps zijn speciaal ontwikkeld voor één platform – bijvoorbeeld Android of iOS. Ze geven daardoor een optimale gebruikerservaring op alle devices die draaien op het gekozen besturingssysteem.

De ontwikkelaar van een native app kan zorgen voor een goede integratie met het mobiele device, wat betekent dat de app data uit features van een device (zoals GPS of de camera) kan opvragen om een betere gebruikerservaring te bieden.

Wat moeten native ontwikkelaars kunnen?

Kies je voor een native app, dan zoek je een ontwikkelaar die helemaal thuis is in native code. Deze programmeurs zijn vaak wat technischer ingesteld dan front-end developers. De ontwikkelaar heeft kennis van en ervaring met platformspecifieke tools en talen voor het ontwikkelen van apps die draaien op het Android- of iOS-platform.

Vereiste hard skills voor native Android-ontwikkelaars

Een native Android-developer moet ervaring hebben met:

  • Java
  • Android Software Development Kit (SDK)
  • IDE Android Studio
  • Objectgeoriënteerd programmeren

Vereiste hard skills voor native iOS-ontwikkelaars

Een native iOS-developer moet ervaring hebben met:

  • Objective-C of Swift
  • IDE Xcode8
  • Objectgeoriënteerd programmeren

App development 2

Hybride apps

Wil je in één keer een app laten ontwikkelen die cross-platform werkt? Dan kies je voor een hybride app. Door de hybride manier van ontwikkelen worden de kosten aanzienlijk verminderd: je hoeft de app maar één keer in één taal te ontwikkelen en kunt hem dan direct op meerdere platformen uitbrengen.

Hybride apps worden voor het grootste deel geschreven in HTML en JavaScript. (Mobile) Development Tools als PhoneGap zorgen ervoor dat developers kunnen ontwerpen en programmeren vanuit één codebase voor meerdere platformen.

Een hybride app heeft veel voordelen die een native app ook heeft: een goede gebruikerservaring en de functies van de app kunnen features van een de mobiele device ‘opvragen’. Daarnaast is een hybride app, net als een native app, gewoon verkrijgbaar via een App Store op je mobiele device. Waar native apps een betere integratie hebben met de hardware van een telefoon, kunnen ook hybride ontwikkelde apps steeds meer profiteren van de voordelen van de hardware van een telefoon.

Het nadeel van hybride programmeren is dat je app minder intuïtief aanvoelt, door de prestaties en/of de snelheid van de app. Je bent met hybride programmeren daarnaast ook afhankelijk van de gekozen tools; of deze up-to-date blijven met de laatste ontwikkelingen (bijvoorbeeld als het gaat om integratie van nieuwe hardwarefuncties), moet je natuurlijk altijd maar afwachten.

Wat moeten hybride ontwikkelaars kunnen?

Omdat hybride apps worden geschreven in HTML(5) en andere (script)talen voor webpagina’s, zoek je voor de ontwikkeling van een hybride app naar iemand met de kwaliteiten van een front-end developer. Deze developers kunnen namelijk webapplicaties én hybride applicaties maken. De front-end ontwikkelaar heeft kennis van en ervaring met (script)talen en (het werken met) frameworks voor webdevelopment, die handig zijn en vaak gebruikt worden voor het ontwikkelen van apps voor mobiele devices. De focus van front-end developers is vaak iets minder technisch dan die van de native app-ontwikkelaars.

De functie-eisen voor een programmeur die kennis heeft van hybride ontwikkelen, kan verschillen per bedrijf. Als we kijken naar het wereldwijde aanbod van vacatures voor ontwikkelaars die hybride apps kunnen bouwen, dan worden over het algemeen genomen de volgende hard skills gevraagd:

Tot slot: de soft skills van een mobile developer

Naast de hard skills zijn er een aantal soft skills waarnaar je kunt zoeken als je een goede mobile developer zoekt. Deze skills hebben niet direct betrekking op het schrijven van native of hybride code en kunnen variëren – vaak zijn de gewenste soft skills ook afhankelijk van waar er binnen het bedrijf de nadruk op ligt. De meest gevraagde soft skills voor mobile developers zijn:

  • Ervaring met agile principes (bijvoorbeeld met Scrum)
  • Op de hoogte zijn van de laatste trends in mobile development
  • Kennis van version control-systemen zoals Git

Conclusie

Als bedrijf moet je goed voor ogen hebben wat voor app(s) je gaat (laten) ontwikkelen. Als je dat weet, dan kun je bepalen welk(e) platform(en) het meest geschikt is/zijn en hoe je de app wilt laten ontwikkelen: in native of hybride code. Welk platform je kiest, is afhankelijk van het beschikbare budget en de beoogde doelgroep van de app.

Voor grotere bedrijven met grotere budgetten kan de ontwikkeling van apps op verschillende platformen gelijktijdig ‘native’ worden uitgebracht; dat betekent exclusief voor bijvoorbeeld Android en iOS, geschreven in native code. Voor kleinere bedrijven is het uitbrengen van apps in native code vaak niet mogelijk. Zij kunnen er dan voor kiezen om een app op één platform, dus Android of iOS, uit te brengen, of om een hybride app te laten ontwikkelen.

Kies je voor een native app?

> Neem een mobile developer aan met platformspecifieke, ‘native’ ervaring.

Kies je voor een hybride app?
> Neem een mobile developer aan met sterke front-end kennis.

(Visited 1 times, 8 visits today)
Klaar voor de volgende stap? Bekijk meer dan 1.500 ICT-vacatures Alle vacatures