Forskellen mellem softwareingeniør og softwareudvikler

Udgivet: Sidst opdateret:
Softwareingeniør vs. softwareudvikler: en teknisk rekrutteringskonsulents guide til at skelne dem fra hinanden

Enhver teknisk rekrutteringskonsulent, der er sit værd, bør kunne se forskel på en koder og en computerprogrammør eller endog en programmør og en webudvikler. Det kan dog være lidt vanskeligere at identificere forskellen mellem softwareudvikler og softwareingeniør inden for webudvikling.

Softwareingeniører og softwareudviklere er begge højt kvalificerede fagfolk, der er interesserede i at kode og være i stand til at bygge computersoftware fra bunden. Når det er sagt, er der vigtige forskelle mellem de to, som du skal huske. Hvis du får dem på plads, kan det hjælpe dig med at ansætte en utrolig værdifuld teknisk person. Gør du det forkert, kan du ende med at ansætte den helt forkerte person til stillingen.

Softwareudvikler vs. softwareingeniør

Softwareingeniør vs. softwareudvikler: Hvad er forskellen?

Så hvorfor er det vigtigt at kende forskellen mellem softwareudvikling og datateknik? For det første har disse stillinger forskellige anvendelsesområder og ansvarsområder. Det er vigtigt for en rekrutteringsansvarlig, at de også kan have forskellige lønforventninger.

Et hurtigt kig på PayScale viser, at i skrivende stund er gennemsnitslønnen for en softwareingeniør i USA $ 83,060, mens gennemsnittet for et job som softwareudvikler er $ 69,560. Selv om disse lønninger sandsynligvis vil svinge alt efter, om der er tale om juniorudviklere eller seniorudviklere, og også mellem de enkelte programmeringssprog.

Softwareingeniør

Softwareingeniør vs. softwareudvikler: softwareingeniør løn PayScale

vs

Softwareudvikler

Softwareingeniør vs softwareudvikler: løn til softwareudvikler PayScale

Du finder også ud af, at kandidater til disse roller bør have forskellige mængder af tekniske færdigheder. Hvad vigtigere er, bør ansøgerne også have forskellige tilgange til deres arbejde. Vi vil gå i detaljer nedenfor, men det er nok at sige, at udviklere har tendens til at være mere kreative, mens ingeniører har tendens til at være mere præcise. Hvorfor er det sådan? Først skal du forstå, hvad begge disse roller laver.

Hvad laver en softwareudvikler?

I vores indlæg " Programmør vs udvikler: en rekrutteringskonsulents guide til at skelne dem fra hinanden ," fastslog vi, at en udvikler er som en professionel kok. De kan lave mad på et højt niveau og har en kreativ tilgang til at lave nye retter. De starter med at forstå smagen af deres målkunder og derefter skabe retter, der passer til denne smag. A softwareudvikler's opgave er i bund og grund at anvende den samme tilgang til at skabe oprettelse af software mens kokken laver lækre retter.

A udvikler starter normalt processen med at opbygge software ansøgninger ved at tale med kunderne og finde ud af, hvad deres software har brug for er. Med disse kriterier i hånden går de videre med at designe og udvikle de forskellige komponenter i applikationen, som skal fungere sammen. For at få arbejdet gjort er en stor del af deres arbejde at styre projektet fra start til slut og sikre, at de er i konstant kontakt med de vigtigste interessenter.

I henhold til Bureau of Labor Statistics , a udvikler vil ofte arbejde tæt sammen med programmører, som måske faktisk udfører designet af den udvikler. Men ofte bruger udviklere en mange forskellige færdigheder herunder god kommunikation, projektledelse og domænespecifikke teknisk ekspertise. Dette sidste punkt er faktisk afgørende for at forstå forskellen mellem en software udvikler og software ingeniør. Som Felim O'Donnell, direktør for drift hos Liberty IT siger,

Forskellen mellem ingeniører og udviklere er, at en udvikler tager funktionelle specifikationer og leverer den nødvendige kode inden for stramme parametre, hvilket i bund og grund betyder, at han løser opgaven isoleret.

Udviklere har en tendens til at gøre alt det, som ingeniører gør, men i begrænset omfang. Dette giver dem mulighed for at være mere kreative end en ingeniør, finde løsninger på problemerne, efterhånden som de opstår. Men ingeniører har en tendens til at løse problemer i meget større skala. Der er mindre plads til kreative løsninger, og i stedet er de nødt til at være mere systematiske, og de tænker.

Hvad laver en softwareingeniør?

A udvikler bør være en software arkitekt, en person, der er i stand til at bygge software ansøgninger fra start til slut. På samme måde bør enhver kok, der er sit værd, være i stand til at finde på en menu, der appellerer til kunderne og er veludført. Og for de fleste restauranter er det helt fint. Men i større faciliteter som hoteller har man måske ét køkken, der betjener fem forskellige restauranter. Køkkenchefen for dette køkken skal kunne levere samme kvalitetsniveau som en kok, der driver én restaurant, samtidig med at han skal kunne opfylde behovene for fem restauranter. Det betyder, at de skal være mere systematiske i deres tilgang.

softwareingeniør vs. softwareudvikler: Fremtidig ingeniør

