Sådan screener du Node.js-udviklerens færdigheder

Udgivet: Sidst opdateret:
Node JS Udvikler løn

I det nuværende teknologiske klima er Node.js en af de mest de mest populære backend-teknologier anvendes af udviklere. Det er afgørende, at du kontrollerer din kandidats Node.js-udviklerfærdigheder for at kunne ansætte en kandidat af høj kvalitet.

Der er mange grunde til, at Node.js er populær blandt branchens brugere. Dette runtime-miljø, der nogle gange blot kaldes "Node", fremmer hurtig og skalerbar softwareudvikling. Det bruger også JavaScript, World Wide Web's lingua franca, til at drive sine omfattende funktioner. Det er ikke overraskende, at så mange virksomheder gør deres bedste for at finde Node.js-udviklerkompetencer på højeste niveau.

Rapporter fra Indeed viser, at antallet af jobsøgninger efter Node.js steg af 57% i forhold til året før, hvilket viser, at efterspørgslen er stigende. Denne specielle teknologi bruges af en lang række tech-giganter og multinationale virksomheder, herunder Netflix, Uber, LinkedIn, NASA, PayPal, Microsoft og Walmart.

I dagens artikel vil DevSkiller fortælle om Node.js, de vigtigste ting, som en it-rekrutteringskonsulent bør være opmærksom på, og vores bedste strategier til at ansætte en Node.js-udvikler af høj kvalitet.

Hvad er Node.js?

Teknisk set, Node.js er et open source JavaScript-køringstidsmiljø på tværs af platforme, som udfører JavaScript-kode uden for en webbrowser.

Node.js gør det muligt for udviklere at bruge JavaScript til at skrive kommandoer til scripting på serversiden (back-end scripting). Det betyder i bund og grund, at Node.js hjælper med at køre scripts på serversiden for at producere dynamisk websideindhold, inden siden sendes til brugerens webbrowser.

Den første stabile version af Node.js (0.10.0, den første version, der blev brugt i erhvervslivet) blev frigivet i 2013, selv om projektet startede et par år tidligere. Ryan Dahls mål, skaberen af Node.js, var at skabe realtidswebsteder med push-muligheder, "inspireret af applikationer som Gmail". Med Node.js gav han udviklerne et værktøj til at arbejde i det ikke-blokkerende, begivenhedsdrevne I/O-paradigme.

1.1. Hvad bruges Node.js til, og hvilke problemer løser det?

Da de fleste klientsideapplikationer, herunder websider og webapplikationer, bruger kode skrevet i Javascript, er fordelen ved også at skrive server-side script i Javascript enorm. Og det er her, Node.js kommer ind i billedet.

Node.js er primært populært, fordi det repræsenterer en "JavaScript overalt" paradigme, der forener udviklingen af webapplikationer omkring et enkelt programmeringssprog i stedet for forskellige sprog til server- og klientside scripts.

Denne ensretning på tværs af stakken, som omfatter sproget og dataformatet (JSON), gør det muligt for virksomheder at genbruge udviklerressourcerne optimalt.

Ved at bruge Node.js kan en full-stack-udvikler nemt skifte til Node.js, og det er derfor i direkte konkurrence med andre populære scriptingsprog og frameworks som Java, .NET, Python, PHP, Ruby og C#.

Platformen letter webapplikationer med tovejsforbindelser, så både klient og server kan begynde at kommunikere, så de frit kan udveksle data. Denne fordel står i klar kontrast til den typiske paradigme for webanmodning/respons, hvor klienten altid tager initiativet til kommunikationen.

Node.js er en platform, der opfylder et særligt behov. Den er meget letvægtig, hvilket betyder, at der kan skrives skalerbare og højtydende systemer med meget lidt kode. Node.js er dog ikke ideel til CPU-intensive operationer på grund af dens single-threaded implementering.

Node skiller sig ud fra mængden ved at bygge hurtige, skalerbare netværksapplikationer, da den er i stand til at håndtere et stort antal samtidige forbindelser med høj gennemstrømning, hvilket er lig med høj skalerbarhed.

1.2. Ligner det andre sprog eller frameworks?

