Hoe om `n sagteware-ingenieur te word

Soos tegnologie ontwikkel en `n groter deel van die alledaagse lewe word, doen dit ook die behoefte aan tegnologie-professionele persone. Sagteware ingenieurs ontwerp en lei die ontwikkeling van programme wat rekenaars gebruik om die lewe `n bietjie makliker vir die res van ons te maak.

Stappe

Metode 1 van 2:
Rekenaarwetenskap as jou eerste loopbaan in
  1. Beeld getiteld word `n sagteware ingenieur stap 1
1. Verdien `n graad in Rekenaarwetenskap of `n verwante veld. Die meeste sagteware-ingenieursposisies vereis `n baccalaureusgraad. Hoofvuldig in Rekenaarwetenskap sal die nuttigste agtergrond vir die ontwerp en perfek van sagteware verskaf. Dikwels sal onderhoudvoerders vrae vra wat op datastrukture en algoritmes fokus, dus die teoretiese agtergrond wat deur tradisionele rekenaarwetenskapgrade voorsien word, berei u die beste voor. U sal egter waarskynlik aansienlike tyd moet spandeer buite die klaskamerskryfprogrammatuur om te leer hoe die teoretiese konsepte wat u geleer het, kan toepas in die praktyk van die skryf van regte sagteware.
  • Dit is moontlik om gehuur te word met `n geassosieerde graad of selfs met niks anders as selfonderrig nie. Om hierdie roete te volg, moet u `n sterk versameling voltooide en funksionele projekte hê wat u vaardighede op `n webwerf toon Github. U kan ook oopbronprojekte najaag om regstellings en nuwe funksies by te dra indien u nie `n konsep van u eie het nie. Open Source beteken dat die kode (bron) vir `n stuk sagteware publiek sigbaar is (oop). Dikwels kan dit toelaat dat iemand kode in `n projek inhandig, hangende goedkeuring van die projekonderhouers. Om `n oopbronprojek te vind met `n verwelkomingsgemeenskap van ontwikkelaars kan jou vaardighede aansienlik versnel nadat jy `n baseline-vaardighede gestig het.
Deskundige Wenk
Gene Linetsky, MS

Gene Linetsky, MS

Opstart stigter en ingenieurswese DirekteurGene Linetsky is `n opstart stigter en sagteware ingenieur in die San Francisco Bay Area. Hy het al meer as 30 jaar in die tegnologiebedryf gewerk en is tans die Direkteur van Ingenieurswese by Poynt, `n Tegnologie-maatskappybou-smart-punt-van-verkoop-terminale vir besighede.
Gene Linetsky, MS
Gene Linetsky, MS
Opstart Founder & Engineering Director

