Scherm iOS ontwikkelaar vaardigheden

Gepubliceerd: Laatst bijgewerkt:
iOS: software ingenieur interview vragen

Mobiele app ontwikkelaars zijn moeilijk te vinden, vooral als je probeert een app voor iOS te bouwen. Het is aan jou om op zoek te gaan naar de beste iOS ontwikkelaars om je mobiele app te bouwen. Maar dat kan een ontmoedigende taak zijn. De iOS-ontwikkelaar vaardigheden die een mobiele ontwikkelaar nodig heeft zijn niet hetzelfde als je weet je run-of-the-mill Java-ontwikkelaar.

Dit veroorzaakt een probleem voor de meeste technische recruiters. De meeste van hen hebben gewoon niet de ervaring om echt te kunnen zeggen of de iOS ontwikkelaar die ze werven de juiste iOS ontwikkelaar vaardigheden heeft of niet. Ik bedoel, je wilt niet eindigen met een grote groep van kandidaten die je moet interviewen. Dat zou leiden tot uren en uren van technische interviews waar uw IT-team op dit moment gewoonweg geen tijd voor heeft.

Wat moet ik weten om iOS ontwikkelaarsvaardigheden te screenen?

Gelukkig voor jou hebben we alle informatie verzameld die je nodig hebt om de vaardigheden van iOS ontwikkelaars effectief te screenen. Aan het einde van de gids, moet je in staat zijn om te lopen de wandeling en praten de praten als het gaat om interviewen en screenen iOS-ontwikkelaars. Je zult in staat zijn om de juiste vragen te stellen, de lingo te begrijpen, en het ontcijferen van de CV van een grote iOS-ontwikkelaar. Het belangrijkste is dat je te weten komt welke tests je kunt gebruiken om je iOS kandidaten te screenen, zodat je alleen de besten uitnodigt voor een gesprek. Maar voor dat alles, is het belangrijk om de basis te leren.

1. Wat is iOS?

iOS is het besturingssysteem dat Apple heeft ontwikkeld voor zijn alomtegenwoordige iPhone. Apple wilde niet alleen de telefoonmarkt domineren, maar heeft zijn besturingssysteem ook gebruikt voor een aantal andere apparaten, zoals de iPad, het Apple horloge en de Apple TV. Dus als je een iOS ontwikkelaar inhuurt, zal die dan coderen in iOS? Nou, niet precies.

Als je praat over een iOS Ontwikkelaarheb je het eigenlijk over een ontwikkelaar die een of beide talen gebruikt die eigen zijn aan iOS. Vanaf 2008 bracht Apple zijn eigen programmeertaal, Objective-C, uit voor gebruik op het iOS. Vier jaar geleden kwam daar Swift bij. Hoewel dit de enige twee talen zijn die beschikbaar zijn voor iOS, kun je deze talen ook gebruiken om software te ontwikkelen voor macOS. Maar ook al kunnen ze voor beide besturingssystemen worden gebruikt, toch zijn ze op een aantal belangrijke punten verschillend.

  • Objective-C is reflectief, gebaseerd op klassen en object-georiënteerd
  • Swift is multi-paradigma, protocol-georiënteerd, object-georiënteerd, functioneel, imperatief, en blok gestructureerd

Swift leende zijn algemene taalideeën zwaar van Objective-C samen met JavaScript, Ruby, en Python. Het is ook veel handiger dan Objective-C, vooral omdat het typeveilig is. Dit betekent dat het eenvoudiger is geworden om te leren programmeren voor iOS en de veiligheid en stabiliteit van applicaties te verbeteren.

Wat je zult merken is dat, hoewel er een aantal oudere systemen zijn die Objective-C gebruiken, Swift het grootste deel heeft overgenomen als de programmeertaal bij uitstek voor iOS. De leercurve voor het schrijven van veilige, foutloze code is bij Swift iets steiler dan bij Objective-C. Dat gezegd hebbende, als ontwikkelaars Swift eenmaal onder de knie hebben, is het schrijven van veilige, bugvrije code in de praktijk eigenlijk makkelijker dan het was met Objective-C. Swift maakt gebruik van dezelfde runtime-omgeving en SDK als Objective-C. Dit betekent dat het volledig achterwaarts compatibel is met de hele iOS-technologiestack en met nieuwe tools die alleen voor Swift geschikt zijn.

2. Wat is belangrijk voor een recruiter om te weten over iOS

