Wie man die Fähigkeiten von React Native-Entwicklern überprüft

Veröffentlicht: Zuletzt aktualisiert:
Wie man die Fähigkeiten von React Native-Entwicklern überprüft

Während React die gesamte große Presse bekommt, ist React Native immer mehr zu einem wesentlichen Bestandteil des JavaScript-Universums geworden. Es ermöglicht es Entwicklern mobiler Geräte, mobile Anwendungen zu schreiben, die sowohl auf iOS als auch auf Android portiert werden können. Dies hat den Vorteil, dass Entwickler mobiler Anwendungen auf JavaScript, die derzeit am häufigsten verwendete Sprache, zurückgreifen können, anstatt separate iOS-Kenntnisse (Objective-C und Swift) und Android-Kenntnisse (Java und Kotlin) entwickeln zu müssen. Aber wie bei allen technischen Stacks reicht es nicht aus, JavaScript einfach nur zu kennen. Sie müssen auch ein tiefes Verständnis von React Native haben. Woran können Arbeitgeber also erkennen, ob ein Entwickler von React Native über die erforderlichen Fähigkeiten verfügt?

Ein Leitfaden zur Überprüfung der Fähigkeiten von React Native-Entwicklern

Dieser Leitfaden gibt technischen Recruitern alle Informationen, die sie benötigen, um React Native Entwickler-Kandidaten zu screenen. Darin finden Sie:

Was ist ein React Native Entwickler

1. Was ist React Native?

React Native ist ein Framework, das von Facebook mit dem Ziel entwickelt und gepflegt wird, den Prozess der Entwicklung von plattformübergreifenden mobilen Anwendungen zu vereinfachen, vor allem in Bezug auf die Benutzeroberfläche. Es baut auf einer anderen JavaScript-Bibliothek React auf, die schnell den Status der beliebtesten und bekanntesten Tools unter den Fronted-Entwicklern erreicht hat. Aber sein Aufstieg hat einige Kontroversen hervorgerufen.

React Native wurde 2015 als Open-Source-Projekt veröffentlicht und spaltete schnell die Community der mobilen Entwickler. Bevor React Native aufkam, gab es eine Reihe von Tools, die in HTML, CSS und JavaScript geschriebene Webseiten in einem eigenständigen Browser anzeigten, der die native App imitierte. Wenn sich das klobig anhört, haben Sie recht. Sie haben sich als mühsam in der Anwendung erwiesen und waren nicht sehr populär.

React Native hingegen vermeidet es, die gleichen Abkürzungen wie seine Vorgänger zu nehmen. Die von der Anwendung gerenderte Ansichtshierarchie ist vollständig nativ für das System, auf dem sie läuft. Anders ausgedrückt: Die App sieht aus, als wäre sie eine native App und nicht eine Webseite. Das macht React-Native-Apps ununterscheidbar von regulären Anwendungen, die in Swift, Objective-C, Kotlin oder Java geschrieben wurden. Um zu sehen, wie es in der Praxis funktioniert, schauen Sie sich beliebte Apps wie Facebook, Messenger, Instagram oder Discord an. Selbst ein Experte würde Schwierigkeiten haben zu erkennen, welche Teile dieser Apps in React Native und welche mit einem anderen Tech-Stack geschrieben wurden.

1.1 Der Unterschied zwischen React vs. React Native

React und React Native sind beides Open-Source-Projekte, die von Facebook entwickelt wurden, aber nicht dasselbe sind. Reagieren Sie ist eine JavaScript-Bibliothek für die Erstellung des Frontends von Web-Apps, während React Native ein Framework ist, das ein einheitliches Set an Tools für die Erstellung mobiler Anwendungen für iOS und Android bietet. Dies führt zu grundlegenden Unterschieden wie der Tatsache, dass React in HTML gerendert wird, während React Native dies nicht tut. React Native gibt Entwicklern auch die Möglichkeit, native Ansichten, die in plattformspezifischen Sprachen wie Swift oder Kotlin geschrieben wurden, in etwas zu konvertieren oder zu überbrücken, das von React Native genutzt werden kann.

Aber trotz ihrer Unterschiede sind sich React und React Native bemerkenswert ähnlich, wobei React Native viele der Grundlagen von React verwendet. Die Arbeit mit React Native erfordert die Verwendung von 70-80% der Komponenten und Praktiken von React. Aus diesem Grund ist die Lernkurve für einen React-Entwickler, um React Native zu lernen, nicht sehr steil. Dennoch sind es zwei separate Technologien, die nicht miteinander verwechselt werden sollten.

