Kompetens som utvecklare av Ruby on Rails

Publicerad: Senast uppdaterad:
Utvecklare av Ruby on Rails

Du har gjort allt det hårda arbetet med att hitta kandidater för Ruby on Rails-utvecklare. Detta kan ha inneburit att du har skapat varaktiga relationer i utvecklarsamhället. Det kan också ha inneburit att du har gått igenom GitHub-projekt för att hitta den som har de bästa commits. Det kan till och med ha varit en rekommendation från en av dina andra utvecklare. Oavsett hur du hittade dina kandidater måste du nu hitta rätt person som passar för den tjänst du försöker tillsätta.

Men det finns en hake. Tekniska intervjuer tar upp värdefull tid som dina nuvarande utvecklare skulle kunna använda för att bygga din produkt. För att fortsätta att gå framåt vill du hålla så få intervjuer som möjligt. Och det finns en lösning.

Screening av Ruby on Rails-utvecklarens färdigheter bör eliminera alla som inte klarar av jobbet. Detta sparar allas tid. Men hur eliminerar man okvalificerade kandidater samtidigt som man ser till att rätt kandidater får en intervju? Det här inlägget kommer att berätta allt du behöver veta om vad du ska leta efter hos en Ruby on Rails-utvecklare så att du kan hitta personer med exakt de färdigheter som du behöver.

1. Vad är Ruby och Ruby on Rails?

Detta är en intressant fråga eftersom Ruby och Ruby on Rails är två olika saker. Ruby är ett dynamiskt tolkat programmeringsspråk. Det släpptes 1995 och påverkades av Perl. Med det sagt kan det lätt jämföras med Python.

Vad är Ruby on Rails?

Ruby on Rails är ett ramverk. Det har släppts tio år efter den ursprungliga versionen av Ruby och har blivit det mest använda ramverket i språket Ruby. Det är webborienterat och används främst för att bygga webbapplikationer och följer mönstret MVC.

Ruby är unikt bland programmeringsmiljöer eftersom det mesta av utvecklingen sker med ett ramverk. Det betyder inte att det inte finns andra ramverk och bibliotek som används med Ruby. Det är helt enkelt så att Ruby on Rails utgör en betydande majoritet av den utveckling som görs med språket. Som ett resultat av detta kommer vi att fokusera det här inlägget på screening av Ruby on Rails istället för Ruby mer generellt.

Ruby är faktiskt ett allmänt språk som byggdes med fokus på enkelhet och produktivitet. Med dessa mål i åtanke är dess syntax anmärkningsvärt lätt att läsa och skriva. Detta gör det idealiskt för två tillämpningar, som ett skriptspråk på serversidan utöver dess användning i front-end-applikationer.

Vad används Ruby on Rails till?

Ruby on Rails används främst för att koda webbapplikationer och backend för mobilappar. Det har många fördelar på dessa områden. För det första är det öppen källkod. Det finns en stor gemenskap av utvecklare som använder och uppdaterar det. Det är också tids- och kostnadsorienterat, vilket gör det idealiskt för företagsapplikationer. Slutligen upprätthåller den test- och kodkvalitet vilket innebär att endast kod av hög kvalitet kommer ut.

Om du sysslar med någon form av webbutveckling är Ruby on Rails ett av de mest populära ramverken i Ruby idag. En av anledningarna är att Ruby och Ruby on Rails tillsammans med det är relativt lätt att lära sig. Det är lätt att börja koda och när du väl har börjat är det lätt att förbättra dina kunskaper. Dessutom gör läsbarheten som följer med Ruby det mycket lättare att förstå andras kod.

2. Vad är viktigt för en IT-rekryterare att veta om en Ruby on Rails-utvecklare?

Det viktigaste är förmodligen att det finns en skillnad mellan ren Ruby och Ruby on Rails. Det innebär att det inte är samma sak att rekrytera en ren Ruby-utvecklare som en Ruby on Rails-utvecklare. Det finns andra Ruby-ramverk som Sinatra och dessa kan vara användbara för en utvecklare. Men dessa bibliotek utför många funktioner så förvänta dig inte att en ren Ruby-utvecklare som kan Sinatra ska ha en djupgående förståelse för Ruby on Rails.