U zult merken dat de iOS omgeving regelmatig verandert. Meestal is er één keer per jaar een grote update die informatie geeft over de gebruikte talen en de richting van de ontwikkeling. Deze worden meestal aangekondigd tijdens WWDC of de World Wide Developers Conference. Dit is het grootste evenement ter wereld voor iOS ontwikkelaars waarbij alle nieuwe iOS technologieën worden aangekondigd tijdens de keynote. Elke recruiter die op zoek is naar iOS ontwikkelaars zou moeten letten op wat hier wordt aangekondigd om op de hoogte te blijven van de laatste iOS technologieën.

De twee belangrijkste bibliotheken die alle iOS ontwikkelaars moeten kennen zijn UIKit en Foundation. Een iOS ontwikkelaar kan simpelweg geen apps bouwen zonder deze, dus het is verplicht dat de ontwikkelaar deze tools kan gebruiken. Naast de door Apple ondersteunde tools zijn er een enorm aantal open source bibliotheken en frameworks waaruit iOS ontwikkelaars kunnen putten om hun software te bouwen.

3. Hoe controleer je de vaardigheden van iOS-ontwikkelaars in de screeningfase

3.1. Technische screening van de vaardigheden van iOS-ontwikkelaars op basis van een CV

Waarschijnlijk het meest waardevolle dat het CV van een iOS ontwikkelaar je kan vertellen is het soort projecten waar de kandidaat zich mee bezighoudt. Dit kunnen essentiële functies zijn zoals Bluetooth, lokale databases en het werken met locatiediensten. Uiteraard zou een groot pluspunt zijn als ze een app hebben ontwikkeld. Een app kan worden gecontroleerd door naar de iOS app store te gaan.

Apps bouwen is niet de enige nuttige ervaring die op het cv van een kandidaat moet staan. Ervaring met andere talen, vooral C++, is mooi om te zien. Het is ook goed om te zien dat de kandidaat met een specifiek platform heeft gewerkt, zoals Apple Watch of Apple TV. Vanwege de aard van het platform wil je kennis zien van unit testing en het App Store indieningsproces. Tot slot wil je ervaring zien met de continuous-integration opzet.

Hoewel het vrij eenvoudig is om een CV te screenen, kan de woordenschat die een recruiter nodig heeft om te begrijpen wat er op het CV van een iOS ontwikkelaar staat soms verwarrend zijn. Om je te helpen hebben we een woordenlijst gemaakt die je kunt gebruiken om de belangrijkste vaardigheden van iOS ontwikkelaars te begrijpen.

3.2 Woordenlijst iOS-ontwikkelaarsvaardigheden voor technische recruiters

Talen Swift, Objective-C
Algemeen GCD, Operationele Wachtrij, Push Notificaties, Bewustzijn in code ondertekening,
Database Sqlite, CoreData, Realm
UI UIKit, Kern Animatie, Autolayout, Formaat Klassen, SnapKit
Specifieke frameworks (werken allemaal in zowel Objective-C als Swift) Kernlocatie, MapKit, AVFoundation, StoreKit, Extensies, Adresboek, EventKit, CAllKit, SiriKit, Kern Bluetooth

3.3 Meer informatie over iOS die voor een recruiter nuttig zou zijn om te weten

Aan elke nieuwe versie van iOS zijn nieuwe functies toegevoegd. En naarmate er functies bijkomen, worden er nieuwe frameworks ontwikkeld om ermee te communiceren (SiriKit, CallKit, WatchKit, en MapKit).

Verder zijn de verschillende versies van het besturingssysteem in principe hetzelfde met alleen de toevoeging van nieuwe extensies.

De meest voorkomende iOS technologiebenamingen die door elkaar worden gebruikt

CoreData en SQLite kunnen door elkaar worden gebruikt

Hoe dicht de respectieve versies van iOS-technologieën bij elkaar liggen:

Alle versies van Swift die beschikbaar zijn, lijken op elkaar. Natuurlijk heeft de taal meerdere iteraties doorgemaakt, van 1.0 tot 4.2. En elk van deze heeft zijn eigen specifieke veranderingen geïntroduceerd. Echter, als iemand ervaring heeft met drie, zou hij geen problemen moeten hebben met de nieuwste versie.

4. iOS-ontwikkelaarsvaardigheden: interviewvragen

Het interview is een belangrijk moment om het soort problemen te leren kennen waarmee uw kandidaat te maken heeft gehad en zijn aanpak om problemen op te lossen. Het kan een technische screening niet vervangen, maar het kan uw beslissing wel beïnvloeden.

4.1 Vragen over platformervaring voor een iOS-ontwikkelaar