2. Wofür wird React Native verwendet?

Der größte Vorteil von React Native ist, dass es dem React Native-Entwickler erlaubt, Anwendungen für verschiedene Plattformen zu erstellen, ohne mehrere Tech-Stacks erlernen und verwenden zu müssen. Facebook nennt diesen Ansatz "learn once, write anywhere". Ihr Ziel bei der Entwicklung von React Native ist es, das für die Erstellung mobiler Anwendungen erforderliche Wissen zu vereinheitlichen.

React Native bietet Entwicklern eine deklarative Methode zur Erstellung von Benutzeroberflächen. Laienhaft ausgedrückt, bietet dies eine viel sanftere Lernkurve im Vergleich zum nativen UIKit für iOS oder Android SDK. Dies hat dazu geführt, dass viele App-Entwickler es als Einstieg in die mobile App-Entwicklung nutzen. Es hat auch zu einer Reihe von konkurrierenden Tools wie Googles Flutter oder Apples kürzlich angekündigtem SwiftUI geführt, die nach ähnlichen Prinzipien entwickelt wurden.

Aber auch wenn es einen einfachen Weg darstellt, in die App-Entwicklung einzusteigen, ist React Native die Grundlage einiger leistungsstarker Apps. Bloomberg, Airbnb und UberEats sind allesamt großartige Beispiele für Apps, die mit React Native entwickelt wurden.

Was sollte ein IT-Recruiter über einen React Native-Entwickler wissen

3. Was ist für einen IT-Recruiter wichtig, um über React Native zu wissen?

Da React Native noch ein recht junges Framework ist, unterliegt es zahlreichen Änderungen, die sich entweder geringfügig oder stark auf die Arbeit der Entwickler auswirken. Die meiste Zeit sind diese Änderungen opt-in und es gibt wenig bis keine harten Deprecations, die einen React Native-Entwickler dazu veranlassen könnten, seine Codebasis zu migrieren.

Aufgrund des Open-Source-Charakters ist die Roadmap mit allen geplanten Änderungen und Verbesserungen für die Community verfügbar. Mit den kürzlich hinzugefügten Hooks und weiteren, für die nahe Zukunft geplanten Änderungen zur Vereinfachung der Bedienung wird der Prozess der Erstellung einer mobilen Anwendung noch schneller und bequemer als je zuvor.

Ein unbestreitbarer Vorteil von React Native ist seine breite und hilfreiche Community. Viele Fragen auf allen Ebenen wurden bereits entweder in einem Blog-Artikel, einem Eintrag auf Stack Overflow oder einer Mikro-Bibliothek, die als NPM-Paket veröffentlicht wurde, beantwortet. Es gibt eine Menge Ressourcen für Anfänger zum Lernen und für fortgeschrittene Entwickler, um ihr Wissen zu erweitern.

Eine wichtige Sache, die man sich merken sollte, ist, dass man Facebooks "learn once, write anywhere" Ansatz nicht mit "write once, write anywhere" verwechseln sollte. Es ist in React Native immer noch schwierig, eine App zu schreiben, die in iOS und Android funktionieren würde. Das liegt daran, dass es immer noch viele systemabhängige Funktionen gibt, die eine Aufteilung von Teilen Ihres Codes in separate iOS- und Android-Versionen erfordern. Dennoch ist das Ziel von React Native, die Fähigkeiten zum Erstellen von Apps zu vereinheitlichen, nicht eine App zu erstellen, die auf beiden Plattformen funktioniert.

3.1 Welche Erfahrungen sollte ein React Native Entwickler haben

Bei der Beurteilung eines Lebenslaufs eines React Native-Entwicklers kommt es wirklich auf die Art der Position an, für die ein Kandidat rekrutiert wird. Die Beteiligung an kommerziellen Projekten ist ein Muss, wenn es um Senior- oder Lead-Level-Positionen geht, da für diese Positionen geschäftsbezogenes Know-how erwartet wird. Für andere Ebenen spielt es keine so große Rolle. Ein Vorteil von Open-Source-Beiträgen ist, dass sie dem Recruiter zusätzliche Einblicke in den Code-Stil oder die Art und Weise, wie der Kandidat mit der Community interagiert, geben können. Zusammenfassend lässt sich sagen, dass es wirklich wichtig ist, die Bedürfnisse des Teams und die Aufgaben der Rolle zu verstehen, bevor man mit dem Screening-Prozess beginnt.