Node.js vil altid være meget tæt forbundet med JavaScript-sproget, da det er dets server-side runtime-platform. Da Node.js implementerer ECMAScript-specifikationen, en global JavaScript-standard, der har til formål at sikre interoperabilitet mellem websider på tværs af forskellige webbrowsere, kan vi uformelt sige, at Node.js er effektivt Javascript.

På nogle måder kan vi sige, at Node ligner PHP, Python og Ruby (da det er et dynamisk typet scriptsprog), selv om det er langt mere avanceret med hensyn til funktionelle programmeringsmuligheder.

Der findes flere andre produkter på markedet, der fungerer som gode alternativer til Node.js. Disse omfatter Elixir, Perl, ASP.NET, Ceylon og Rebol.

1.3. Hvad er de vigtigste fordele eller funktioner?

  • Giver udviklere mulighed for at skalere applikationer i horisontale og vertikale retninger.
  • Er let at lære for udviklere, der er fortrolige med JavaScript.
  • A 'fuldstack JavaScript' - hjælper med at skrive server-side applikationer i JavaScript.
  • Gør det nemmere, hurtigere og mere effektivt at bruge kode ved at fortolke JavaScript via Googles V8 JavaScript-motor.
  • Giver mulighed for ikke-blokkerende I/O-systemer, som hjælper udviklere med at behandle flere anmodninger samtidig.
  • Er hjemsted for en levende, fællesskabsdrevet brugerbase, der løbende bidrager til at forbedre den.

Hvad er vigtigt for en it-ansætter at vide om Node.js?

Hvad er vigtigt at kigge efter, når man ansætter udviklere med Node.js erfaring? Ud over de sædvanlige færdigheder inden for arkitekturdesign, logik, samarbejde og kommunikation, som du har brug for, når du ansætter en hvilken som helst udvikler, er der nogle ting der er unikke for Node-udviklere.

2.1. Hvor ofte ændres den tekniske stak?

Da Node.js kører på Javascript, vil du ofte høre folk sige, at, "der kommer en ny JavaScript-ramme hver uge", men det vedrører primært front-end-arkitekturen. Backend-arkitekturen er generelt meget mere stabil. Selvfølgelig tilføjes der hele tiden nye værktøjer, men i forhold til de mest populære tilføjelser, der anvendes i Node.JS - herunder Express, Meteor, Hapi, NestJS, koa osv. - er der snarere tale om en udvikling end en revolution.

Desuden er selve JavaScript-sproget blevet forbedret støt siden 2015, hvor ES6 (også kendt som ES2015) blev udgivet. Årsagen er, at før 2015 var hver JS-version indføres meget periodisk (f.eks. hvert 3-5 år), men siden 2015 er der udgivet en ny version hvert år. Alt i alt har den teknologiske stak gennemgået en ret jævn udvikling.

2.2. Er der mange ressourcer/værktøjer/teknologier til rådighed?

Det fantastiske ved Node.js er de tusindvis af moduler, der er tilgængelige til ethvert formål, samt det livlige fællesskab bag platformen. Der findes et utal af blogs, tutorials, videoer, konferencer og bøger om emnet, som er designet til at gøre udviklernes liv lettere.

Værktøjer som Webpack, en praktisk JavaScript-modulbundler, der bruges til at forenkle front-end-udvikling, er virkelig med til at forenkle Node.js. Eller Mocha.js, som gør det muligt for Node-udviklere at teste både i konsollen og i browseren.

Du kan finde flere oplysninger om værktøjer og ressourcer til Node på websteder som f.eks. Smashing og Brainhub.

2.3. Hvilke værktøjer og teknikker bør en Node.js-udvikler være bekendt med?

Der er to ting, der skal skelnes mellem: viden om Node.js selv og generelle backend-programmeringsrelaterede spørgsmål. Node.js, som er server-side JavaScript, består af:

  • Scripting-sproget, og
  • Indbyggede Node.js-moduler, som håndterer filsystemer, processer, hændelser, HTTP osv.

Denne brede viden er ikke en stor hindring for front-end-udviklere, der ønsker at overgå fra browserarbejde til serveren.

Der er dog også backend-relaterede begreber, som er mere eller mindre de samme for alle backend-teknologier, herunder Java, .Net, PHP, Python, Ruby, Golang og naturligvis Node.js. Sådanne emner omfatter bl.a:

  • Databaser, persistens
  • Håndtering af sessioner
  • Arkitektur: monolitter, mikroservices
  • Skalering (forbrug af RAM/CPU-ressourcer)
  • REST API'er
  • Cloud og infrastruktur
  • og mange, mange flere, ofte afhængigt af projektets specifikke karakter.