Q1: Kies enkele technologieën uit het cv van de kandidaat en vraag hem uit te leggen wat ze zijn en hoe ze worden gebruikt.

Waarom zou je Q1 vragen: Alleen om te kijken of ze op de hoogte zijn van de technologieën die ze noemen.

Q2: Vraag de kandidaat het interessantste project te beschrijven waaraan hij heeft deelgenomen en wat zijn rol in het project was.

Waarom zou je Q2 vragen: Nagaan hoe complex en gevarieerd de projecten zijn geweest die de ontwikkelaar heeft meegemaakt en wat zijn rol was (ontwikkelaar, hoofdontwikkelaar, architect).

4.2 De vaardigheden van een iOS-ontwikkelaar: kennis en meningen

Q3: Vraag de kandidaat om Swift en Objective-C te vergelijken.

Waarom zou je Q3 vragen: Het geeft een idee van hoe ervaren de ontwikkelaar is, en of hij met Objective-C heeft gewerkt of niet. In de meeste gevallen is het niet genoeg om Swift te kennen. Zelfs op het junior niveau moet een iOS kandidaat zowel Objective-C als Swift kunnen begrijpen en gebruiken.

Q4: Welke iOS-technologieën worden nu al op grote schaal gebruikt, en welke kunnen in de toekomst populair worden?

Waarom zou je Q4 vragen: Het vertelt je of de kandidaat het vermogen heeft om trends in de IT markt en industrie te analyseren en te voorspellen, gebaseerd op iOS ontwikkelaar vaardigheden.

Q5: Hoe kan je geheugenlekken vermijden?

Waarom zou je Q5 vragen: Je zult zien of de kandidaat zich bewust is van mogelijke problemen bij het gebruik van sterke/zwakke referenties. Bedenk dat blokken en closures een sterke link naar een object kunnen behouden.

4.3 Gedragsvragen voor een iOS-ontwikkelaar

Q6: Heb je ervaring met het geven van bijles en begeleiding aan iemand in Swift?

Waarom zou je Q6 vragen: Ga na of de ontwikkelaar in staat is een goede mentor te zijn voor nieuwkomers.

Q7: Vraag op welke oplossingen en projecten van de kandidaat hij/zij het meest trots is.

Waarom zou je Q7 vragen: Dit zal u helpen het complexiteitsniveau van taken in vorige projecten te controleren

5. Technische screening van iOS-vaardigheden met een online codeertest

CV schermen en interviews kunnen nuttig zijn om iOS ontwikkelaar aan te nemen, maar ze kunnen je niet echt vertellen of je kandidaat de juiste iOS vaardigheden heeft. Wat je echt nodig hebt is dat ze daadwerkelijk software ontwikkelen. Dit kan een probleem zijn als het op de verkeerde manier gedaan wordt omdat kandidaten maar een beperkte hoeveelheid tijd en geduld hebben om een codeer project te doen. Een online codeertest kan een goede oplossing zijn. Maar hoe weet u welke u moet kiezen? De juiste test moet een aantal belangrijke kenmerken hebben.

  1. Het gaat om de soorten taken die de kandidaat daadwerkelijk zal uitvoeren als hij eenmaal is aangenomen (en de echte iOS-ontwikkelaarsvaardigheden die hij daarvoor nodig zal hebben)
  2. Het moet zowel de technologie als de technologiestapel omvatten waarin ze zullen werken
  3. Het moet zo dicht mogelijk bij de natuurlijke ontwikkelingsproces als mogelijk - Dit betekent:
    1. De kandidaat moet toegang hebben tot zijn eigen IDE
    2. Ze moeten alle bronnen kunnen gebruiken die ze normaal op het werk gebruiken, zoals bibliotheken, frameworks, Stack Overflow, en zelfs Google
  4. Het moet coderingsvaardigheden testen, maar ook bedrijfslogica
  5. Het moet duidelijk maken welk soort codeerbeslissingen de kandidaat neemt
  6. Het moet gemakkelijk overal mee naar toe te nemen zijn om de kandidaat niet onnodig lastig te vallen

Helaas voldoen de meeste online codeertests niet aan deze eisen. Algoritmetests kunnen je vertellen of de kandidaat kan coderen, maar ze kunnen je niet vertellen hoe goed de kandidaat de omgeving kent, de beslissingen die hij neemt en de bedrijfslogica die hij gebruikt. In wezen doen ze geen recht aan de vaardigheden van iOS-ontwikkelaars. Ze zijn ook een vrij onnatuurlijke manier om code te schrijven. Het resultaat is dat ze veel ontwikkelaars afschrikken die niet het gevoel hebben dat ze hun vaardigheden op deze manier accuraat kunnen weergeven. Deze ontwikkelaars lopen het risico om uit je wervingspijplijn te vallen.