I Ruby kallas bibliotek för gems och systemet för hantering av gems är anmärkningsvärt. Det är också mycket lätt att skala och har mognat till den grad att det är helt standardiserat.

Det är bra att känna till systemet med ädelstenar och veta vilka som är mest populära. Men du får inte glömma att kunskap om Ruby och det ramverk du valt är det viktigaste du bör leta efter. Det är också viktigt att vara uppdaterad på den senaste versionen av språket. Ruby är ganska stabilt men en kandidat bör känna till de senaste versionerna av Ruby och Rails.

Hur ofta miljön förändras

En del av anledningen till Ruby on Rails stabilitet är att miljön ändras regelbundet. Ungefär vartannat år kommer en ny version av Rails. Även om det vanligtvis finns en del nya funktioner finns det vanligtvis en hög grad av bakåtkompatibilitet. Dessutom kommer det ut en ny version av Ruby ungefär varje år.

Ruby är ett språk med öppen källkod och det finns tusentals gratis pärlor med öppen källkod på nätet. Det finns också en stor gemenskap som stöder språket. En av de häftiga sakerna med just Ruby on Rails är att du inte behöver ha hela ramverket för att använda en av dess egenskaper. Istället kan du importera de moduler som du behöver till din Ruby-applikation utan att behöva ta till dig hela ramverket.

När du letar efter en Ruby on Rails-utvecklare är det viktigt att kandidaten har minst ett års erfarenhet av kommersiell användning av Ruby on Rails. Detta beror på att det är en stor skillnad mellan personliga projekt och kommersiella projekt med Ruby on Rails. Om kandidaten är bekant med ramverk som Laravel i PHP eller Django i Python behöver han eller hon naturligtvis inte lika mycket erfarenhet för att komma igång. Kandidater som har bidragit till Ruby on Rails projekt med öppen källkod är särskilt värdefulla.

Om du bara försöker hitta en utvecklare som använder Ruby som ett skriptspråk måste de också kunna grunderna i Linux, nätverk och andra systemkunskaper.

3. Hur verifierar man Ruby on Rails-kompetens i screeningfasen?

Screening kan vara en svår process. Beroende på vilket budskap du använder kan det antingen vara fördelaktigt för både kandidaten och rekryteraren, eller så kan det bli en tidskrävande mardröm för båda. Nedan har vi sammanställt ett antal tips som kan hjälpa dig att screena Ruby on Rails-utvecklarens kompetens.

3.1. Teknisk screening av Ruby on Rails-färdigheter på grundval av ett CV

Innan du gör något slags färdighetstest är det viktigt att se hur mycket erfarenhet din kandidat har av Ruby on Rails i kommersiella tillämpningar. Det är också värt att titta på vilka andra språk kandidaten kan. Detta eftersom kandidater som kan andra moderna MVC-ramverk kan ha en mjukare inlärningskurva. Det är också värt att kontrollera om kandidaten har bidragit till projekt med öppen källkod. En utvecklare som har använt Ruby utan Ruby on Rails eller andra ramverk har ofta en djupare kunskap om språkets rena grund, vilket är en stor tillgång att ha.

Ruby on Rails-teknik - en grundläggande ordlista över termer för Ruby on Rails-utvecklare för IT-rekryterare

Ordlista för Ruby on rails-utvecklare

Bildkälla: Foto: Foto av Aaron Burden på Unsplash

Om du har läst så här långt har du förmodligen fått tag på nya ord som pärlor och Sinatra. Även om dessa är nya för dig är det viktigt att få ordning på vokabulären om Ruby on Rails för att verkligen kunna förstå vad din kandidat är bekant med och kapabel till. Här är en lista över viktig vokabulär som du behöver känna till för Ruby on Rails.