Alt i alt er dette de begreber, som node.js udviklere bør være kender til.

Specifikke Node.js-udviklerkompetencer er helt klart ikke til forhandling. Men uden backend-viden kan udviklere skrive systemer, der ikke er modstandsdygtige, uskalerbare eller fejltolerante (hvilket kan resultere i systemer, der fungerer godt for ~50 brugere, men som går i stykker for ~5000 eller ~50000 brugere).

2.4. Hvilken type erfaring er det vigtigt at søge hos en Node.js-udvikler?

Uden tvivl er kommerciel erfaring med Node.js den vigtigste faktor at tage hensyn til her. Arbejdet med forretningsrelaterede projekter og levering af stabil software er benchmarks for platformen. Videnskabelig og akademisk erfaring for React er næsten irrelevant.

Open source-erfaring bør også betragtes som en yderligere fordel, da Node.js er en af de mest open source-venlige platforme, der findes.

Hvordan kan man kontrollere Node.js udviklerens færdigheder i screeningsfasen?

Hvis du ansætter Node.js-udviklerkompetencer, er der mere end én måde at skind en kat på, så at sige. Adam Polak, The Software House's chef for Node.js, hævder, at overgang fra en anden teknologi kan tilsyneladende være en levedygtig mulighed.

"Node.js er en relativt ny teknologi, så der er ikke mange erfarne udviklere, der bruger den. Derfor bør vi ikke begrænse os til de nuværende Node.js-brugere, men også kigge på dygtige udviklere, der hurtigt kan omstille sig. PHP-, Java- og .NET-udviklere er ofte villige til at lære nye teknologier."

3.1. Hvad skal man tage hensyn til, når man gennemgår et CV?

  • Udviklerne skal være bekendt med spørgsmål, mønstre, problemer og løsninger inden for backend-programmering.
  • Erfaring med udvikling og levering af Node.js-baserede applikationer.
  • Databasedesign og analyse af ydeevne.
  • QA-relaterede færdigheder (dvs. udformning af testscenarier og gennemførelse af disse test).
  • Erfaring med cloud-infrastruktur, f.eks. hvordan man muliggør implementeringer til AWS/Azure/GCP cloud-infrastruktur.
  • Alt, der ikke beviser viden om den teknologiske stak, men som giver forretningsmæssig værdi, f.eks. vedligeholdelse af applikationer, fejlrettelse, ydelsesjustering osv.
  • En balance mellem viden om syntaks (hvordan man skriver kode) og backend-relaterede spørgsmål (hvad man skal skrive).
  • Udviklere, der viser forståelse for platformsspecificitet (hvilke problemer der kan opstå, og hvordan man løser dem).
  • Du skal ikke forvente, at kandidaterne kender din teknologiske stak fra ende til anden. Antag, at hvis en udvikler har vist sig at have succes med én stack, kan han/hun også yde en høj standard i en anden teknisk stack.

3.2. Hvilke glossarudtryk er vigtige at kende til i Node.js (herunder frameworks, biblioteker og sprogversioner)?

ForbrydelserNode = Node.js JS = JavaScript. ES = ECMAScript (ECMAScript er navnet på standarden, JavaScript er dens implementering - formelt set. Men i praksis kalder folk det JavaScript, når de burde kalde det ECMAScript (specifikationen), men de fleste udviklere er ligeglade).
JavaScript / ECMAScriptAsynkron programmering: events, promises, async/await, rxjs Objektorienteret programmering: JS-datastrukturer, prototypisk arv, ES6-klasser Funktionel programmering: funktioner af højere orden, lukninger Tværgående mekanismer: coercion (typecasting)
WebServicesHTTP-protokol, WebSocket-protokol HTTP: Hentning, Axios, Anmodning, WebSockets: Socket.IO
Node.js værktøjRammer: Express, Koa, Nest.js, Fastify Transpilere: Express, Koa, Nest.js, Fastify: Babel, TypeScript, Flow Bundlers: Babel, TypeScript, Flow Webpack, Parcel, Snowpack Populære pakker: NVM, Chokidar
AfprøvningTyper: enhedstest, funktionstest, integrationstest, E2E-test Værktøjer (rammer og biblioteker): Karma, Jasmine, Selenium, Jest, Mocha, Sinon, Chai (og mange andre) Diverse: pyramide af tests (langt flere enhedstests end e2e), snapshot-test, regressionstest, mocking
DatabaserSQL, MySQL, MSSQL NoSQL: MongoDB, CouchDB og mange andre ORM'er (objekt-relationelle mappere)
DesignMonolitter, mikroservices, CQRS Designmønstre: facade, factory, builder, composite, mediator, state machine, state, state, chain of responsibility ... og mange, mange flere Bekymringer: skalerbarhed, overvågning, logning, implementeringer, kontinuerlig integration/implementering, cloud-infrastruktur