Wie verifiziert man React Native-Fähigkeiten in der Screening-Phase?

4. Technisches Screening der Fähigkeiten eines React Native-Entwicklers auf Basis eines Lebenslaufs

React Native ist ziemlich einzigartig in Bezug auf die Art und Weise, wie Menschen in die Entwicklung einsteigen, und die Hintergründe, aus denen sie kommen. Einige Webentwickler, die mit JavaScript und möglicherweise auch mit React selbst vertraut sind, möchten vielleicht ihre Fähigkeiten um die mobile Entwicklung erweitern. Umgekehrt werden einige native mobile Entwickler die Stärken des Ansatzes und der Werkzeuge von React Native erkennen und diese in ihrer täglichen Arbeit nutzen wollen. Beide können einen wichtigen Beitrag für das Team leisten, ersterer bringt JS- oder React-spezifische Patterns und Best Practices mit, letzterer das Wissen über einige Features und Einschränkungen einer mobilspezifischen Umgebung. Es wäre gut für den Recruiter zu wissen, was genau die Rolle des Kandidaten wäre und welche Fähigkeiten vom Team gefragt sind.

React Native Entwickler-Glossar

5. React Native-Glossar für technische Recruiter

Aktuelle JavaScript-Standards ECMAScript2015 (alias ES6), ECMAScript2019 (alias ES10)
JavaScript-Superset, das starke Typisierung hinzufügt TypScript
React Native-Bibliotheken React-Router, Redux, Redux-Thunk, Redux-Saga, GraphQL

Paketmanager

NMP, Garn
JavaScript-Erweiterungen JSX
Werkzeuge, die helfen, den Code-Stil beizubehalten ESLint, TSLint, Hübscher
Test-Läufer Scherz, Mokka

5.1 Welche Technologien in einem Lebenslauf eines React Native-Entwicklers zu suchen sind

Ein wichtiger Punkt, auf den Sie achten sollten, ist der JavaScript-Standard, mit dem der Kandidat vertraut ist. Ausgehend von 2015 mit ECMAScript2015 (auch bekannt als ES6), wird jedes Jahr ein neuer JavaScript-Standard veröffentlicht. Die aktuelle Iteration ab 2019 heißt ECMAScript2019 (ES10). Diese unterschiedlichen Standards können Auswirkungen auf die React Native API haben, die der Kandidat bisher verwendet hat.

Die wichtigste Änderung kam zwischen den Standards ES5 (2009) und ES6 (2015). Aber Code, der in den neueren Standards geschrieben wurde, kann mit Tools wie Babel immer in die älteren Standards übertragen werden.

5.2 Andere Dinge, auf die man in einem Lebenslauf eines React Native-Entwicklers achten sollte

Eine Fähigkeit, die auch für einen React Native-Entwickler nützlich sein kann, ist TypeScript. Dies ist eine Obermenge von JavaScript, die statische Typisierung verwendet. Statische Typisierung hilft im Allgemeinen dabei, einige Fehler im Code viel früher zu identifizieren (ersetzt aber nicht die Unit-Tests in dieser Angelegenheit) und erlaubt es den Entwicklern, ihre Absichten über die öffentlichen APIs, die sie der Öffentlichkeit zugänglich machen, auf eine klarere und besser strukturierte Weise auszudrücken.

Es gibt auch eine Menge Ad-hoc-Bibliotheken für React Native, die sich auf die Lösung bestimmter Probleme wie Navigation oder Zustandsverwaltung konzentrieren. Die Vertrautheit mit diesen korreliert stark mit den Arten von Projekten, an denen der Kandidat gearbeitet hat. Wenn ein Kandidat eine Bibliothek wie React-Router, Redux, Redux-Thunk, Redux-Saga, GraphQL oder viele andere auflistet, könnte dies ein interessanter Einstiegspunkt für die Diskussion über die bisherigen Erfahrungen des Kandidaten sein.

React Native Entwickler Interview Fragen

6. React Native Interview Fragen

Ein Lebenslauf lässt Sie wissen, wie ein Kandidat sein Wissen präsentiert. Aber das ist nicht genug, um Ihnen zu sagen, ob er die Fähigkeiten hat, die Sie brauchen. Schließlich kann jeder alles in einen Lebenslauf schreiben. Sie müssen dann in einem Telefonscreening zu ihren Fähigkeiten befragt oder nach dem Bestehen der Coding Skills Assessment Phase interviewt werden.