Ramverk i Ruby Ruby on Rails, Sinatra
Applikationsservrar Enhörning, Puma, Passagerare, Tunnt
Testning av pärlor Rspec, Sinatra, Capybara, Cucumber, FactoryBot, VCR
Ruby-versionshanterare Rbenv, RVM
ORM ORM Mongoid, ActiveRecord
Kodgranskning Rubocop, SimpleCov, RubyCritic, rails_best_practices
Auktorisering Devise, OmniAuth, CanCanCan, API eller WS Grape, WashOut
Behandling av jobb i bakgrunden Sidekiq, Resque

Naturligtvis är detta bara grunderna. Vi kan nu gå in på detaljer om viktig information för Ruby on Rails-utvecklare.

Kan man använda namnen på olika sätt?

RoR står för Ruby on Rails. Ofta hör du också Ruby on Rails förkortat till Rails. Det är viktigt att notera att Ruby on Rails har ett speciellt förhållande till Ruby-miljön. Till skillnad från ramverk för andra språk hör man Ruby on Rails talas om oftare än man hör Ruby talas om i sig självt.

Vilka certifieringar finns det och är de värdefulla?

Du kan se vissa certifieringar, t.ex. Ruby Association-certifieringen, för äldre kandidater. Sanningen att säga har jag aldrig sett något företag begära sådana. Enligt min åsikt är det mer värdefullt att vara aktiv i samhället, skriva ett inlägg eller förbereda ett föredrag om Ruby on Rails än något certifikat som kandidaten har.

Det är lite annorlunda för yngre kandidater och praktikanter. Det är bättre att de har en examen eller åtminstone ett bootcamp-diplom än att de inte har någon formell erfarenhet alls. Samtidigt är det viktigaste deras färdigheter och inte de examina de har.

Vad mer bör du leta efter i ett CV?

Utöver dessa färdigheter finns det annan information i en kandidats CV som kan visa kandidatens färdigheter.

  • Företag som är kända för att tillämpa god praxis
  • Examen i datavetenskap
  • En bra GitHub-profil eller annan profil för öppen källkod
  • Böcker som kandidaten har läst
  • Kunskap om databasförfrågningar
  • Andra verktyg och tekniker som Git, Docker, Kafka och vissa JavaScript-ramverk.

3.2. Intervjufrågor om Ruby on Rails under en teknisk intervju per telefon/video

När du har gjort en CV-utredning kan det vara bra att göra en telefonutredning. Det bör inte ta för lång tid, men det kan säga mycket om huruvida du bör bjuda in kandidaten till en formell intervju. Även om de inte avslöjar exakta kodningsfärdigheter kan de belysa kandidaternas förståelse för miljön och deras inställning till tekniken.

Intervjufrågor om Ruby on Rails

Q1: Vilka är förändringarna mellan Rails 4 och Rails 5?

Varför ska du ställa denna fråga? En kandidat till en ledande befattning eller en kandidat som hävdar att han eller hon har arbetat med Rails i mer än två år måste känna till åtminstone ett par av de funktioner som Rails 5 har lagt till.

Q2: Var skriver man logiken i Ruby on Rails? Modeller, View eller Controllers? Finns det något alternativ?

Varför ska du ställa denna fråga? "Fat Model, Skinny Controller" är det grundläggande mottoet för Ruby on Rails, så alla Rails-kandidater bör känna till det. Mer erfarna kandidater bör dock svara att de föredrar magra modeller, magra kontrollanter och feta tjänster.

Q3: Vilka är de viktigaste skillnaderna mellan rspec och minitest?

Varför ska du ställa denna fråga? I Ruby är testerna nästan obligatoriska. Det finns dock två stora bibliotek för testning. En bra kandidat kommer att känna till ett av dem, men en lysande kandidat kommer att ha spelat med båda, inte bara det som han eller hon använder på sin nuvarande arbetsplats. De bör kunna beskriva de viktigaste skillnaderna.

Q4: Med en klass som har dessa metoder,

  • def factorial(number): returnerar faktorialvärdet för #number
  • def fibonacci(n): beräknar värdet av det n:e Fibonacci-talet.

vilket enhetstest skulle du skriva?

Varför ska du ställa denna fråga? Ännu en testfråga, men i det här fallet är tanken förutom att testa deras förmåga att skriva test även att lära sig hur bra kandidaten är på att tänka på kantfall som kan orsaka problem.