Udtrykket ingeniør er en omstridt sag. Mens nogle lande kræver specifikke kvalifikationer eller en software teknik grad, andre sætte spørgsmålstegn ved, om den kan anvendes på datalogi. På trods af disse indvendinger er der stadig en stor del af befolkningen, der har en specifik opfattelse af, hvad en software ingeniør er.

A software ingeniør bør kunne gøre alt det, som en software udvikler gør, men med en anden designfilosofi. Ingeniører har et større overblik end udviklere. Det betyder, at de skal være mere fokuserede på strukturdesign og eliminering af teknisk gæld. I stedet for at være interesseret i at løse det umiddelbare problem, er de interesseret i at løse det aktuelle problem, samtidig med at de minimerer kompromiserne for andre dele af systemet og dens arkitektur.

Du finder ofte software ingeniører opdelt i to kategorier . applikationsingeniører ligner i nogen grad udviklere. De har en tendens til at designe, bygge, installere og vedligeholde applikationer, som regel i stor skala. systemingeniører vedligeholder derimod it-infrastrukturen for teknologiske virksomheder. I stedet for at arbejde på en specifik applikation er ingeniørerne interesseret i at software design, at opbygge og vedligeholde de systemer, der understøtter applikationer, under hensyntagen til alle involverede interessenter.

Vigtige forskelle mellem softwareingeniør og softwareudvikler

  • Softwareudviklere har en tendens til at gøre alt det, som softwareingeniører gør, men i begrænset omfang. Dette giver en udvikler mulighed for at være mere kreativ end en ingeniør og finde på løsninger på problemer, efterhånden som de opstår.
  • En softwareingeniør skal kunne gøre alt det, som en softwareudvikler gør, men med en anden designfilosofi.
  • En softwareudvikler starter normalt applikationsudviklingsprocessen med at tale med kunderne og finde ud af, hvad deres softwarebehov er.
  • Softwareingeniører har et større overblik end softwareudviklere, hvilket betyder, at de er mere fokuseret på den overordnede struktur af et softwaresystem - dets design - og på at fjerne teknisk gæld.
  • Softwareingeniører er interesserede i at løse umiddelbare problemer og samtidig minimere kompromiserne med andre dele af systemet og dets arkitektur.

Hvad er forskellen mellem softwareingeniør og softwareudvikler på et CV?

I mange af de grundlæggende teknik principper, a software ingeniør og software udvikler kan gøre lignende ting. Men du vil opdage, at en software udvikler har en tendens til at fokusere på at løse problemerne for en enkelt bruger eller et sæt brugere, mens en ingeniør vil fokusere på alle brugernes problemer. Denne video forklarer forskellene på glimrende vis:

Det er en god idé at se på de færdigheder, som kandidaten besidder. A software udvikler vil have en tendens til at have domænespecifik viden. F.eks. vil man se mange Java-udviklere eller Ruby-udviklere. Ingeniører har ofte en meget bredere erfaring. Det svarer til det, man ser hos en full stack udvikler, kan du se en back-end ingeniør eller systemer ingeniør. Det forventes, at de har erfaring inden for en række forskellige områder.

Når du ansætter, er det også den holdning og de egenskaber, du leder efter hos en software ingeniør vs udvikler er forskellige. For en teknik rolle, skal du lede efter en person, der har matematik på højt niveau og griber problemerne an på en meget logisk måde. Du skal ikke lede efter en person, der accepterer tvetydighed. En ingeniør bør være i stand til at se, hvordan deres handlinger kan skabe problemer senere hen.

Når du leder efter en udvikler, vil du gerne se en større vægt på kreativ problemløsning. Udvikleres tekniske omfang har en tendens til at være mere fokuseret, så du ønsker en person, der er mere interesseret i at finde løsninger end i at bekymre sig om teknisk gæld på lang sigt.

Hvordan kan jeg teste en softwareingeniørs færdigheder i forhold til en udviklers?

Det er faktisk ret nemt at teste en softwareingeniør og en udvikler. Du kan give dem de samme typer opgaver og arbejdsprøveprøver. Det, du vil se, er, hvordan de griber problemet an og træffer beslutninger om løsningen.

Som Aaron Sempf, teknisk chef hos Tribal Melbourne siger ,

De egenskaber, jeg leder efter hos personer, når de skal udfylde enten en ingeniør- eller en udviklerrolle, kan være ret forskellige, men de opgaver eller tests, jeg giver begge er de samme, men evalueres på forskellige måder.

Ved hjælp af en platform som DevSkiller kan du nemt give en opgave, der afspejler den type arbejde, som kandidaten vil udføre, når han/hun begynder at arbejde for dig. Afhængigt af kandidaten kan den samme opgave gribes an på forskellige måder. Når du leder efter en ingeniørDu vil have en person, der producerer en ren og effektiv løsning, som ikke kolliderer med resten af systemet. Når du leder efter en udvikler, leder efter en person, der kan løse problemerne effektivt ved hjælp af alle de ressourcer, der er til rådighed for dem.

Forskellene mellem en software ingeniør vs software udvikler primært kommer ned til den måde, de griber opgaverne an på, og det omfang, de forvalter. Hvis du lærer disse begreber, kan du forstå, hvilke færdigheder du skal kigge efter for at ansætte de rigtige medarbejdere.

Før du tager af sted

Se vores andre omfattende ressourcer om forskellene mellem forskellige jobfunktioner:

Billede: Mimi Thian på Unsplash

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