6.1 Fragen zur Erfahrung eines React-Native-Entwicklers

Frage 1: Können Sie die Anwendungen beschreiben, an denen Sie in der Vergangenheit gearbeitet haben? Wie haben Sie React Native in diesen Anwendungen eingesetzt?

Grund: Diese Frage sollte vor allem als Warm-up dienen, damit der Kandidat sich öffnet und die Initiative ergreift, um über seine allgemeinen Erfahrungen zu sprechen. Es ist wichtig, im Anschluss daran zu fragen, wie React Native in ihrem Team eingesetzt wurde. So kann der Recruiter einschätzen, mit welchen Bereichen von React Native der Kandidat möglicherweise vertraut ist - z. B. ob RN in der gesamten App oder nur in einigen Bildschirmen verwendet wurde, ob es mit nativen Teilen, die in Objective-C/Java geschrieben wurden, überbrückt wurde usw.

Q2: Warum haben Sie und Ihr Team sich für die Verwendung von React Native entschieden? Was war das größte Verkaufsargument für Sie? Wie hat es in den Anwendungen, an denen Sie gearbeitet haben, geholfen?

R: Die Antwort auf diese Frage kann dem Recruiter mehrere Dinge verraten. Sie zeigt teilweise die Position oder die Verantwortlichkeiten, die der Kandidat in seinem Team hatte - waren sie in den Entscheidungsprozess involviert? Und selbst wenn nicht, sind sie sich der wichtigsten Ziele von React Native bewusst, die die Idee an ihre Kollegen verkauft haben könnten? Das zeigt auch, ob der Kandidat in der Lage ist, eine technische Entscheidung zu treffen, die auf den geschäftlichen Anforderungen der Anwendungen basiert, mit denen er gearbeitet hat, oder ob er nur dem Trend folgt.

Q3: Wie haben Sie den Zustand in diesen Anwendungen gehandhabt? Wie hat es geklappt?

R: Dies ist eine etwas technischere Frage. Da React Native im Kern nur die Benutzeroberflächenschicht ist, ist es wichtig zu wissen, was der Kandidat verwendet hat, um die verbleibenden Leerstellen zu füllen, von denen eine die Zustandsverwaltung ist. Dies hat das Potenzial, die Diskussion über unidirektionalen Datenfluss (Redux, Flux) oder den Umgang mit Zuständen von externen Diensten (REST, GraphQL) zu eröffnen. Es gibt auch ein Gefühl für die Fähigkeit des Kandidaten, die Vor- und Nachteile des gewählten Ansatzes zu bewerten, was eine entscheidende Fähigkeit bei der Selbstentwicklung ist.

6.2 Fragen zum Wissen und zur Meinung eines React-Native-Entwicklers

Q1: Welche Arten von Komponenten kann man in React Native verwenden? Wie unterscheiden sie sich? Wann sollte man welche verwenden?

R: Diese Frage kann vom Kandidaten auf verschiedene Arten interpretiert werden. Die Komponenten könnten entweder in Container/präsentativ oder in zustandsorientiert/rein/funktional aufgeteilt werden. Es spielt keine Rolle, welche Denkweise der Kandidat hier an den Tag legt, bei dieser Frage geht es eher darum, dass der Kandidat in der Lage ist, über den Zweck oder die Grenzen jeder einzelnen Komponente vorzugsweise im Kontext seiner eigenen Erfahrung zu sprechen.

Q2: Wie verwenden Sie Code in Ihrer Anwendung wieder? Welche Techniken kennen Sie, um gemeinsame Logik zu teilen und was ist Ihre Meinung dazu?

R: Es gibt verschiedene Möglichkeiten, die Wiederverwendung von Code zu erreichen. Die beliebtesten sind Higher Order Components, Render Props, Hooks und Context. Ihre Verwendung basiert in der Regel auf der Präferenz des Teams, so dass es hier vor allem darauf ankommt, dass der Kandidat erklärt, warum er die eine statt der anderen verwenden würde. Es sollte dem Recruiter ein Gefühl dafür geben, wie tief das Wissen des Kandidaten ist, ein Verständnis für die Interna von React Native und wie sehr sich der Kandidat um sauberen und wartbaren Code kümmert.