Q5: Du har en kod och testat en biljett för en ny funktion på en ny sida. Strax efter att du har distribuerat den till produktionen upptäcker vi att den nya sidan laddas, men att det tar en minut. Vad tittar du på?

Varför ska du ställa denna fråga? Det är kanske min favoritfråga, den är inte specifik för Ruby on Rails, men den säger en hel del om kandidaten och hans/hennes erfarenhet av att möta problem i verkliga livet. Om de är helt vilsna har de förmodligen inte hanterat stora projekt. Dessutom kommer svaret och de aspekter som de täcker att berätta mycket om deras erfarenhet av DevOps, JS, databaser, backed, bland annat. Den seniora kandidaten som du letar efter kan berätta för dig 5+ ställen att titta på.

Q6: Varför valde du Ruby on Rails?

Varför du bör ställa denna fråga: Numera finns det mer än ett dussin ramverk att välja mellan, och det är bra att veta vad personen som söker en Rails-tjänst började med det ramverket.

Q6: Vad tillför Rails till Ruby?

Varför du bör ställa denna fråga: Även om Ruby är mycket fäst vid Ruby on Rails är det bra att veta vilka mervärden ramverken har och vad som är kärnan i systemet.

3.3. Teknisk screening av Ruby on Rails-utvecklarens färdigheter med hjälp av kodningstester online.

CV-skärmar kan berätta vad en Ruby on Rails-utvecklare rapporterar att han eller hon ska känna till och ha erfarenhet av. En ytterligare telefonundersökning kan berätta hur de skulle hantera vissa situationer och om de kan svara på frågetecken. Även om dessa båda är användbara verktyg kan de fortfarande inte säga något om dina kandidaters förmåga att faktiskt koda. Kodningstester online är förmodligen det bästa sättet att avgöra Ruby on Rails-utvecklarens kodningsförmåga. Men det är viktigt att välja rätt eftersom alla test inte är lika bra.

Algoritmiska tester är traditionella, men de är fortfarande otillräckliga. De kan inte riktigt testa en kandidats kunskaper om miljön. Detta är särskilt problematiskt för en Ruby on Rails-utvecklare. Det räcker inte att veta om någon kan skriva en algoritm i Ruby, utan de måste kunna använda ramverket Ruby on Rails när det behövs. Det finns ett begränsat antal sätt att lösa algoritmproblem. Dessutom innebär plagiatproblem att man inte kan använda sig av normala resurser som en utvecklare skulle använda sig av, t.ex. Google eller Stack Overflow.

Det bästa sättet att undersöka en utvecklares färdigheter i Ruby on Rails-kodning är förmodligen att ge honom eller henne en arbetsprov test. Dessa innebär att kandidaten får en uppgift som liknar den som de skulle få på sin första arbetsdag. Låt sedan kandidaten utföra uppgiften i en så naturlig miljö som möjligt. Detta innebär att han/hon ska kunna använda alla de resurser som han/hon normalt skulle använda. Dessa inkluderar ramverk och bibliotek som Rails och Sinatra eller andra resurser som Stack Overflow och Google. Du kan sedan bedöma effektiviteten hos den lösning som de skapar i alla kantfall, deras affärslogik och kvaliteten på deras kod.

Kolla in de senaste nyheterna Lön för Ruby on Rails-utvecklare.

Författare - Albert Lozano Bautista

Ruby on Rails-utvecklare Albert Lozano

Albert är CTO för FCM:s reselösningar för Frankrike och Schweiz. Där använder han främst Ruby, Ruby on Rails och React, samt Elixir och andra ramverk och tekniker. Tidigare arbetade han för fintechföretaget Novicap. Dessförinnan arbetade han för LivingSocial och LetsBonus, båda multinationella företag på fritidsmarknaden.

FCM FR & CH har ett tekniskt labb i Barcelona, där Albert leder utvecklingsteamet. De ger stöd till integrationer med leverantörer och kunder. De utformar och bygger också nya produkter för resebranschen.

4. DevSkiller har färdiga onlineuppgifter för Ruby on Rails-utvecklare som är redo att användas.

