til Tross for populære myter, og du kan bli en programvareutvikler uten en høyskole grad.
Enten du er å skrive inn arbeidskraft eller sittende fast i en karriere du misliker (administrasjon, drift, nettbank, etc.), bli en programvareutvikler er helt innen rekkevidde—så lenge du er villig til å sette i hardt arbeid.
i Henhold til US News, utviklere av programvare har en median lønn på $107,510 per år, og en arbeidsledighet på 1.,4%, noe som gjør den til en av de mest lukrative teknologi karrierer. I tillegg, yrket har en over gjennomsnittlig work-life balanse.
Enda mer, Bureau of Labor Statistics prosjekter som mellom 2018-28 det vil være en 21% vekst. Samtidig er den gjennomsnittlige veksten for alle yrker er 5 prosent. Dette oversettes til 284,100 jobb åpninger.
Og gjett hva? Til tross for den positive outlook og overflod i muligheter, bare 3% av college gradienter studere datateknikk og informasjonsvitenskap. Som du kan se i bildet nedenfor, i 2020 var det 1.,4 millioner computing jobber versus 400,000 CS studenter.
Du får bildet: programmering ferdigheter som kan bringe mer økonomisk sikkerhet, så vel som fleksibilitet i din dag-til-dag. Men hvordan får du disse ferdighetene, uten å sitte gjennom fire år av CS klasser? Og enda viktigere, hvordan kan du lander på ett av disse i etterspørsel og godt betalt karriere?
Her er de gode nyhetene: det er helt mulig!, Denne 11-steg guide vil løfte sløret og viser deg hvordan du kan bli en programvare ingeniør uten CS grad. Så les videre!
Disclosure: jeg er en stolt samarbeidspartner for noen av ressursene som er nevnt i denne artikkelen. Hvis du kjøper et produkt gjennom mine linker på denne siden, jeg kan få en liten provisjon for å henvise deg. Takk!
Hva Er en Programvare Ingeniør?
Ved definisjon, en programvare ingeniør er noen som skriver koden bak software produkter (video spill, operativsystemer, programmer, funksjoner, roboter, etc.).,
Er det en forskjell mellom en programvare ingeniør og en programvareutvikler? Egentlig ikke. Vilkårene er ganske mye brukt om hverandre, og selskaper har en tendens til å se på dem som en og samme ting. Når du er på jakt etter en programvare for ingeniør jobb, sørg for å søke og se på oppslag for både «software engineer» og «software developer» for å få flest mulig resultater.,
Hvordan Bli en Programvare Ingeniør Uten en Høyskole Grad
Før du begynner å forstå at de følgende trinnene er spesifikke for de som leter etter en full-time jobb (jeg forkorte som FTJ) som programutvikler.,
vil De være mindre nyttig for en person som er:
- Dabbling med kode for første gang
- Usikker på om koding er rett for dem
- som Ønsker å utøve web design, UX, UI, eller noen andre design-relaterte felt
- Ønsker å frilans full-time
- i Håp om å starte sin egen virksomhet
Men de er alle gode ting å sikte mot, og resten av bloggen er full av innhold om disse emnene også!
Nå, la oss dykke inn i 11 trinn på hvordan å bli en programvare ingeniør.,
Trinn #1: Å Være krystallklar om målet i software engineering
Overgangen til en ny karriere er ikke lett. Men når du har et endelig mål i tankene, det hjelper enormt når du treffer humper i veien. En krystall-klare mål ser noe som dette:
- «jeg ønsker å jobbe som en software-utvikler i et etablert tech selskap.»
- «jeg ønsker å jobbe på en helt ny oppstart, som software engineer, i den bransjen jeg elsker.»
- «jeg ønsker å bygge ting på et team, og få godt betalt for det.,»
uansett detaljene i drømmen din, hvis du ønsker å gjøre det gjennom alle 11 fremgangsmåten, MÅ du være forpliktet seg til målet om å bli en full-time-software engineer. Det er det som vil drive deg fremover når det blir for tøft.
Trinn 2: Velg en god software engineering språk å lære
Når du starter ut, mange mennesker får problemer med å bestemme hvilke programmeringsspråk (og rammeverk) de bør lære. Ruby on Rails? Python og Django? GJENNOMSNITTLIG stack? Så mange valg, så liten tid.,
Her er tingen: når du vet at et bestemt språk/stack godt, det er ikke vanskelig å overgangen til en ny en. Det betyr at når du er blitt en programvare ingeniør, hva du ønsker å fokusere på er å forstå grunnleggende programmering. I hovedsak, å lære å lære.
Når du har et solid fundament, kan du enkelt overgang til nye språk, rammer og teknologier., Som co-grunnlegger av Flatiron Skolen Avi Flombaum sier, «Det viktigste aspektet av det er at du lærer å tenke som en utvikler.»
Start koding nå
Stopp venter og begynne å lære! Få mine 10 tips på å lære deg hvordan man skal kode.
Alt dette er sagt, bør du fokusere på ett språk/rammeverk for å starte.
Med så mange språk der ute, kan det være vanskelig å vite hvilken som å velge. Jeg anbefaler å ta litt tid å lære om de forskjellige språkene. Denne veiledningen for å plukke et programmeringsspråk som er et flott sted å starte.,
For mange, Ruby er en utmerket måte å gå.
Ruby er lesbar og effektiv, noe som gjør det mye lettere å bli komfortabel med enn noen andre språk. Det er også åpen kildekode, slik at du har tilgang til massevis av verktøy og et fellesskap av andre utviklere, helt gratis. Og kanskje viktigst av alt, det er fleksibelt: språket som er brukt av mange selskaper (Airbnb, GitHub, Hulu, Kickstarter, etc.) og gir deg et solid grunnlag for å grenen ut til andre språk senere.,
Trinn 3: Praksis utvikling av programvare…og øve litt mer
Mens bunken du lære spiller ingen rolle en hel masse, det som betyr noe er å lære ved å gjøre. Dette betyr dedikere noen reell tid til å perfeksjonere din nye båter. Du må sette av en betydelig mengde tid hver dag, hver uke, for å lære.
Du kan ikke bli en programvareutvikler etter 10 timer med praksis. Det er bare ikke mulig.
Noen mennesker sier at det tar 10 000 timer på å bli en ekspert., Nå, du trenger ikke 10 000 timer praksis for å få din første programvareutvikler jobb. Men du trenger å vie noen alvorlige tid.
for Å gi ett eksempel, den informatikk Essentials for Utvikling av Programvare pensum på edX tar ca 4 måneder (7-9 timer per uke) for å gjøre det gjennom.
Trinn 4: Bruke verktøy som virkelig programvareutviklere bruker
Mens gratis ressurser som Codecademy er flott, du er ikke i den virkelige verden-miljøet når du bruker dem., I stedet, du er å skrive direkte inn i nettleseren, og får en poengsum basert på en quiz eller noen annen form for interaktiv aktivitet.
Dette er absolutt nyttig som en måte å få deg som er vant til koding og solidifying konseptene i tankene. Men i den virkelige verden, du kommer ikke til å arbeide som dette. Så, hva du skal gjøre fra starten av er å bygge hvordan ekte ingeniører bygg. Du ønsker å bruke de verktøyene som de bruker. Nedover veien, dette vil gjøre det mye lettere å gå inn i en full-time rolle og delta i et team.,
Men det er vanskelig å bygge hvordan ekte utviklere bygge og bruke verktøy ekte devs bruke, når du først starter ut. (Hvis du er noe som jeg var, det er vanskelig å vite hvor du skal begynne.)
Den gode nyheten er at det finnes programmer der ute som kan lære deg hvordan du bruker disse verktøyene—som i Versjon Kontroll med Git, et nettbasert kurs gjennom Coursera.,
Sine pensum innslag på verktøy og prosesser ekte ingeniører bruker hver dag, for eksempel:
- Git/GitHub
- kommandolinje-grensesnitt
- Bitbucket
Dette vil gjøre deg i stand til å justere mye raskere når du er i en ekte jobb, snarere enn å ha ennå en annen bratt læringskurve for å mestre.
en Annen Git kurs for å sjekke ut er Den Ultimate Git Mestring Løpet av Koden Med Mosh, som er undervist av en programvare ingeniør med over 20 års erfaring i bransjen.,
Step #5: Filer-kode skrevet av annen programvare ingeniører
et Annet viktig aspekt for å bli en programvare ingeniør er å lære hvordan å lese andres kode. Du kan gjøre dette ved å bla gjennom GitHub kjeldene, og se gjennom dokumentasjonen.
noen Ganger, dokumentasjon kan være feil…men kildekoden lyver aldri. Ved å lære å lese denne koden, vil du være i stand til å forstå hva som skjer og hvordan programmet fungerer., (Dette ferdighet er også viktig når det kommer til debugging, fordi du vil være i stand til å identifisere hvilken del av koden som ikke bør være der.)
Dette er ofte en oversett ferdigheter, men det kan virkelig ha nytte av å se hvordan erfarne utviklere gjøre ting på. Ikke bare gjør en overfladisk skumme av koden, heller. Fordype deg i dyp, lære ins og outs, kartlegge funksjonalitet, og til slutt gjenopprette det hvis du kan. Denne måten, vil du være i stand til å foreta omvendt utvikling av et eksisterende program, kan hjelpe deg til å forstå at mye bedre hvordan å lage en egen.,
Trinn #6: Finn en støttende software engineering samfunnet
Finne et fellesskap for å lære med kan ringe eller bryte din suksess som software engineer—spesielt når du bare starte opp. Når du er omgitt av et fellesskap med likesinnede mennesker, du har en automatisk support system: en gruppe av personer du kan ringe på når du står fast, eller mister motivasjonen. (Begge av noe som kan skje den beste av oss!,)
I-person gruppene finnes, men kan være vanskelig å koordinere med og er ikke tilgjengelig i alle områder. Men alle kan bli med i et internett-fellesskap, og de er bare så nyttig.
Mens du lærer med Lanseringen Skolen, en skole for programvare ingeniører, for eksempel, får du tilgang til et fellesskap forum, som er der Lansere School-elever dele på å studere tips, lag kollokviegrupper, hjelpe hverandre med problemer, og alt annet du forventer fra en dedikert skolen., Du vil også få tilgang til sine Slakk chatterom, hvor studenter og ansatte hangout hele dagen. For ikke å nevne en månedlig meetup-stil webinar serie kalt «Tech-Forhandlingene.»
Null til Mestring er lik, også – med over 150 000 studenter, alumni, TAs, mentorer, og instruktører som er registrert til sine Splid server, de har nok av muligheter til å bygge nettverk og finne den støtten du trenger mens du studerer!,
Trinn 7: Bygge faktiske koding prosjekter
ikke bare lese tutorials og se videoer—sette dine ferdigheter i bruk. Løse problemer underveis, akkurat som hverdagen software utviklere gjøre. Når du gjør dette, vil du ikke bare fremme din læring, må du også vise potensielle arbeidsgivere at du kan hacke den. (Fordi end-målet er å få en jobb, høyre!?)
Du kan bygge prosjekter alene, eller med en gruppe.,
For eksempel, ved slutten av Mammut er Interaktiv Hei Koding: Alle Kan Lære å Kode (170 Timer), vil du ha nok av prosjekter å vise frem. Du vil bygge flere programmer gjennom hele kurset. Og de er ikke bare kjedelig «fylle ut feltene» prosjekter: de har en Flappy Fugl spill klone, 3D-ping-pong-spillet, vær-app for iOS, og en finans kalkulator-appen for web.,
Med Team Treehouse er Techdegree, vil du bygge 9-12 virkelige verden prosjekter som gir deg muligheten til å praktisere det du har lært, inkludert en basketball statistikk verktøyet, nummer gjetteleken, store inventory-appen, og mer. Disse prosjektene vil bli vurdert og gradert av fagfolk eller Treehouse elevene til å sørge for at du holde deg på sporet.
Og hvis JavaScript er vesken, Null til Mestring har 20 prosjekter som du kan bygge og legge til i porteføljen din., Disse prosjektene er en flott måte å øke dine ferdigheter, som tar deg fra en nybegynner til en trygg utvikler – og være i stand til å ha ferdige prosjekter for å legge til i porteføljen din er en ekstra bonus.
Trinn 8: Utvikle din profesjonelle tech nettverk
Som du lære å kode, bygge prosjekter, etc. du bør være sakte men sikkert å kultivere ditt profesjonelle nettverk., Fordi når det gjelder å finne en god jobb, det tar mer enn bare å søke etter jobber på nettet (som, i disse dager, kan bare være en sløsing med tid).
i Stedet ønsker du å bygge et sterkt nettverk. For det første, kan du stole på din eksisterende tilkoblinger. I henhold til Jobvite, 40% av nyansatte kommer ansatt via henvisning, noe som gjør den til den mest vanlige måten.
Utover å trykke inn den første-graders nettverk, kan du også få introer til den andre-graders-tilkoblinger (venner av venner)., Målet er å sette opp uformelle kaffe møter med mennesker som er koblet til bedrifter du ønsker å jobbe for, som bygger tilkoblinger og noen ganger fører til reelle intervjuer.,
noen andre måter å lage nye forbindelser uten å ha en felles venn:
- Gå til meetups
- Vedlikeholde en blogg (som vil gi deg eksponering)
- Frivillig
- Snakker på arrangementer
Bli involvert, og bidra til tech/software engineering samfunnet, og nesten uunngåelig, muligheter vil komme din vei.,
Den Raskeste Måten å Lande en Tech Jobb er et kurs som lærer deg nettverk strategier, inkludert hvorfor bør du delta på meetup grupper og de beste måtene å markedsføre deg selv som en techie.
et Annet godt alternativ? Bryte seg Inn i Høyteknologiske Land-den Perfekte Jobben med LinkedIn masterclass. Det går over hvordan å bygge en hær av tilhengere + sette dem til å arbeide for deg, kan du få en henvisning som får deg en garantert intervju og utnytte insider info til ess din intervju + forhandlinger.,
Trinn 9: Master dine pre-intervju essentials
Etter at du begynte å knytte kontakter med kolleger og beslutningstakere i feltet, det vil være tid for å bli klar til å søke på jobbene på seg selv. (Men hvis du gjør en solid tilkobling – du kan komme til å hoppe over dette trinnet helt!)
Men før du sender ut-programmer eller-for å spørre direkte henvisninger, vil du trenger for å mestre tre ting: fortsetter, dekke bokstaver, og din online tilstedeværelse.
Selv i en modernisering av verden, før den begynner igjen er nødvendig., Ansette ledere ser fortsatt på dem for å få et øyeblikksbilde av din kompetanse og erfaring. På samme måte dekke bokstaver er nødvendig når du søker etter jobber på nettet, de er din mulighet til å få noens oppmerksomhet og gjøre et godt inntrykk.
De er grunnleggende tvers av bransjer. Men utover cv og dekke bokstaver, det er også din online tilstedeværelse for å vurdere.
Dette er utrolig viktig for alle i tech industrien, og det er noe du bør være å bygge opp og vedlikeholde over tid., Ditt digitale fotavtrykk er viktig fordi det er hva rekrutterere og ansette ledere vil se når de Google navnet ditt før du inviterer deg inn til intervju.
Din online tilstedeværelse, som en programvareutvikler, som er laget opp på et par ting:
- LinkedIn-profil
- GitHub
- Personlige nettsted (eller en portefølje nettstedet)
- Blogging (som kan være et tillegg til din personlige nettside)
Arbeidsgivere vil sjekke disse og danne inntrykk av deg, basert på hva de ser. Så sørg for at disse inntrykkene er bra!,
Step #10: Ace-din programvare for ingeniør jobb intervju
til Slutt, det er intervjuet. De fleste virksomheter starter med en screening intervju, vanligvis gjøres online, hjemme. Etter det kommer et intervju over telefon. Hvis du gjør det gjennom de to, vil du lande på stedet intervju.
I tillegg til standard «største styrke/svakhet etc. osv.,»spørsmål, vil du trenger for å være klar for tekniske og atferdsmessige spørsmål. Du kan bli bedt om å bygge et prosjekt eller arbeid gjennom en kode utfordring, eller beskrive hvordan du har håndtert vanskelige situasjoner i det siste.
En nyttig ressurs for å konsultere er boken for å Knekke Koding Intervju. En annen er å Lære å Kode Med Meg er veldig egen dyptgående tekniske intervju guide.
Heldigvis, du trenger ikke å prep på egen hånd. For eksempel, Intervju Kaken har en hele kurset på acing tech intervju, inkludert 50+ timer med praksis spørsmål., Du vil lære triks for å raskt løse problemer du aldri har sett før (og få $30,000+ høyere lønn har).
Les min anmeldelse av Intervju Kake.
AlgoExpert er en online plattform som hjelper deg prep for koding intervjuer med 85+ håndplukket spørsmål (i 7 forskjellige språk) og 55+ timer med video forklaringer.
en Annen god intervju prep alternativet?, Byte for Byte, med praksis for koding intervju spørsmål, atferdsmessige intervju råd, og alt annet du trenger til ess din koding intervju.
Trinn #11: Aksepterer tilbud om jobb og offisielt blitt en programvare ingeniør!
Gratulerer—du har sprukket hvordan å bli en programvare ingeniør og har en spennende karriere foran deg!
Etter at du gjør det gjennom en serie intervjuer og demonstrere din nye ferdigheter, det er bare et spørsmål om tid før du får et tilbud. Og ja, det kan være entry-level i starten, men du må begynne et sted!, Pass på å sjekke ut våre 5 lønn forhandling tips for programvare ingeniører.
Som du fortsette å lære og vokse som en utvikler, vil du fortsette å klatre på karrierestigen til større og bedre posisjoner.
Er Det Vanskelig å Bli en Programvare Ingeniør?
Kort svar: ja. Det er ikke lett, og jeg kan alt, men garanterer at du vil bli frustrert noen ganger. Men det er absolutt gjennomførbart. Og du kan sikkert selv oppnå alt på egen hånd, gjennom selv-undervisning og nettverksbygging., Mange mennesker har blitt overført til utvikling av programvare på denne måten.
Tre gjester på Lære å Kode Med Meg Podcast har historier som viser dette veldig greie!
- Clément Mihailescu gikk fra nybegynner koder Google software engineer på bare 6 måneder.
- Christina Gorton var et opphold-at-home mor for fem år før hun ble interessert i tech. Hun klarte å nivå opp sine ferdigheter, og lande en jobb som en ekstern junior utvikler i bare ni måneder.,
- Josh Kemp gikk fra smed og farrier til junior utvikler i litt over 9 måneder (827 timer i studiet totalt).
saken er, for de fleste mennesker, læring på egen hånd gjør alt vanskeligere, enten det er å mestre ferdighetene eller søk etter jobber.
Det er grunnen til at det er fornuftig å få hjelp.
Starte på Skolen, for eksempel, gjør det mulig å raskt spore din karriere som software engineer., Hva virkelig skiller Lanseringen Skolens programmet er at det lærer deg å mestre viktige konsepter for utvikling av programvare som holder solid og konsekvent selv mens teknologien er i rask utvikling, så vil du bygge livslang vaner som vil hjelpe deg å lykkes.
til Slutt, deres mål er ikke bare å hjelpe deg med å finne en jobb, men for å hjelpe deg med å starte en karriere. Nyutdannede fra Lanseringen School har vært ansatt i industri-ledende selskaper som Intel, Peloton, HP og LinkedIn, samt raskt stigende nyetableringer.
Og tallene lyver ikke., For de siste 3 år, 100% av programmets nyutdannede har akseptert jobbtilbud innen 180 dager etter eksamen. I 2018, kronen på Verket nyutdannede skulle oppnå et gjennomsnitt på $122,316 innen 12 uker.
Bortsett fra tallene, er en av de beste måtene å få en følelse for et program er å høre fra de som har gjort det før. Flertallet av tidligere Lanseringen skoleelever rapport gode erfaringer med programmet., Her er hva noen av dem har sagt:
- «Starte på Skolen gjorde ingenting for kort til å radikalt endre livet mitt og hoppe starte min karriere.»– Tannr
- «jeg kan ikke anbefale Lanseringen Skolen nok. Jeg ærlig talt ikke ville være i karrieren jeg er i dag, eller er så opptatt av det som jeg er i dag, uten alt det harde arbeidet og innsatsen de legger i å utforme programmet og kontinuerlig forbedre det.»– Steve
- «Starte på Skolen ga meg alle de viktigste verktøyene jeg trengte for å begynne å bygge meningsfulle og nyttige programmer., Hvis du er seriøs om å lære hvordan å programmere og kan sette i gang på over en lengre periode, er dette programmet for deg!»– Charlie
Hvis du har en drøm om å bli en programvare utvikler og ønsker den mest direkte ruten for å nå dette målet, er det definitivt verdt å sjekke ut Starte Skolen.
Start koding nå
Stopp venter og begynne å lære! Få mine 10 tips på å lære deg hvordan man skal kode.
Leter du etter noe litt mindre intensiv enn Lansere Skolens 8-16+ måneder læreplanen?,
– en I trinn 2, kan du valgte programmeringsspråk. Nå, sparke ting av ved å velge en kurs som lærer oss at språk.
- Pluralsight har kurs som dekker Python, Java, C# og mer.
- Team Treehouse har kurs i Java, Ruby on Rails, PHP, Python, og mer.
- Udacity har kurs i JavaScript, Java, Kotlin, Python, og mer.
Så, her har du det i deg — 11 trinn for å bli en programvare ingeniør. Alt du trenger å gjøre nå er å sette i verk!
Merk: det er affiliate lenker i dette innlegget.