Q3: Wie debuggen Sie die Anwendung? Welche Tools verwenden Sie und wie hilfreich sind diese?

R: Die meiste Zeit eines React Native-Entwicklers wird für das Lesen, Analysieren und Debuggen der bestehenden Codebasis aufgewendet. Deshalb sind die Fähigkeiten und das Wissen, die erforderlich sind, um die App auf angemessene und effiziente Weise zu debuggen, entscheidend. Der Kandidat könnte verschiedene Ansätze nennen, die von der Verwendung von einfachen Logs über das Anhängen eines Debuggers bis hin zur Verwendung von Breakpoints oder der Inspektion der View-Hierarchie über die React Dev Tools reichen. Jeder dieser Ansätze hat einige spezifische Fälle, in denen er am besten glänzt, daher sollte der Kandidat auch eine Beispielsituation erwähnen, in der er ihn verwendet hat. Bonuspunkte gibt es für die Erwähnung eines Unit-Tests, der den Fehler reproduziert und ihn zum Bestehen bringt, als eine Möglichkeit festzustellen, dass der Fehler behoben wurde und auch in Zukunft behoben bleiben wird.

Q4: Sind Sie jemals auf Performance-Probleme mit Ihrer App gestoßen? Was haben Sie verwendet, um sie zu diagnostizieren? Wie haben Sie sie gelöst?

R: Die Performance von React Native wird oft von Skeptikern angesprochen, wenn es um seine Nützlichkeit geht. Es stimmt zwar, dass man leicht in einige Fallen tappen kann, die dazu führen, dass die Framerate einbricht, aber das Verständnis der Interna von React und React Native reicht aus, um diese Probleme zu entschärfen. Kandidaten können Techniken wie das Auswendiglernen, Verbesserungen wie reine Komponenten oder Fallen wie Inline-Funktionen erwähnen. Diese decken einen großen Teil der Gründe ab, die dazu führen, dass die Oberfläche weniger reaktionsschnell ist. Wenn Kandidaten über Tools wie Profiler und Konzepte wie Blending und Offscreen-Rendering sprechen, wird deutlich, dass sie sich mit wirklich komplexen Problemen (wahrscheinlich mit Animationen) auseinandergesetzt haben. Die ideale Antwort sollte auch erwähnen, dass man, um die Performance zu verbessern, eine Reihe von Metriken haben muss, die man minimieren oder maximieren möchte (wie FPS, Speicher- oder CPU-Verbrauch, etc.), da es ohne diese schwer zu beurteilen ist, ob der React Native-Entwickler in die richtige Richtung geht.

Q5: Was ist mit Tests? Haben Sie sie verwendet? Wie haben sie Ihrem Team geholfen? Welche Arten von Tests haben Sie verwendet?

R: Testen ist immer noch ein erstaunlich kontroverses Thema. Ob man es mag oder nicht, eine Anwendung muss zumindest in irgendeiner Form getestet werden, bevor sie in die Produktion geschickt wird, um sicherzustellen, dass neue Funktionen wie angegeben funktionieren und, was noch wichtiger ist, dass die alte nicht kaputt gegangen ist. Ein starkes und engagiertes QA-Team zu haben, hilft definitiv dabei, aber Unit- oder Snapshot-Tests zu haben, gibt dem React Native-Entwickler sofortiges Feedback, das er nutzen kann, um den Code zu verbessern. Tests sind ein Werkzeug für Entwickler, das ihr Vertrauen in die Änderungen, die an der Codebasis vorgenommen werden, deutlich erhöht. Ein Test fängt den Moment ein, in dem die Anwendung korrekt arbeitet und behält diese Korrektheit von diesem Punkt an bei. Es gibt mehrere JavaScript-Test-Runner, wobei Jest im Kontext von React Native am meisten empfohlen wird, zumal es von den Autoren von React Native stammt. Zusätzlich kann man einen react-test-renderer verwenden, um entweder das Verhalten einer bestimmten Komponente zu testen oder einen Snapshot einer ganzen View-Hierarchie zu erstellen, um sie vor unerwarteten Änderungen zu schützen.

Q6: Wie pflegen Sie den Code-Stil innerhalb Ihres Teams? Wie verwalten Sie die Codebase gemeinsam?