3.3. Hvilke versioner er helt forskellige? Hvilke versioner ligner hinanden?

ES6 er ECMAScript v6 (udgivet i 2015), og det var et stort gennembrud, som folk forholder sig til, hvilket betyder det nye JavaScript (før det betragter folk det gamle JS).

Node.js-versionerne leveres hovedsageligt med bedre understøttelse af de seneste ECMAScript-versioner (JavaScript), de forbedres gradvist, men ikke revolutionerende.

Teknisk screening af Node.js-udviklerens færdigheder under et telefon/videointerview

4.1. Spørgsmål, som du bør stille om en Node.js-udviklers erfaring. Hvorfor skal du stille hvert af disse spørgsmål?

  • Har du været involveret i automatisk test af dine tidligere applikationer? Hvad synes du, at du har gjort godt, og hvad ville du ændre i dag?
    • Testning er et vigtigt element i softwareudvikling. Udviklerne får redskaberne til at innovere, og det er op til dem selv, om de bruger dem effektivt. Med hensyn til testning er det vigtigt, at:
      • Testene er små og kører hurtigt. Udviklerne er mindre ivrige efter at køre test løbende, hvilket tager meget tid.
      • Hver test skal eksplicit kontrollere én variabel (medmindre det er E2E, hvor testen, som navnet antyder, er end-to-end). Hvis en funktion er defekt, er det bedre at have én test, der fejler, end hundredvis af test, der fejler.
      • Testene bør ikke omfatte elementer, der kontrolleres af andre værktøjer osv. Datastrukturer kan valideres af JSON-skemavalidatorer, typecheckere (TypeScript, Flow, ...) osv.
      • Korrekt dækning ved hjælp af test bør give udviklerne tillid til den kode, de skaber (dvs. hvis testene består, fungerer koden korrekt). En udvikler, der ikke har vedligeholdt tests, føler måske ikke behovet for at oprette dem og er ikke klar over, hvordan passende testning hjælper på lang sigt.
  • Har du arbejdet med mikroservices og/eller distribuerede systemer?
    • Hvis din virksomheds produkter håndterer en massiv skala (af brugere, forespørgsler osv.) og kræver høj tilgængelighed, fører det ofte til distribuerede systemer, hvor kun en del af systemet skaleres. Alt i alt har et distribueret system sine egne mønstre og anti-mønstre, som det tager lang tid at lære. Hvis du har brug for at sende din app til skyen (AWS/Azure/GCP, ...), så vil en Node.js udvikler med distribuerede systemer være yderst værdifuld.
  • Har du arbejdet med realtidsapplikationer? I bekræftende fald, hvilke forretningsprocesser har systemet implementeret? Hvad var vanskeligheden ved systemet, teknologisk set?
    • Et af de vigtigste problemer i store forretningssystemer er realtidsdata. Implementering af apps, hvor data ændres hvert sekund, medfører sine egne særheder, problemer, almindelige fejl, løsninger, mønstre og arkitektur osv. Hvis dit system håndterer data, der ændrer sig ofte (f.eks. postsporing eller behandling af finansielle data, som på grund af finansernes natur også er ekstremt dynamiske), bør du helt klart stille dette spørgsmål for at se, om kandidaten forstår sammenhængen.

