Hur man arbetar som programutvecklare

Författare: Peter Berry
Skapelsedatum: 19 Augusti 2021
Uppdatera Datum: 1 Juli 2024
Anonim
Kan du lära dig programmera på 12 veckor? IT-konsulterna berättar
Video: Kan du lära dig programmera på 12 veckor? IT-konsulterna berättar

Innehåll


Det har aldrig varit en bättre tid att bli mjukvaruutvecklare. Efterfrågan på mjukvaruutvecklare ökar hela tiden, liksom mångfalden av arbete de har till uppgift att slutföra. Då är det lönen.

Enligt USNews.com, tjänade den genomsnittliga programvaruutvecklaren 101 790 dollar 2017. Enligt Gorroo.io tjänar den genomsnittliga utvecklaren C # 102 000 dollar per år.

Kort sagt, programmering är en av de mest efterfrågade färdigheterna i världen just nu. Om du vill arbeta online eller förbereda dig för nästa steg i din karriär finns det några smartare drag än att lära sig kod.

Den genomsnittliga C # -utvecklaren tjänar $ 102k per år.

Men var ska jag börja? Om du är någon som inte har förknippat med koden tidigare kan du komma att få en fullständig förlust av hur du kommer igång. I det här inlägget ska vi utforska allt du behöver veta: vad en programvaruutvecklare gör, vilka kvalifikationer du kan behöva och hur du hittar arbete.


Vad gör en programutvecklare?

En programutvecklare är någon som utvecklar programvara. Det betyder att de kommer att skriva kod, använda verktyg och ofta bära ett projekt från början till slutförande. Alternativt kan de hyras in för att identifiera buggar i befintlig kod, eller för att uppgradera den / lägga till nya funktioner.

Hur som helst kommer ditt arbete till stor del att bestå av att lösa problem med olika programmeringsspråk, API: er och verktyg. Du kan arbeta med projekt direkt för kunder, genom en byrå eller som en del av en större organisation.

Typer av mjukvaruutvecklare

Anledningen till att "mjukvaruutvecklare" är en så bred term, är att det finns så många olika typer av programvara som du kanske blir ombedd att arbeta med, och så många olika verktyg du kan använda för att få det till.


En mjukvaruutvecklare kan också fungera som webbutvecklare eller "full stack-utvecklare" för att bygga en webbplats eller lägga till interaktiva funktioner. De kan utveckla mobila appar eller arbeta med interna branschverktyg.

En annan distinktion att tänka på: programvaruutvecklare vs mjukvaruingenjör, vad är skillnaden?

Även om båda dessa termer kan användas omväxlande, beror skillnaden på typen av arbete som avslutas och tillvägagångssätt. Programvaruingenjörer tittar på kod från en teknisk synvinkel: de tar hänsyn till livscykeln, de tittar på fel och buggar och de arbetar vanligtvis på stora projekt bland större team.

Programutvecklare är däremot mer benägna att vara den främsta kreativa chef för ett projekt. De utvecklar programvara från början till slut för en klient eller organisation, vanligtvis för att fylla en specifik roll.

Så om du arbetar för Facebook som en del av dess teknikgrupp är du en programvaruingenjör. Om du skapar appar för kunder är du en programutvecklare. Men du kan väl ringa båda i båda situationerna.

Vilka färdigheter och kvalifikationer behöver en programvaruutvecklare?

För att kunna vara programutvecklare måste du lära dig att programmera.

Nästa fråga är: "vad är det bästa programmeringsspråket att lära sig" eller "vilka programmeringsspråk vill arbetsgivare?"