R: Dies ist eine leichtere Frage, die das Wissen des Kandidaten über verschiedene Werkzeuge, die im Entwicklungsprozess verwendet werden, aufdecken soll. Die Antworten können hier sehr breit gefächert sein. Sie können von Prettier und ESLint, das entsprechend die Codeformatierung automatisiert und prüft, ob der geschriebene Code den vom Team festgelegten Regeln entspricht, bis hin zu Konzepten wie kontinuierliche Integration oder sogar Versionskontrollsystemen wie Git reichen. Der Kandidat könnte sogar Praktiken wie Code-Review erwähnen. Das Hauptziel der Frage ist es, zu zeigen, wie und auf welche Weise die Kandidaten mit ihren Teams zusammengearbeitet haben und wie viel der wiederholbaren Arbeit sie automatisieren konnten.

6.3 Verhaltensfragen, die Sie einem React-Native-Entwickler stellen sollten

Q1: Was war der größte Erfolg in Ihrer Karriere? Was war der größte Fehler? Welche Schritte würden Sie unternehmen, um den Erfolg zu wiederholen oder die Wiederholung des Misserfolgs zu vermeiden?

R: Eine ziemlich generische Frage, aber sie zeigt die Selbsterkenntnis und die selbstkritischen Fähigkeiten des Kandidaten. Beides wird im Lernprozess benötigt, der ein ständiger Teil davon ist, ein großartiger Softwareentwickler zu sein.

Q2: Wie würden Sie mit einer Situation umgehen, in der Ihr Projekt eine für morgen gesetzte Deadline hat, aber noch einige Funktionen zu implementieren sind?

R: Das ist gar nicht so schwer vorstellbar und die Wahrscheinlichkeit ist groß, dass der Kandidat in der Vergangenheit mit einer solchen Situation konfrontiert war. Vielleicht hat der Kandidat versucht, zu verhandeln und mehr Zeit für die Fertigstellung der Arbeit zu gewinnen. Vielleicht hat er sich mit dem Product Owner oder Manager zusammengesetzt, um die Funktionen zu priorisieren und sich an eine Art MVP zu halten. Vielleicht haben sie einige Funktionen auf eine Art und Weise implementiert, die zwar schnell, aber nicht sehr wartungsfreundlich war, um Zeit zu gewinnen und eine Erinnerung zu setzen, um später eine Bereinigung vorzunehmen. Es gibt verschiedene Ansätze und das Ziel dieser Frage ist es, dem Personalverantwortlichen zu zeigen, ob die Kandidaten die Bedeutung der Geschäftsziele verstehen und ob sie in der Lage sind, einige Kompromisse auf technischer Ebene einzugehen, um diese zu erreichen.

Q3: Welche Ressourcen würden Sie dem Junior-/Standard-Entwickler empfehlen, die es ihm ermöglichen würden, seine Fähigkeiten zu steigern? Würden Sie einen solchen Entwickler gerne als Mentor betreuen? Haben Sie das in der Vergangenheit getan?

R: Die Antwort auf diese Frage ist ein indirekter Weg, um zu überprüfen, welche dieser Ressourcen der Kandidat zuvor genutzt hat und warum. Dies gibt dem Recruiter zusätzliche Informationen über den Hintergrund. Der Mentoring-Teil kann anzeigen, ob der React Native-Entwickler gerne Wissen teilt, was sich ebenfalls positiv auf das Team auswirken kann.

Q4: Welche Bereiche der mobilen Entwicklung oder Software-Entwicklung, die Sie gerne erkunden oder besser kennenlernen würden? Warum?

R: Diese Frage gibt dem Personalverantwortlichen den einen oder anderen Hinweis darauf, welche Themen für den Kandidaten interessant sein könnten und in welche Richtung die Kandidaten ihre Karriere entwickeln möchten. So kann der Personalverantwortliche einschätzen, ob das Projekt, für das der Kandidat eingestellt wird, gut zu ihm passen würde.

React Native Entwickler Coding Tests

7. Technisches Screening der React Native-Entwicklerfähigkeiten mithilfe eines Online-Codierungstests

Ein Lebenslauf eines React Native-Entwicklers enthält die Fähigkeiten, die Ihre Kandidaten nach eigener Aussage haben, und der Telefon-Screen gibt Ihnen die Möglichkeit zu prüfen, ob sie theoretische Kenntnisse über Konzepte im Zusammenhang mit der React Native-Entwicklung haben. Aber nur weil ein Kandidat theoretische Kenntnisse hat, ist es nicht sicher, dass er diese auch in der Praxis der Softwareentwicklung anwenden kann. Ein Online-Codierungstest kann Ihnen einen Einblick geben, wie gut ein Kandidat eine Anwendung mit React Native entwickeln kann.