4.2. Spørgsmål, som du bør stille om en Node.js-udviklers viden og holdninger. Hvorfor skal du stille hvert af disse spørgsmål?

  • Hvad er Node.js streams, hvad betyder det at streame data - og hvorfor er det vigtigt?
    • Streaming af data er en bestemt måde at udveksle data på mellem serveren og klienten. I de fleste systemer sendes en komplet forespørgsel, og der modtages et tilsvarende komplet svar, men det er ikke tilfældet med streams. I streams returneres svaret i flere bidder (streamet i realtid, stykke for stykke). Det er ekstremt vigtigt, fordi det påvirker systemets ydeevne på lavt niveau. Ofte kan en klient begynde at behandle chunks (stykker) af svaret uden at have hele svaret. Dette er vanskeligere, men det reducerer den tid, hvor der er unødvendig ventetid. En erfaren node.js-udvikler bør have erfaring med at bruge node streams.
  • Hvorfor skal package-lock.json overføres til repositoriet, og hvad indeholder den?
    • Stort set alle udviklere ved, at en package.json-fil, hovedfilen i et node-projekt, skal overføres og spores af et versioneringssystem (f.eks. git). Men ikke alle kender til package-lock.json, og den er placeret i npm. Mens package.json eksplicit opregner alle afhængigheder, som vi direkte brug, indeholder package-lock.json hele træet af afhængigheder. Versioner af alle pakker er eksplicit anført, og når programmet bygges på en build-maskine, vil der blive taget hensyn til netop disse versioner. Hvorfor? Fordi hvis vi får en fejl på en build-maskine, skal vi kende de nøjagtige versioner for at kunne reproducere fejlen på de lokale maskiner. Takket være at committe package-lock.json til repo'en er det nemt.
  • Der er et almindeligt ordsprog inden for programmering, at "der er 2 svære ting i programmering: 1. At navngive ting og 2. Cache invalidering". Forklar venligst, hvad cache invalidering er, og hvorfor det anses for vanskeligt.
    • Caching er at huske beregninger til senere, så vi allerede har det rigtige svar, når det samme spørgsmål stilles igen. Cache-invalidering er, når vi ved, at grundlaget for beregningen er ændret, og at det huskede resultat derfor er forkert. Da det vedrører det gamle grundlag, ved vi, at denne cachede information skal slettes (ugyldiggøres). I store systemer, hvor prisen på en ordre kan afhænge af flere faktorer, ændres nogle af dem og andre ikke. Det er svært ikke at gå glip af en bestemt vej (en ændring bør følges af en cache-invalidering) eller ikke at gøre det over ivrigt. I de fleste systemer skal cacheinvalidering programmeres eksplicit.

4.3. Adfærdsmæssige spørgsmål som du bør spørge en Node.js-udvikler om. Hvorfor skal du stille hvert af disse spørgsmål?

  • Forestil dig, at du kommer ind i et udviklerteam, der vedligeholder et stabilt produkt, men som er ret dårligt skrevet. Det tager mere tid end forventet at levere nye funktioner og forbedre forretningsværdien. Hvordan ville du forsøge at hjælpe teamet, når du slutter dig til dem?
    • Det vigtige her er, hvordan kandidaten forsøger at hjælpe. Om kandidaten vil forsøge at forklare, hvordan noget skal gøres korrekt (f.eks. som en lærer, og om det, der allerede er blevet gjort, var forkert), eller om han snarere vil forsøge at lytte til holdkammeraterne om, hvorfor de har præsteret på denne måde, og møde dem, hvor de er. I bund og grund er en teknisk ekspert, som tvinger beslutninger frem ved at hævde sin egen viden, ikke en god holdspiller.
  • Har du nogensinde befundet dig i en situation, hvor du var klar over, at du havde introduceret en fejl, som senere fik produktionssystemet til at gå ned (enten hele platformen eller en enkelt funktionalitet)? Hvis ja, hvad lærte du af det?
    • I et vist omfang kontrollerer dette spørgsmål ærlighed. Juniorudviklere har måske ikke haft mulighed for at frigive en alvorlig fejl, men det har seniorudviklere helt sikkert haft. Der findes ikke den perfekte programmør, dvs. en person, der ikke har begået nogen fejl. Så spørgsmålet lyder på, om konsekvenserne af en fejl var smertefulde for kandidaten. Desuden er det ekstremt vigtigt at lære af fejl i det lange løb, da udviklerne skal opbygge vaner, der eliminerer mulighederne for at indføre fejl. Især når det drejer sig om backend-applikationer. Vi kan trods alt ikke blive bedre næste gang, hvis vi ikke analyserer, hvorfor vi nu befinder os i en kritisk situation.
  • Hvad anser du for at være din største bedrift?
    • Dette spørgsmål er bevidst ikke besvaret, fordi det giver udvikleren mulighed for at vælge mellem forskellige områder som f.eks. forretningsværdi, teamwork og samarbejde samt teknisk ekspertise. Så det er interessant at observere, hvad kandidaten anser for at være vigtigt for dem. Faktisk ville en balance mellem alle 3 være meget værdsat. Du kan med rette være skeptisk over for en kandidat, hvis han/hun kun lægger vægt på teknisk ekspertise, da det er det, du skal forvente senere, når du arbejder for din virksomhed.