Om enige wetenskaplike dissipline te bestudeer, kan u help om beter te kodeer. Gene Linetsky, wat `n span van sagteware-ingenieurs bestuur, sê: "Sommige van die beste ingenieurs kom uit elektriese ingenieursprogramme, want dit leer hulle geestelike dissipline. Sagteware-ingenieurswese is `n kuns wat nie `n kunstenaar se ingesteldheid verdra nie - dit vereis regtig daardie dissipline."

  • Beeld getiteld Word `n Software Engineer Stap 2
    2. Begin programmering. Selfs as jy nog in graadskool is, kan jy jouself `n groot kop begin Onderrig van jouself Programmering.
  • Sagteware-ingenieurswese is nie uitsluitlik gefokus op kodering nie, maar jy sal ten minste `n paar tale moet ken, en `n dieper begrip van hoe hulle funksioneer. Daar is geen wydverspreide ooreenkoms oor watter tale die nuttigste is nie, maar dit is alle gewilde keuses:
  • Python
  • Robyn
  • jаvascript
  • C #
  • Java
  • C++
  • Wees bewus daarvan dat sommige tale beter is om probleme op te los as ander. Geen taal is beter as `n ander nie. Geen taal is objektief makliker as `n ander nie. Die meeste tale is geskryf met sekere soorte probleme in gedagte en is beter om hulle op te los terwyl hulle swakker is om ander op te los. Eksperimenteer en kry `n gevoel vir jou styl. Aanvanklik fokus slegs op die mees basiese programme wat in een taal loop. Sodra jy gemaklik met een gekry het, begin met `n tweede eksperimenteer. Daar is nie nodig om alle tale te leer nie. Vind jou nis en word awesome daaraan!
  • Vir die jeug, MIT (Massachusetts Institute of Technology) het die webwerf en programmeringsinstrument geskep, Skrapie. Hierdie instrument leer programmeringskonsepte deur visuele toue te gebruik eerder as intimiderende teks. Dit is ook nuttig vir volwassenes wat meer gemaklik sal voel op visuele elemente eerder as abstrakte konsepte en teks.
  • Beeld getiteld Word `n Software Engineer Stap 3
    3. Bestudeer data strukture en algoritmes. "Algoritme" beteken eenvoudig `n formule of proses vir die oplossing van `n probleem. Algemene voorbeelde is padbevinding om die kortste afstand tussen twee punte te vind, op soek na `n spesifieke item data in `n groot stel data te vind, en sorteer vir die reël van data in sommige volgorde. N "Data struktuur" is `n sekere manier om data te organiseer om dit makliker te maak om sekere probleme op te los. Algemene voorbeelde is skikkings wat eenvoudig items van data bevat een na die ander in sommige orde en hash tafels wat data deur sommige stoor "sleutel" in plaas van `n posisie in `n lys. Fokus op die ontwikkeling en instandhouding van u vaardighede om u bes te doen sodra u `n posisie as `n sagteware-ingenieur verkry het.
  • (Opsioneel) Bestudeer Wiskunde. Wiskunde sal deel wees van enige Rekenaarwetenskap hoofvak, en baie algoritmes en datastrukture kennis kom uit wiskunde. Terwyl dit nie absoluut noodsaaklik is nie, sal `n sterk agtergrond in wiskunde jou sterker kernvaardighede gee om nuwe algoritmes te ontleed en te ontwerp. As jy fokus op maatskappye wat die nuutste navorsing en ontwikkeling doen, sal wiskunde `n moet wees. As jy `n cushy korporatiewe werk wil hê, kan jy waarskynlik deur hoër vlak wiskunde afskeur.
  • Diskrete Wiskunde is `n besonder nuttige studieveld, soos enige wiskunde kursus wat sagteware behels.
  • Beeld getiteld Definieer `n probleem Stap 4
    4. Vul jou studies aan. Opvoedkundige stelsels is dikwels verouderd. Handboeke word hersien stadiger as sagteware is opgedateer. Opvoedkundige instellings bied teoretiese konsepte en denkwyses wat krities kan wees vir u sukses, en moet dus nie verdiskonteer word nie. Wat u sal kry, kan egter die teorie op werklike sagteware kan toepas. Dit is waar aanvulling van u studies inkom.
  • Blaai deur Stapel oorloop. Stackoverflow is `n vraag en antwoord webwerf vir ontwikkelaars. U kan per kode soek om die tegnologie, probleemruimte of taal wat u wil verbeter, te identifiseer. Om ander se antwoorde te sien, sal jou insig gee in hoe ingenieurs probleme oplos. Boekmerke Slim Solutions sal jou ook help om jou probleemoplossende toolkit te bou.
  • Gebruik oefenwebwerwe vir kodering. Sites soos kodewars en kodering bied duisende probleme vir u om u vaardighede teen te toets.
  • Vind `n werklike gemeenskap om te help om jou geïnspireer te hou, verbindings te ontwikkel, en gee jou leiding oor waar om jou leer te fokus. Webwerwe soos Ontmoet kan goeie plekke wees om sagteware-ingenieurs te vind en meer te leer oor die beroep. As u probleme ondervind met die vind van algemene ingenieurswese-ontmoetings, probeer om op spesifieke tale of tegnologie te fokus. Kyk ook na sosiale media-webwerwe.
  • Image getiteld Word `n Software Engineer Stap 4
    5. Bou sagteware. Die beste manier om jou vaardighede te verbeter, is om dit te gebruik. Of professionele projekte of persoonlike, ontwerp- en koderingsagteware jou baie sal leer. Vir baie werkgewers maak praktiese prestasies meer as GPA of teoretiese kennis.
  • Tensy jy beplan om die sagteware wat jy bou, te monetiseer, sit dit aanlyn! Laat potensiële werkgewers toe om die projekte wat jy geskep het, te sien en die kode wat hulle mag gee, kan hulle jou vaardighede assesseer. Dit is ook `n goeie manier om terugvoer te kry om jou vaardighede te verbeter.
  • Beeld getiteld Word `n Software Engineer Stap 5
    6. Soek `n internskap. Baie sagteware-ingenieurstudente werk as interns terwyl hulle hul studies voltooi. Dit kan `n uitstekende manier wees om praktiese opleiding en netwerk met potensiële werkgewers te kry. Soek vir internskapsgeleenthede deur middel van werkposisie webwerwe en netwerk.
  • Beeld getiteld Word `n Software Engineer Stap 6
    7. Vind werksgeleenthede. Sagteware-ingenieurswese is `n vinnig groeiende veld. U het `n goeie kans op onmiddellike indiensneming, hoewel u as `n programmeerder kan begin en u op pad is na die ontwikkeling van sagteware. Begin soek voordat u graad op is:
  • Kolleges help dikwels dat hul alumni `n posisie kry. Praat met u professore, departementspersoneel en die Career Services-kantoor oor die vind van werksgeleenthede.
  • `N Groot persentasie werksgeleenthede gebeur deur netwerk. Gebruik jou persoonlike kontakte en ontmoet mense in die veld deur loopbaanvergaderings en konferensies.
  • Kontroleer gereeld werk soek webwerwe. Skep `n profiel en plaas jou CV op professionele webwerwe en gebruik dit vir netwerkwerk sowel as werksaansoeke.
  • Beeld getiteld Word `n Software Engineer Stap 7
    8. Oorweeg jou loopbaandoelwitte. Die sagtewarebedryf verander altyd. Hou op deur jou kennis en praktiese vaardighede te verbeter, en jy sal baie kanse hê om die rigting van jou loopbaan te vorm. Hier is `n paar maniere om jou werkvooruitsigte te verbeter:
  • Sluit aan by `n professionele organisasie vir netwerkgeleenthede.
  • Oorweeg `n magistergraad as u langtermynplanne in die veld het. Terwyl dit nie `n vereiste vir die meeste posisies is nie, verbeter `n meester jou kanse grootliks om vir `n bedryfsleier te werk, in `n bestuursposisie of in ingebedde sagteware. `N Magistergraad kan u ook `n aansienlike betaalbultjie in u loopbaan gee.
  • Sertifisering kan in sommige subvelde en streke nuttig wees, maar mag afneem Jou wenslikheid in ander. Praat met ander ingenieurs in u kundigheidsgebied voordat u in een van hierdie programme inskryf. Dikwels, tradisionele korporatiewe omgewings bevoordeel sertifikate, maar begin-ups en hoogs progressiewe maatskappye kan hulle as `n vermorsing van tyd vind. Daar is egter altyd uitsonderings. Sommige lande bekyk ook sertifikate anders, dus probeer om met sagteware-ingenieurs te koppel en te verstaan ​​hoe die bedryf in u area bedryf word.
  • Metode 2 van 2:
    Skakel na `n sagteware-ingenieursloopbaan
    1. Beeld getiteld Word `n Software Engineer Stap 8
    1. Ken jou werkvooruitsigte. Die sagteware-ontwikkelingsveld het uitstekende werksgroei. Sagteware-ingenieurswese is `n besonder wenslike fokus in vergelyking met basiese programmering. Mediaan sagteware ontwikkelaar inkomste is ongeveer $ 80,000 - $ 100,000 per jaar in die Verenigde State.
  • Beeld getiteld Word `n Software Engineer Stap 9
    2. Leerprogrammering. Praktiese sagteware ontwerp en kodering behoort jou eerste prioriteite te wees. Daar is `n verskeidenheid maniere om hierdie ervaring te verdien:
  • Leer jouself programmering deur middel van aanlyn tutoriale of vriende wat bereid is om jou te leer.
  • Neem `n massiewe oop aanlyn kursus (MOOC).
  • As jy reeds `n bietjie ervaring het, werk saam met ander programmeerders op Github.
  • `N Kodering bootcamp is een van die vinnigste maniere om te leer, as jy bereid is om geld en vrye tyd te belê. Maak seker dat u u navorsing doen, aangesien sommige bootcamps swak reputasies in die bedryf het en nie die geld werd mag wees nie.
  • Beeld getiteld Word `n Software Engineer Stap 10
    3. Teken op jou ervaring. Sagteware kan `n gespesialiseerde vak wees, maar u vorige loopbaan hoef nie rekenaars te betrek om u `n voorsprong te gee nie. Sagteware-ingenieurswese kan sterk op analitiese vaardighede, probleemoplossing en spanwerk staatmaak. Daarbenewens kan bekendheid met `n bedryf u help om sagteware vir die bedryf te ontwerp.
  • Selfs stokperdjies en sybelange kan netwerkgeleenthede oopmaak, of ten minste passie by jou werk toevoeg. Game Apps, Digital Music Suites, of Sake-sagteware is almal voorbeelde
  • Indien moontlik, outomatiseer gedeeltes van u werk. Bou gereedskap om take te bespoedig en dinge makliker te maak. Sagteware-ingenieurswese by sy kern is probleemoplossing. Skryfprogrammatuur is net `n sagteware-ingenieur se gekose metode om probleme op te los. Daar is alreeds probleme rondom jou! Daar is geen rede waarom jy nie nou kan begin nie.
  • Beeld getiteld Word `n Software Engineer Stap 11
    4. Teken in in `n graadprogram (opsioneel). Dit is baie moontlik om `n programmeringswerk na `n jaar of twee van syvaring te land, of selfs `n paar maande met genoeg toewyding. As u reeds `n baccalaureus in enige vak het, saam met `n paar koderingsvaardighede, oorweeg dit reguit vir `n meester in sagteware-ingenieurswese.
  • Wees bewus daarvan dat dit `n ongelooflike duur opsie is. As jy egter probleme ondervind om self gemotiveerd te wees en by `n gemeenskap aan te sluit of `n stokperdjie te probeer stok, kan dit die mees effektiewe opsie wees.
  • Beeld getiteld Word `n Software Engineer Stap 12
    5. Netwerk jou pad na `n werk. Byna elke bedryf benodig sagteware-ontwikkelaars, dus kan jou netwerk van `n vorige loopbaan van onskatbare waarde wees. Oorweeg ook om by `n professionele vereniging aan te sluit, soos die IAAG-samelewing van sagteware-ingenieurswese, die tegniese raad van die IEEE Computer Society op Software Engineering, of die Vereniging vir Rekenaarmasjinerie. Kyk ook na plaaslike ontmoetings of aanlyngemeenskappe. Die sagteware wêreld kan verbasend klein wees, en die vind van die regte verband kan `n magdom geleenthede oopmaak.
  • Loopbaanpad vloeidiagram

    Loopbaanpad vloeidiagram vir sagteware-ingenieurs

    Ondersteun Wikihow en Ontgrendel alle monsters.

    Wenke

    Werkstitels in hierdie bedryf is nie gestandaardiseer nie. "Sagteware ontwikkelaar" is `n breë sambreel term. Terwyl "sagteware-ingenieurswese" is veronderstel om meer ontwerp en gespesialiseerde kennis te betrek, sommige maatskappye gebruik hierdie titel om `n laer vlakprogrammeringswerk op te ruim.
  • As jy vir `n spesifieke maatskappy wil werk, moet jy hul webwerf se loopbaanblad direk nagaan.
  • Gaan ou skool! Oefen skryfkode op papier voordat jy in die rekenaar spring!
  • Werkonderhoude sal dikwels op `n witbord plaasvind, dus vind `n paar vriende en kry `n gemaklike skryfkode op `n witbord. Sommige maatskappye kan omgee dat u kode presies soos geskryf sal loop, maar baie sal nie.
  • Deel op sosiale netwerke:
    Soortgelyk