Arbetsprov kan vara enkla men tidskrävande att skapa. Det kan också ta tid att utvärdera resultaten av provet. Som tur är har DevSkiller ett antal färdiga Ruby on Rails-uppgifter. I stället för att behandla abstrakta eller akademiska begrepp handlar de om att ge din kandidat en verklig uppgift som Rails-utvecklare tar itu med varje dag.

Ruby
JUNIOR
Testade färdigheter
Varaktighet
81 minuter max.
Utvärdering
Automatisk
Översikt över testet

Frågor om valmöjligheter

bedömning av kunskaper om Ruby on Rails

Luckor i koden

bedömning av kunskaper om Ruby, Ruby on Rails

Programmeringsuppgift - Nivå:

Ruby | Ruby on Rails | Simple API Student Class App - Implementera en bakgrund för ett virtuellt klassregister för en lokal skola. Lägg till valideringsregler och implementera en slutpunkt för att exponera vissa JSON-data.

Ruby on Rails
SENIOR
Testade färdigheter
Varaktighet
75 minuter max.
Utvärdering
Automatisk
Översikt över testet

Frågor om valmöjligheter

bedömning av kunskaper om Ruby on Rails

Programmeringsuppgift - Nivå: Svårt

Ruby | Ruby on Rails | OnTheClock i gruvan - Implementera de två slutpunkter som beskrivs i uppgiften.

Ruby on Rails
JUNIOR
Testade färdigheter
Varaktighet
70 minuter max.
Utvärdering
Automatisk
Översikt över testet

Frågor om valmöjligheter

bedömning av kunskaper om Ruby on Rails

Luckor i koden

bedömning av kunskaper om Ruby, Ruby on Rails

Programmeringsuppgift - Nivå:

Ruby on Rails | Game of Chairs | Förhindra dubbla tecken - Skapa och organisera data för TV-programmet Game of Chairs.

Ruby
MIDDLE
Testade färdigheter
Varaktighet
40 minuter max.
Utvärdering
Automatisk
Översikt över testet

Frågor om valmöjligheter

bedömning av kunskaper om Ruby on Rails

Programmeringsuppgift - Nivå:

Ruby | Ruby on Rails | Flyghanteringsapplikation | Platsbokning och flyganalys - Implementera funktioner som saknas i applikationen för hantering av flygdata, t.ex. platsbokning och flyganalys.

Ruby on Rails
JUNIOR
Testade färdigheter
Varaktighet
51 minuter max.
Utvärdering
Automatisk
Översikt över testet

Frågor om valmöjligheter

bedömning av kunskaper om Ruby, Ruby on Rails

Programmeringsuppgift - Nivå:

Ruby | Ruby on Rails | Anonymizer - Implementera tre innehållsanonymiserare: för e-post, för Skype-användarnamn och för telefonnummer.

Ruby
MIDDLE
Testade färdigheter
Varaktighet
119 minuter max.
Utvärdering
Automatisk
Översikt över testet

Frågor om valmöjligheter

bedömning av kunskaper om Ruby, Ruby on Rails

Programmeringsuppgift - Nivå:

Ruby | Ruby on Rails | Kokbok - Lägg till valideringsregler och implementera sökfunktion för recept med hjälp av SQLite3-databasen.

Ruby
JUNIOR
Testade färdigheter
Varaktighet
54 minuter max.
Utvärdering
Automatisk
Översikt över testet

Frågor om valmöjligheter

bedömning av kunskaper om Ruby, Ruby on Rails

Programmeringsuppgift - Nivå:

Ruby | Ruby on Rails | Comments challenge - Lägg till associationer för kommentarer och implementera indexåtgärder för blogginlägg.

Dela inlägg

Läs mer om rekrytering av tekniker

Prenumerera på vår Learning Hub för att få nyttiga insikter direkt i din inkorg.

Kontrollera och utveckla kodningsfärdigheter utan problem.

Se DevSkillers produkter i praktiken.

Säkerhetscertifieringar och efterlevnad. Vi ser till att dina data är säkra och skyddade.

DevSkillers logotyp TalentBoost logotyp TalentScore-logotyp