Även om det verkligen är sant att vissa programmeringsspråk är mer efterfrågade av klienter och arbetsgivare (Python, Java, JavaScript, PHP, Swift, C #, C ++, Ruby), är sanningen att detta helt beror på vilken typ av arbete du vill göra . Här är några exempel.

Utvecklare av full stack

Python, JavaScript, PHP och Ruby är alla språk som används för webbutveckling. Om du arbetar på en onlineportal eller gör uppdateringar till webbappar som Twitter kommer vissa av dessa sannolikt att vara användbara. I den här rollen kan det också vara fördelaktigt att förstå databaser (SQL) och att veta din väg runt en server.

En "full stack-utvecklare" är en webbutvecklare som har uppnått sin slutliga form: någon som kan hantera alla aspekter av webbdesign och underhåll, från frontend (HTML, CSS, JavaScript), till backend (PHP, Python, Ruby), till serverunderhållet. Denna typ av professionell är efterfrågad.

Här är en bra kurs från Udemy om du vill lära dig mer: Full Stack Web Developer Bootcamp.

Mobilutvecklare

Om du emellertid är intresserad av att utveckla Android-appar, måste du lära dig Java eller Kotlin (helst båda). Du måste bekanta dig med Android Studio, Android SDK (Software Development Kit) och alla de nya koncept som Google ständigt introducerar (till exempel direktappar eller bubblor).

Läs mer: Hur man hittar arbete som Android-utvecklare

Om du vill tjäna iOS-appar för levande bör du lära dig Swift och Objekt C och bekanta dig med Xcode. Om du vill skapa Windows-appar eller gå över plattformen behöver du C # och en förståelse för Visual Studio.

Spelutvecklare

För att bli spelutvecklare bör du definitivt lära dig C # och helst C ++. Du borde lära känna de stora spelmotorerna (Unity and Unreal), och du kanske vill lägga till lite CAD till din skillset.

Den ultimata guiden för enhet för spelutveckling vid Udemy är ett bra ställe att börja.

Det här är bara att repa ytan. Andra mjukvaruutvecklare kommer att arbeta med programvara med elektronik, hantering av big data och mer.

Sedan finns det de specifika verktygen som företag kommer att använda för att hantera sitt arbetsflöde och samarbeta om större projekt. När jag besökte Facebook i London för några månader sedan introducerades jag för de många olika verktygen företaget använder för att hålla projekt på rätt spår. De inkluderar Phabricator, Mercurial, Sapienz och mer.

Visst kan verktyg som Github (används för versionskontroll) vara användbara för programvaruingenjörer och utvecklare som arbetar i en mängd olika branscher. Projekthanteringsappar som Asana eller Basecamp är också mycket användbara för fjärrarbete. Att visa att du har erfarenhet inom dessa områden kommer att avsluta ditt CV ytterligare och göra dig ännu mer anställbar.

Sammanfattningsvis: vad du behöver veta beror på vilken typ av programutvecklare du vill bli.

De bästa certifieringarna för mjukvaruutvecklare

Så när du väl har valt vilken typ av arbete du vill göra och typen av kod du vill skriva är ditt nästa jobb att identifiera vilken typ av utbildning du kommer att behöva. Behöver du en examen för att bli programutvecklare?

Det korta svaret är nej. Det längre svaret är nej, men det hjälper verkligen.

Även om det är möjligt att få anställning utan examen, kommer en datavetenskapsexamen ändå att vara ett krav för en stor variation av organisationer och arbetsgivare. Det kommer också att ge dig en utmärkt grundläggande förståelse och en konkurrensfördel gentemot icke-examensbevisande sökande.

Läs mer: Framtidssäker din karriär och lön som en informationssäkerhetsanalytiker

På samma sätt kommer en examen att ge dig en fördel jämfört med andra kandidater under ansökningsprocessen.

Men grader är dyra och de flesta vuxna har inte möjlighet att passa in dem runt sin livliga livsstil. I vilket fall är det näst bästa att ta onlinekurser och få certifiering som kan visa en grundläggande förståelse.

Det finns många branschkända certifieringar som ger dig en viss mängd utmaning när du ansöker om tjänster.

Till exempel kan du få Unity-certifiering direkt från företaget, vilket kan vara värdefullt för spelutvecklare. Om du vill bli en Android-utvecklare kan du ansöka om att bli en associerad Android-utvecklare som är ett officiellt program som drivs av Google. Eller så kan du välja att bli en Android-certifierad applikationsutvecklare, som är ganska välkänd.

Certifieringar som dessa ger kunderna och företag som överväger att anställa dig trygghet. De visar att du verkligen har den kunskap du påstår att du har, vilket kommer att innebära att de kan ta dig upp till hastighet med minimal extra utbildning.

Bara Google vilken typ av arbete du är intresserad av och hitta de mest kända certifieringarna i det området. Om du är osäker väljer du ett av de stora språken som C # eller Java, eller letar efter en datavetenskap eller full stack-kurs som täcker mycket mark.

Behöver du certifieringar för att vara mjukvaruutvecklare?

Det billigaste alternativet skulle vara att bli en programutvecklare utan certifiering eller kvalifikationer. Men är det möjligt att hitta arbete som en självutbildad utvecklare?

Jag kan garantera att det är det, eftersom det är exakt vad jag gjorde. Jag lärde mig BASIC-programmering på ett ZXSpectrum, och därifrån fortsatte jag min kunskap med QBASIC, B4A, sedan Java, C #, Python och mer.

Hur jag kunde göra detta var genom att låta mitt CV tala för mig. Jag utvecklade en framgångsrik Android-app som hade över 100 000 betalade nedladdningar, arbetade med några ganska stora namn på baksidan av det och skrev sedan en teknisk bok om spelutveckling för Apress Media (Springer).

Dessa prestationer ger exakt samma typ av försäkring för kunder som ett certifikat och gör att jag kan debitera mycket mer än jag annars kunde.

Jag rekommenderar starkt att du utvecklar appar och webbplatser på din fritid för att fungera som exempel på ditt arbete, göra billigt arbete för vänner för att bygga en portfölj, engagera sig i open source-projekt på GitHub eller delta i hackathons.

De flesta frilanssajter som UpWork tillhandahåller också korta tester som du kan utföra för att visa din grundläggande förståelse.

Även utan den här typen av erfarenhet, om du accepterar att få betalning vid mottagandet, inte tar ut för mycket och ger exempel på ditt arbete, borde du kunna landa några jobb direkt.

När det gäller att hitta arbete med stora arbetsgivare föreslår vissa yrkesverksamma att certifiering inte kan vara till någon hjälp alls.

Det beror på att när du väl har känt ett programmeringsspråk är det relativt enkelt att förstå de andra. Medan syntaxen, verktygen och några av reglerna kan vara annorlunda; det första språket du lär dig är fortfarande det svåraste. Det finns en motsvarighet för "om" på nästan alla språk du kommer att lära dig.

när du väl har känt ett programmeringsspråk är det relativt enkelt att förstå de andra.

När du arbetar inom en organisation kommer utbildning alltid att krävas. Mycket få arbetsgivare förväntar sig att du vet allt direkt, och - i all ärlighet - det finns en enorm mängd fläck som pågår i en programvaruingenjörs karriär. Räkna med att känna dig helt ur djupet och fylla med "imposter-syndrom" när du börjar. Men oroa dig inte, det är så alla känner!

Hur du lär dig själv kod

Att lära dig själv att koda är en utmanande process, och avancerade koncept som objektorienterad programmering kan vara tuffa muttrar att knäcka. Lyckligtvis finns det en enorm mängd gratis material tillgängligt online; vi har redan markerat ett par bra kurser från Udemy och det finns många fler förutom. Vi har till exempel en kurs för Android-utvecklare som drivs av Gary Sims.

Här är några mer utmärkta verktyg för att lära sig kod just nu:

  • En bra kurs som lär Python för datavetenskap.
  • C # -kodningsbunt
  • Nio-delar pro webbutvecklare utbildning paket

Och det finns många bra kurser på platser som SkillShare.

Se även: Hur man startar Android-apputveckling för kompletta nybörjare i fem steg

Arbeta igenom dessa på ett logiskt sätt och öva med dina egna projekt. Det är svårt att börja med, men om du fokuserar på de aspekter du tycker om kommer du dit.

Hitta betalt arbete som programutvecklare

Den sista delen av pusslet är att hitta betalt arbete, som en entreprenör, en heltidsanställd från hemmet eller frilansare.

Att hitta frilansarbete handlar huvudsakligen om att använda platslistor, freelancing-webbplatser som PeoplePerHour eller UpWork.

Det finns också frilanssajter som riktar sig specifikt till programvaruutvecklare och ingenjörer. Dessa inkluderar Rent-a-code och till och med Stack Overflow.

Det finns andra sätt att tjäna pengar med expertis som programutvecklare också. Du kan bli författare (som jag så småningom gjorde) och skriva handledning för bloggar eller böcker för tekniska förlag. Du kan lära dig genom online-kurser; varför inte skapa din egen Skillshare-kurs?

Två viktiga problem kommer alltid upp i alla dikuioner om Bluetooth-hörlurar - ljudkvalitet och batteritid. Idag trävar Qualcomm efter att löa dea problem med in nyligen avlöj...

Förhandgrankningen av Android Q-utvecklaren, en tidig verion av den tora Android-uppdateringen om planera för enare i år, kan lanera idag. pekulationerna anländer via XDA-utvecklar...

Till Dig