Forskellen mellem softwareingeniør og softwareudvikler

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

Så hvorfor er det vigtigt at kende forskellen mellem ? 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. og
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

vs
Softwareudvikler

Du finder også ud af, at kandidater til disse roller bør have forskellige mængder af . 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 " vs : en rekrutteringskonsulents guide til at skelne dem fra hinanden ," fastslog vi, at en målkunder og derefter skabe retter, der passer til denne smag. A 's opgave er i bund og grund at anvende den samme tilgang til at skabe mens kokken laver lækre retter. 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
A starter normalt processen med at opbygge ved at tale med kunderne og finde ud af, hvad deres 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 vil ofte arbejde tæt sammen med programmører, som måske faktisk udfører designet af den . Men ofte bruger udviklere en mange forskellige færdigheder herunder god kommunikation, projektledelse og domænespecifikke og . Som Felim O'Donnell, direktør for drift hos Liberty IT . Dette sidste punkt er faktisk afgørende for at forstå forskellen mellem en 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 , 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 bør være en , en person, der er i stand til at bygge 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.

Udtrykket , andre er en omstridt sag. Mens nogle lande kræver specifikke kvalifikationer eller en sætte spørgsmålstegn ved, om den kan anvendes på . På trods af disse indvendinger er der stadig en stor del af befolkningen, der har en specifik opfattelse af, hvad en er.
A 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 bør kunne gøre alt det, som en systemet og dens arkitektur.
Du finder ofte 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 . I stedet for at arbejde på en specifik applikation er ingeniørerne interesseret i at , 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 , a og kan gøre lignende ting. Men du vil opdage, at en har en tendens til at fokusere på at løse problemerne for en enkelt bruger eller et sæt brugere, mens en 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 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 , kan du se en back-end eller systemer . 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 vs er forskellige. For en 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 bør være i stand til at se, hvordan deres handlinger kan skabe problemer senere hen.
Når du leder efter en , 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 og en . 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 Du 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 , 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 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:
- Forskellen mellem en programmør og en udvikler
- Forskellen mellem en koder og en programmør
- Forskellen mellem en front-end, back-end og full-stack-udvikler
Billede: Mimi Thian på Unsplash
Del indlæg