Teknisk screening af Node.js-udviklerens færdigheder ved hjælp af en online kodningstest

Det kan være en stor udfordring at ansætte en dygtig Node.js-udvikler, især hvis du selv skal gøre alt det beskidte arbejde. For projekter, der kræver et langsigtet engagement og budget, har du brug for en softwareudviklingsvirksomhed med en solid rekrutteringsproces.

5.1. Hvilken online test for Node.js udviklerfærdigheder skal du vælge?

Når du leder efter den rigtige Test af Node.js-udviklerfærdigheder skal du sikre dig, at den opfylder følgende kriterier:

  • Prøven afspejler kvaliteten af det professionelle arbejde, der udføres
  • Varigheden er ikke for lang, højst en til to timer.
  • Testen kan sendes automatisk og er ligetil i sin natur
  • Sværhedsgraden passer til ansøgerens evner
  • Testen går ud over at kontrollere, om løsningen fungerer - den kontrollerer kodens kvalitet og hvor godt den fungerer i edge cases
  • Det er så tæt på det naturlige programmeringsmiljø som muligt og giver kandidaten adgang til relevante ressourcer
  • Det giver kandidaten mulighed for at bruge alle de biblioteker, frameworks og andre værktøjer, som de regelmæssigt støder på.

5.2. DevSkiller færdige online test for Node.js-udviklerfærdigheder klar til brug

DevSkiller-kodningstests bruger vores RealLifeTesting™-metode til at afspejle det faktiske kodningsmiljø, som din kandidat arbejder i. I stedet for at bruge obskure algoritmer kræver DevSkiller-testene, at kandidaterne skal opbygge applikationer eller funktioner. De bedømmes helt automatisk og kan tages hvor som helst i verden. Samtidig har kandidaten adgang til alle de ressourcer, som de normalt ville bruge, herunder biblioteker, frameworks, StackOverflow og endda Google.

Virksomheder bruger DevSkiller til at teste kandidater ved hjælp af deres egen kodebase fra et hvilket som helst sted i verden. For at gøre det nemt tilbyder DevSkiller også en række færdighedstests inden for datalogi, som f.eks. de her, der er lavet på forhånd:

Node.JS
MIDDLE
Testede færdigheder
Varighed
87 minutter max.
Evaluering
Automatisk
Testoversigt

Spørgsmål efter valg

vurdering af viden om JavaScript, Node.JS

Huller i koden

vurdering af viden om JavaScript, Node.JS, SQL

Programmeringsopgave - Niveau: Medium

Node.JS | Rest API | News backend service - Implement a news backend service created in Node.JS with Vanilla JS including writing authorization and Rest APIs.

TypeScript
JUNIOR
Testede færdigheder
Varighed
51 minutter max.
Evaluering
Automatisk
Testoversigt

Spørgsmål efter valg

vurdering af viden om Typeskrift

Huller i koden

vurdering af viden om JavaScript, React

Spørgsmål efter valg

vurdering af viden om HTML, CSS

Programmeringsopgave - Niveau:

TypeScript | React Hooks | Movies State Management - Komplet program til administration af film ved hjælp af React Hooks ved at implementere state management i eksisterende visninger.

TypeScript
MIDDLE
Testede færdigheder
Varighed
73 minutter max.
Evaluering
Automatisk
Testoversigt

Spørgsmål efter valg

vurdering af viden om JavaScript, Typeskrift