7.1 Welchen React Native-Programmiertest sollten Sie wählen?

Es gibt ein paar Optionen, aber es ist wichtig, einen Test zu wählen, der speziell React Native verwendet, nicht JavaScript oder React. Hier sind einige Richtlinien:

  • Der Test spiegelt die Arbeit Ihres Unternehmens wider
  • Es ist eine angemessene Länge, ein bis zwei Stunden (oder sogar weniger)
  • Das Senden ist automatisiert
  • Der Test kann in der Wohnung des Kandidaten durchgeführt werden
  • Es prüft die Code-Qualität und Edge Cases sowie die Lösungen
  • Der Kandidat hat Zugang zu allen üblichen Ressourcen, die er zur Entwicklung von Software verwendet
  • Es handelt sich um ein In-Stack-Projekt, das dem Kandidaten nicht nur Zugriff auf das React Native-Framework, sondern auch auf die verschiedenen Bibliotheken gibt, die mit React Native verwendet werden
  • Er ist so kalibriert, dass er dem Pegel der Position entspricht

7.2 DevSkiller gebrauchsfertige Online-Tests zur Bewertung der Codierung von React Native-Entwicklern

Die reaktiven Native-Tests von Devskiller basieren auf unserer RealLifeTesting™-Methodik, um eine absolut genaue Momentaufnahme der Fähigkeiten des Kandidaten zu gewährleisten. Der Test kann an dem Ort und zu der Zeit absolviert werden, an dem der Kandidat am bequemsten und bereit ist. Sie haben Zugriff auf alle Ressourcen, die sie benötigen, wie GitHub, Stack Overflow, Google und andere React Native-Bibliotheken. Dies ist ein Feature, kein Bug, da es die Entscheidungen zeigt, die der Kandidat in einer natürlichen Programmierumgebung trifft. Sie können sehen, wie gut der Kandidat die Aufgabe erledigt, aber auch, welche Entscheidungen er trifft, welche Geschäftslogik er anwendet, wie effizient und sauber sein Code ist und wie gut er den Tech-Stack kennt.

Sie können Ihren eigenen Test erstellen oder einen der DevSkiller-eigenen Tests verwenden, die von erfahrenen React-Native-Experten erstellt wurden.

Nativ reagieren
SENIOR
Geprüfte Fähigkeiten
Dauer
108 Minuten max.
Auswertung
Automatisch
Test-Übersicht

Auswahlfragen

Beurteilung des Wissens über ES6, JavaScript

Programmieraufgabe - Stufe: Hart

React Native | Movie Store - Implementieren Sie eine Anwendung, die es den Benutzern ermöglicht, alle Filme zu kaufen, die sie sich vorstellen können.

Nativ reagieren
MIDDLE
Geprüfte Fähigkeiten
Dauer
101 Minuten max.
Auswertung
Automatisch
Test-Übersicht

Auswahlfragen

Beurteilung des Wissens über ES6, JavaScript

Programmieraufgabe - Stufe: Medium:

React Native | HR Companion App - Implementieren Sie eine Anwendung, die die Personalabteilung bei der Pflege der Liste der zu evaluierenden Stellenbewerber unterstützt.

Nativ reagieren
JUNIOR
Geprüfte Fähigkeiten
Dauer
70 Minuten max.
Auswertung
Automatisch
Test-Übersicht

Auswahlfragen

Beurteilung des Wissens über ES6, JavaScript

Programmieraufgabe - Stufe: Einfach

React Native | Ultimate BugTracker - Implementierung fehlender Funktionen und Behebung von Fehlern in der Anwendung, die als interner Bugtracker eines Softwarehauses verwendet wird.

Beitrag teilen

Erfahren Sie mehr über die Einstellung von Technikern

Abonnieren Sie unseren Learning Hub, um nützliche Einblicke direkt in Ihren Posteingang zu erhalten.

Kodierfähigkeiten nahtlos verifizieren & entwickeln.

Sehen Sie DevSkiller-Produkte in Aktion.

Sicherheitszertifizierungen & Konformität. Wir sorgen dafür, dass Ihre Daten sicher und geschützt sind.

DevSkiller-Logo TalentBoost-Logo TalentScore Logo