Drupal er i øjeblikket meget efterspurgt, da det er et utroligt populært CMS (Content Management System) inden for webudvikling. Det er ikke underligt, at mange virksomheder er afhængige af det. At undersøge og vælge den bedste kandidat til denne funktion kan være tidskrævende og udfordrende, men det er meget nemmere, når du kender alle detaljer og gode råd.
For at finde den bedste Drupal-udvikler skal du vide, hvordan du starter søgningen, hvor du skal lede efter de bedste udviklere, hvad og hvordan du skal vurdere deres færdigheder og samtidig have nogle vigtige pointer in mente under hele processen. Man kan ikke bare copy-paste en jobannonce og erstatte alle relevante kompetencer med nøgleordet "Drupal". Det kræver også en grundig research af jobmarkedet, sammenligning af færdigheder, relevante tal og statistikker, vurdering af tekniske færdigheder og en god forståelse for den overordnede rekrutteringsproces.
I denne komplette ansættelsesguide for Drupal-udviklere har vi samlet alle de vigtige oplysninger, der er nødvendige for at starte rekrutterings- og ansættelsesprocessen. Vi opfordrer dig til at skimme alle afsnittene igennem for at forberede dig bedst muligt, før du træffer den endelige beslutning om at ansætte en Drupal-udvikler.
Om Drupal
Drupal er et CMS (Content Management System), der er gratis og open source og understøttet af et massivt fællesskab af brugere og udviklere.
Drupal er et populært program til indholdsstyring og er meget efterspurgt til websites og apps på grund af dets brugervenlige funktioner, utroligt hurtige ydeevne og fremragende sikkerhed. Det giver mulighed for enkel indholdsstyring med mange fleksible funktioner og er overvejende baseret på modularitet som et vigtigt aktiv.
Det har aldrig været nemmere at skrive indhold, siden Drupal har prioriteret netop dette. For alle dem, der ønsker at skabe alsidige typer indhold, en dynamisk weboplevelse og unikke temaer, er dette det rigtige CMS-valg.
Drupal startede med Dries Buytaert, den oprindelige forfatter, som havde til hensigt at skabe et simpelt forum til at sende beskeder mellem brugere. Processen resulterede i Drupal som et succesfuldt open source-projekt i 2001.
Nyttig statistik om Drupal
Man bør kende visse specifikke statistikker, når du skal ansætte den bedste Drupal-udvikler til dit projekt.
Lønnen for en Drupaludvikler ligger mellem USD 94.496 og 114.134 om året, hvor de laveste ligger omkring USD 65.000 og de højeste på omkring USD 177.000 dollars om året.
Hvad angår Drupals popularitet baseret på geografisk placering, befinder de fleste virksomhedsejere, der bruger Drupal, sig i Europa (61,1 %), efterfulgt af dem i Nordamerika (57,2 %), mens resten befinder sig i Australien, Sydamerika, Asien, Mellemøsten og Afrika.
Ifølge branchens brug og dækning anvendes Drupal mest inden for velgørenhed og nonprofit-området. Herefter følger uddannelse, sundhedsvæsen, myndigheder, medier og IT, som alle ligger i toppen blandt de mest populære områder.
Hvorfor og hvornår skal du hyre en Drupal-udvikler?
Da Drupal er godt og praktisk til content management, er det en selvfølge, at virksomheder gerne bruger det til at forenkle arbejdet med indholdsproduktion og indholdsredigering. Derfor vil det være en fordel at tilføje dygtige Drupal-udviklere til teamet for at opfylde kravene til indholdsprojektet.
Der er mange fordele, når du beslutter dig for at ansætte en Drupal-udvikler, men e vigtigste er:
- Øget effektivitet – Med mange praktiske funktioner til content management er dette aspekt af Drupal virkelig fremragende til at skabe indhold på en effektiv måde.
- Højere skalerbarhed – Drupal adskiller sig fra sine alternativer og konkurrenter og tilbyder mere fleksibilitet og flere funktioner.
- Fremragende sikkerhed – Hvis der er én bemærkelsesværdig ting, der umiddelbart beskriver dette open source CMS, er det den robuste sikkerhed. Derudover har det alle de nødvendige forudsætninger for at lancere et website uden besvær.
Udover dette kan du forvente mange andre fordele for virksomhedens vækst, hvis du ansætter en Drupal-udvikler (eller sammensætter et team af Drupal-udviklere). Med en god udviklerpraksis bør indholdet altid være mobilvenligt og indlæses hurtigt. I samme forbindelse kan indholdsforfatterne lige så hurtigt indtaste og redigere de mobile versioner af indholdet direkte fra deres mobile enheder - hvilket demonstrerer hvor praktisk og anvendeligt det er.
Oversættelser bliver mere overskuelige, når det gælder sprogversioner, så Drupals system gør det nemt at integrere flere sprog i CMS'et. På samme måde vil du med dette CMS bemærke en betydelig succes i SEO-segmentet - alt indhold forbliver som det er og ændres ikke, hvilket muliggør en hurtig indlæsningshastighed.
Med hensyn til de overordnede fordele, som en virksomhed har ved at bruge Drupal (og ansætte udviklere til dette), sagde Alain Paulikevitch, en full stack-udvikler hos Proxify, følgende:
"Der er ingen tvivl om, at Drupal er det mest efterspurgte CMS, fordi tilladelser og sikkerhedsfunktioner først og fremmest er forenet, og fordi det også omfatter individuelle elementer i stedet for kun på side-niveau. Til modulimplementering er der ikke behov for rettighedsstyring. Andre fordele ved Drupal er den forenede caching og forenede biblioteksdeklaration, som alle forenkler udviklerens arbejde. Lad os tilføje præsentationslagets decoupling, der giver en nem temahåndtering og mange interne hooks (til modulerne). Vi får et fuldt funktionelt CMS, der tilbyder nogle betydelige og positive ændringer i det daglige arbejde med indhold generelt."
Alain Paulikevitch
Populære varemærker, der er afhængige af Drupal
Her er nogle bemærkelsesværdige brands, der bruger Drupal (og der findes selvfølgelig også mange andre):
- Tesla Motors
- Nokia
- McDonald's Australien
- Charles Schwab
- Harvard University
- Oxford University
- Grammy
- University of Chicago
- Warner Records
- Senatet i New York
- NASA's website
- Europa-Kommissionen
Typer af Drupal-udviklere
Før du begynder research-, rekrutterings- og udvælgelsesprocessen, skal du vide, hvilken Drupal-rolle, dvs. jobtitel, du har brug for til dit projekt / din virksomhed.
1. Drupal site builder
Drupal-site builderen er ansvarlig for at skabe et funktionelt website og udnytte alle konfigurationsmulighederne i Drupal. Denne udvikler skal også have kendskab til indholdstyper, oprettelse af visningslister og håndtering af tilladelser. Ved eventuelle kommende problemer (under arbejdet med dette CMS) kan udvikleren stole på Drupal-site builders til at forstå alle udvidelser, moduler, plugins, og hvordan man bruger disse værktøjer sammenhængende.
2. Drupal-moduludvikler
Denne rolle, der også er kendt som Drupal backend-udvikler, omfatter mange PHP-skrivnings- og håndteringsopgaver, herunder en nødvendig viden + erfaring med andre programmeringssprog. En backend Drupal-udvikler vil udføre automatiserede tests, implementering og oprettelse af tilpassede moduler.
3. Drupal temaudvikler
Drupal-temaudvikleren er også en front-end-udvikler med erfaring med grafisk design. De forventes at skabe tilpassede temaer og gøre websitet visuelt attraktivt og funktionelt. Med visuelt tiltalende temaer og funktionel navigation hjælper Drupal-temaudviklerne de besøgende til at blive længere på websitet.
Interview med en Drupal-udvikler
Nyttige tips til et interview forud for en screening
Selv hvis du er i stand til at klare hele ansættelsesprocessen selv, anbefales det at ansætte en rekrutteringsagent og uddelegere interviewene til en specialist. Denne form for ekstern bistand sikrer, at kun de bedste talenter udvælges og shortlistes, og at ansættelsen højst sandsynligt vil blive en succes (udvalgt blandt de bedst mulige kandidater).
Rekrutteringsspecialisten ved, hvad han skal fokusere på i forundersøgelsesfaserne og hvordan man afgører, om kandidaten er et godt match at gå videre med. Dette vil blive efterfulgt af mere specifikke interviewspørgsmål sammen med en evaluering af kandidatens soft skills.
Alt efter kandidatens punktlighed, professionelle påklædning og kommunikationsevner samt svarene på mere specifikke tekniske spørgsmål kan rekrutteringsfolkene træffe en bedre beslutning om, hvorvidt de skal ansætte kandidaten eller fortsætte interviewprocessen.
Tekniske færdigheder hos en Drupal-udvikler
- Dokumenteret erfaring med PHP og PHP Frameworks
- Godt kendskab til udvikling af Drupal-temaer
- God forståelse af Git og GitHub
- Ekspertise inden for Drupal-sikkerhed
- Erfaring med oprettelse af Drupal-moduler og deres installation
- Erfaring med opdateringer og fejlsøgning på et Drupal-drevet website
Drupal-udvikleren skal desuden have en grundig forståelse for databaser og arbejde med software på tværs af platforme. Han/hun skal også være i stand til nemt at skabe og tilpasse et tema fra bunden ved hjælp af de nyeste CSS- og HTML-kodningsstandarder. De skal beherske Drush (kommandolinjeværktøj til Drupal) og bruge API'en til oprettelse af formularer.
Ikke-tekniske færdigheder hos en Drupal-udvikler
De ikke-tekniske færdigheder hos en kommende Drupal-udvikler bør være lige så vigtige at fokusere på som de tekniske færdigheder. Du ansætter efter personlighed og færdigheder, så det er vigtigt at huske på.
Som regel vil rekrutteringsspecialister og specialister i talentindkøb fokusere på engelskkundskaber, generel kommunikation og åbenhed under den indledende samtale. Det er vigtigt, at kandidaten har en høflig og professionel holdning, lytter godt uden at afbryde, er nysgerrig på jobbet og stiller spørgsmål rettet mod virksomheden.
Selvfølgelig er punktlighed, påklædning og det lokale og udstyr, der bruges til samtalen, også ting, som rekrutteringsfolkene bør være opmærksomme på.
Essentials og vurdering af en Drupal-udvikler
En god Drupal-udvikler vil have specifikke færdigheder og essentielle egenskaber, som vil skille sig ud fra resten. Alain opsummerer på en fin måde alle de essentielle ting, teknologier, som kandidaten skal have kendskab til, samt faktorer der kan hjælpe med at vurdere deres færdigheder:
"En god Drupal-udvikler skal vide, hvordan man arbejder med CSS, JavaScript, PHP, MySQL og Twig template engine. Så lad os antage, at jeg skulle vurdere den næste Drupal-teamkandidat. I så fald ville jeg spørge om, hvor mange års erfaring de har med dette CMS, og hvor fortrolige de er med dets komponenter - jeg ville også forsøge at vurdere, hvor velbevandret de er i kreative løsninger med hensyn til brugen af tutorials og vejledninger til at løse en teknisk opgave eller til at fejlfinde. Selvfølgelig skal den ideelle kandidat også være en mester i load balancing af webfarme, clustering, MySQL, integration af tredjepartstjenester og optimering af individuelle servere."
Drupal interview spørgsmål og svar
- Fortæl om Ctools i Drupal.
Forventet svar: Ctools kan defineres som en samling af værktøjer og API'er med henblik på en bedre samlet arbejds- og udviklingsoplevelse. De repræsenterer et bidragsprojekt, der udelukkende er rettet mod udviklere, og disse værktøjer er en samling af klasser, der kan bruges i forskellige arbejdsgange og anvendes til mange funktioner. De giver også en nemmere kodehåndtering og nem oprettelse af biblioteker.
- Hvad er PDO?
Forventet svar: PDO er en forkortelse for PHP Data Object og gør det nemt at få adgang til databaser ved at give udviklerne mulighed for at lave enkle og bærbare koder. PDO er fremragende at arbejde med, fordi det ligner et API (Application Programming Language) baseret data access layer. Det er nemt at aktivere PDO ved hjælp af --with-pdo-sqlite-with-pdo-mysql og --enable-pdo
- Hvad er 'hooks' i Drupal?
Forventet svar: Hooks er modulernes interaktionsmetoder med Drupals kernekode. Med hooks kan vi ikke kun definere sider, men også URL'er gennem alle modulerne. Vi kan tilføje indhold på bestemte sider og endda oprette og bruge brugerdefinerede tabeller i databaser. Kort sagt er hooks API-koden i Drupal, der gør det muligt at foretage en nem Drupal-kerneinteraktion med modulet.
- Fortæl om render array.
Forventet svar: Det er et array, der er associativt, dvs. det etablerer og bekræfter datastrukturerne og standarderne for Render API'et i Drupal. Disse arrays er de grundlæggende, men mest nyttige byggeklodser i Drupal, som giver udvikleren en fremragende struktur til at vise ændringerne af indholdet.
- Fortæl Drupal preprocessor.
Forventet svar: Preprocessoren i Drupal er en funktion, der bruges, når vi har brug for at manipulere variabler, og temaerne får tilladelse til dette. Temaerne vil håndtere variablerne i Twig-skabelonen via PHP-funktioner til dataforbehandling. Herefter vil dataene blive eksponeret i hver enkelt skabelon. Skabelonerne er i dette tilfælde .tpl.php-filerne.
- Hvad er Drupal 'weight', 'cron' og 'drush'?
Forventet svar: Drupal weight kan defineres som prioriteringen og rækkefølgen af en specifik funktion, der endnu ikke er blevet behandlet og vist, hvilket gør det muligt at sortere på en customized måde. For eksempel anvendes et weight-felt på aktiverede noder. Nu, hvis noden har en lavere vægt, vil den node altid dukke op i de øverste positioner på lister, men med en tung vægt vil den "synke" lavere på en liste.
Drupal cron er en opgaveplanlægger, der er tidsbaseret og giver mulighed for en konfiguration, hvor der er automatisk udførelse af opgaver, og hvor der ikke er behov for manuel handling ud over den konfiguration, der allerede er lavet. Scriptsene og kommandoerne udføres effektivt og på et præcist tidspunkt og dato.
Drupal drush repræsenterer en UNIX-grænseflade til scripting, en kommandolinje shell, som er fremragende for eksperter i kommandolinjeværktøjsarbejde. Drupal drush muliggør PHP-opdateringer, udførelse af SQL-forespørgsler, forenkling af indholdsmigration og meget mere.
- Fortæl os om Drupal SEO-moduler.
Forventet svar: Drupal SEO-moduler er:
- Related Links – Dette modul gør det muligt at vise relaterede URL'er til brugeren via forskellige blokke.
- Google Analytics – Dette er den ideelle løsning til at følge og analysere trafikken på dit website, især når det kombineres med Drupal 8.
- Pathauto – Et modul til at skabe pæne og rene URL'er ved at bruge sidens indhold. Dette er fantastisk til analyse af sidens body, titletags og overskrifter.
- Metatags/Node words – Med metatags-modulet kan vi dynamisk levere titeltags, og metadata får også en fremragende struktur, som vi anvender på hver enkelt website, som vi arbejder med.
- Search 404 – Dette modul udnytter muligheden for at søge på Drupal-websitet for at vise os relevante resultater/sider, men det giver ikke mulighed for at søge på egen hånd.
- Url-liste – Dette modul gør det nemt at oprette en liste, der viser node-URL'er. Senere vil disse URL'er blive indsendt til søgemaskiner.
- Site map – Vi bruger dette modul til at give en tilgængelig oversigt over websitet. Det giver de besøgende et pænt website-map og viser RSS-feeds for alle mulige kategorier og blogs.
- Service Links – Dette modul gør det muligt at tilføje links til sociale netværk i selve indholdet eller JavaScript-knapper. Det er rigtig godt for udviklere, der kan lide at eksperimentere med tilpassede visningsmuligheder.
- Fortæl om Drupal-distributioner.
Forventet svar: De komplette kopier af Drupal kaldes distributioner. De indeholder Drupal Core og også temaer, biblioteker, moduler og installationsprofiler. Man inddeler distributionerne i to kategorier:
- Full-featured, som er komplette løsninger til specifikke anvendelser.
- Others, vigtige startpunkter og værktøjer til hurtig start.
Drupal har mange distributioner, f.eks. Cappuccino Starter Kit, deGov, Guardr, Conference Organizing, Open Social og andre.
- Hvordan ville du udføre optimering af et Drupal-website?
Forventet svar: Denne proces er ret enkel. Først starter vi med sidecaching eller aktivering af cachingprocessen. Derefter skal vi komprimere alle CSS-filer, før vi aktiverer JS aggregation. Derefter flytter vi mediefilerne til CDN (Content Delivery Network), og vi gør det samme med de statiske filer, før vi færdiggør optimering af temaet. Normalt omfatter denne proces for Drupal-websiteoptimering også optimering af MySQL og brug af forskellige caching-metoder som Page Caching og View Caching.
- Kan du sammenligne og uddybe 'alter query' og 'update' i Drupal?
Forventet svar: Update i Drupal repræsenterer en DML-type erklæring (Data Manipulation Language) og bruges udelukkende til opdatering af data.
Alter query repræsenterer en DDL-anvisningstype (Data Definition Language), og den bruges udelukkende til opdatering af tabelstrukturer, f.eks. tilføjelse og fjernelse af indekser eller felter.
Hvad adskiller en fantastisk Drupal-udvikler fra en god udvikler?
Det ville være indlysende, hvem der er den bedste Drupal-udvikler ud af mindst to eller flere lovende kandidater. Uanset om du foretager dette valg ud fra en Drupal-fællesskabsgruppe, på en Drupal-platform eller ved hjælp af andre jobplatforme, vil der altid være en udvikler, der vil skille sig ud fra de andre.
Sammenlignet med de gode udviklere vil de ekstraordinære udviklere have flere års erfaring med Drupal og flere projekter i deres portefølje, der involverer dette CMS. Desuden vil de også have fremragende engelskkundskaber og en generel proaktiv indstilling. Du skal sikre dig, at en person passer kulturelt godt ind i teamet, og ikke kun passer godt til den teknologi/det færdighedssæt, du ansætter til. En proaktiv udvikler er dén, der tænker i forbedringer og løsninger og ikke blindt følger med i uddelegerede opgaver.
Og selvfølgelig er den åbenlyse faktor at klare alle svarene og de tekniske opgaver i interviewfasen.
Her tilføjede Alain også:
"En god Drupal-udvikler er altid nysgerrig efter at finde ud af mere og bruge den bedst mulige praksis for en bestemt funktion. En god udvikler stopper ikke ved den første indlysende og nemme løsning, men udforsker i stedet, hvad man ellers ville kunne bruge og implementere".
Mulige udfordringer ved ansættelse af en Drupal-udvikler
Som det er tilfældet med alle stillinger og ansættelsesprocesser, må man også i dette tilfælde forvente nogle udfordringer.
Der er f.eks. en risiko for at vælge kandidater, som måske ikke er i topklasse, og for at undgå denne faldgrube bør du alliere dig med erfarne rekrutteringsspecialister.
En anden mulig udfordring er konkurrenterne, som i de fleste tilfælde er klar til at give en højere løn til den udvikler, der er den dygtigste og mest efterspurgte. Hvis du kender dit ansættelsesbudget på forhånd, kommer du langt - både af hensyn til rekrutteringsfolkene og den udvalgte kandidat.
Fordele ved at bruge Drupal
Når nogen begynder at bruge Drupal til et projekt/en virksomhed, kan de forvente følgende:
- Masser af ressourcer – Du kan finde mange værdifulde funktioner, der allerede er lavet af en anden person, og alt er let tilgængeligt. Et eksempel er Drupal-modulerne som en del af fællesskabsdelingen.
- Pålidelighed – Drupal er et CMS, der er blandt de mest populære, og det skyldes den stabilitet, som det tilbyder i det lange løb.
- Fleksibilitet – Som et meget fleksibelt CMS bekræfter Drupal, hvordan udvikleren let kan oprette forskelligt indhold, som de kan tilpasse senere.
- Robusthed og praktiske funktioner – Med en præcist skrevet og defineret kildekode kan Drupal prale af, at det er nemt og bekvemt at udføre de opgaver, der skal klares.
- Skalérbarhed – Ved hjælp af Drupal-moduler kan du meget nemmere udvide Drupal-kernen. Og hvis der ikke allerede findes præcis det modul, som du har brug for, kan du nemt oprette eller tilpasse det ud fra de eksisterende moduler.
- Sikkerhed – Drupals sikkerhed er ganske fantastisk; og den er opnået gennem mange præcise test og strenge regler for testning, som i sidste ende resulterer i en beviselig indbygget beskyttelse/sikkerhed. Alt, hvad der installeres eller alle vigtige data-importer, vil blive låst af sikkerhedshensyn.
- Et stort fællesskab – Drupal har haft et stort fællesskab af brugere siden 2001, og der er konstant nyheder, opdateringer, undervisningsmaterialer og andre nyttige ressourcer at finde fra alle mulige Drupal-eksperter.
Alain tilføjede desuden endnu en fordel ved at bruge Drupal:
"Når jeg arbejder med andre CMS-frameworks, føles det ikke lige så godt som at arbejde med Drupal, som forenkler alle mulige udfordringer i arbejdsgangen. Men overordnet set er mængden af genanvendelig kode fra et projekt (ofte som modulformat) meget bedre og højere end ved brug af et andet framework, hvis man er opmærksom og udfører hvert trin korrekt."