Huller i koden

vurdering af viden om JavaScript, Typeskrift

Programmeringsopgave - Niveau: Medium

TypeScript | NestJS | My Barista App - Anbefaling af kaffe - Implementer NestJS REST-tjeneste til vurdering og anbefaling af kaffetyper.

TypeScript
MIDDLE
Testede færdigheder
Varighed
62 minutter max.
Evaluering
Automatisk
Testoversigt

Spørgsmål efter valg

vurdering af viden om Typeskrift

Huller i koden

vurdering af viden om JavaScript, Typeskrift

Programmeringsopgave - Niveau: Medium

TypeScript | NestJS | My Barista App - Listing rated coffee types - Implementer NestJS REST-tjeneste til vurdering og anbefaling af kaffetyper.

TypeScript
JUNIOR
Testede færdigheder
Varighed
46 minutter max.
Evaluering
Automatisk
Testoversigt

Spørgsmål efter valg

vurdering af viden om JavaScript, Typeskrift

Huller i koden

vurdering af viden om JavaScript, Typeskrift

Programmeringsopgave - Niveau:

TypeScript | NestJS | My Barista App - Hent bedømmelse af en kaffetype - Implementer en ny funktion til at få vist tidligere bedømte kaffetyper i NestJS REST-tjenesten til bedømmelse af kaffetyper.

Node.JS
JUNIOR
Testede færdigheder
Varighed
41 minutter max.
Evaluering
Automatisk
Testoversigt

Spørgsmål efter valg

vurdering af viden om JavaScript, Node.JS

Huller i koden

vurdering af viden om JavaScript, Node.JS

Programmeringsopgave - Niveau:

JavaScript | Node.JS | Filsystem - Brug NodeJS til at læse/skrive filer på synkroniseret og asynkroniseret vis, liste mapper rekursivt.

JavaScript
SENIOR
Testede færdigheder
Varighed
85 minutter max.
Evaluering
Automatisk
Testoversigt

Programmeringsopgave - Niveau: svær

HTML/CSS | Hjemmeside - Udfyld CSS-egenskabsdefinitioner, så siden viser den relevante splash-loader-skærm, før den viser hjemmesiden.

Programmeringsopgave - Niveau: svær

JavaScript | Funktionel memoisering - Skriv de to versioner af den generiske memoiseringsmekanisme.

Vinkelformet
MIDDLE
Testede færdigheder
Varighed
101 minutter max.
Evaluering
Automatisk
Testoversigt

Spørgsmål efter valg

vurdering af viden om Vinkelformet, JavaScript

Huller i koden

vurdering af viden om Vinkelformet, JavaScript

Programmeringsopgave - Niveau: Medium

JavaScript | Angular | Reactive forms - Forbered en registreringsformular ved hjælp af Reactive forms

React
MIDDLE
Testede færdigheder
Varighed
113 minutter max.
Evaluering
Automatisk
Testoversigt

Programmeringsopgave - Niveau: svær

JavaScript | React, Redux | Adressebog - Implementer manglende funktioner i en lille React-webapplikation bygget oven på Redux.

Programmeringsopgave - Niveau: Medium

JavaScript | Node.js | Adressebog - Implementer endpoints til at hente listen over kontakter (med en fase matching og begrænsning af resultaterne), hente detaljer om en enkelt kontakt og slette den givne kontakt.

Huller i koden

vurdering af viden om MongoDB

TypeScript
MIDDLE
Testede færdigheder
Varighed
126 minutter max.
Evaluering
Automatisk
Testoversigt

Spørgsmål efter valg

vurdering af viden om Typeskrift

Programmeringsopgave - Niveau: Medium

TypeScript | NestJS | Coffee Recommendation API for My Barista app - Implementer NestJS REST-tjeneste til vurdering og anbefaling af kaffetyper.

Del indlæg

Få mere at vide om ansættelse af teknologiske medarbejdere

Tilmeld dig vores Learning Hub for at få nyttig viden direkte i din indbakke.

Kontroller og udvikl kodningsevner uden problemer.

Se DevSkiller-produkterne i aktion.

Sikkerhedscertificeringer og overholdelse. Vi sørger for, at dine data er sikre og beskyttede.

DevSkiller-logo TalentBoost-logo TalentScore-logo