De werkvoorbeelden op DevSkiller lossen deze problemen op. Op DevSkiller worden uw iOS ontwikkelaars gevraagd om een echte functie of kleine applicatie voor iOS te bouwen. De tests kunnen overal ter wereld worden afgenomen en vertegenwoordigen een natuurlijke programmeeromgeving. U kunt de verschillende iOS tests in zowel Objective-C als Swift bekijken op onze coderingstest catalogus.

6. DevSkiller kant-en-klare online iOS ontwikkelaar vaardigheidsbeoordeling

Swift
SENIOR
Geteste vaardigheden
Duur
77 maximaal minuten.
Evaluatie
Automatisch
Testoverzicht

Keuzevragen

beoordeling van kennis van Swift, iOS

Programmeertaak - Niveau: Moeilijk

iOS | Swift | NSA Cipher Tool - Los de 3 cryptografische puzzels op om de gedroomde positie als programmeur bij de NSA te krijgen.

Swift
MIDDEN
Geteste vaardigheden
Duur
48 maximaal minuten.
Evaluatie
Handmatig
Testoverzicht

Keuzevragen

beoordeling van kennis van Swift, iOS

Code leemtes

beoordeling van kennis van Swift, Unicode, iOS

Code review taak - Niveau: Medium

iOS | Swift | BookDataAnalyst - Gelieve een code review uit te voeren op deze code. Besteed aandacht aan de kwaliteit en naleving van de best practices.

Swift
MIDDEN
Geteste vaardigheden
Duur
126 maximaal minuten.
Evaluatie
Automatisch
Testoverzicht

Keuzevragen

beoordeling van kennis van iOS, Swift

Programmeeropdracht - Niveau: Medium

iOS | Swift | Book Keeper App - Initialiseer de Core Data Stack, inclusief opslaan en generic item fetching en implementeer extra functionaliteit door de ontbrekende methodes aan te vullen en de UI functionaliteit te repareren.

Swift
SENIOR
Geteste vaardigheden
Duur
165 maximaal minuten.
Evaluatie
Automatisch
Testoverzicht

Keuzevragen

beoordeling van kennis van Swift, iOS

Programmeertaak - Niveau: Moeilijk

iOS | Swift | Book Keeper App - Initialiseer de Core Data Stack om gelijktijdig te werken, inclusief het opslaan op een achtergronddraad en generieke item fetching op de hoofddraad; implementeer extra functionaliteit door de ontbrekende methodes aan te vullen en de UI functionaliteit te herstellen zodat een gebruiker in staat is om Company items en Facturen toe te voegen of te bewerken; implementeer de zoekfunctionaliteit in beide views. Tenslotte zal hij de textField invoer op de juiste wijze moeten beperken om de tests te doorstaan.

Swift
JUNIOR
Geteste vaardigheden
Duur
55 maximaal minuten.
Evaluatie
Automatisch
Testoverzicht

Keuzevragen

beoordeling van kennis van iOS, Swift

Programmeer taak - Niveau: Gemakkelijk

IOS | Swift | Weather App - Bouw een app die weerdata, ontvangen van een weerdienst backend, analyseert. De kandidaat moet het bijgeleverde JSON bestand lezen, een datamodel maken, het ontleden en de ontbrekende functies invullen om de vereiste weersomstandigheden uit het model te halen.

Swift
MIDDEN
Geteste vaardigheden
Duur
80 maximaal minuten.
Evaluatie
Automatisch
Testoverzicht

Keuzevragen

beoordeling van kennis van iOS, Swift

Programmeeropdracht - Niveau: Medium

iOS | Swift | CoffeHouse Analyst App - Implementeer de functionaliteit van het analyseren van de gegeven data voor het management door het invullen van de ontbrekende functies.

Post delen

Meer informatie over het inhuren van tech

Abonneer u op onze Learning Hub en ontvang nuttige inzichten rechtstreeks in uw inbox.

Verifieer en ontwikkel coderingsvaardigheden naadloos.

Zie DevSkiller producten in actie.

Beveiligingscertificeringen & naleving. Wij zorgen ervoor dat uw gegevens veilig en beveiligd zijn.

DevSkiller logo TalentBoost logo TalentScore logo