3 spôsoby, ako sa stať softvérovým inžinierom

S vývojom technológií a ich väčšou súčasťou každodenného života rastie aj potreba odborníkov na technológie. Softvéroví inžinieri navrhujú a riadia vývoj programov, ktoré počítače používajú na uľahčenie života nás ostatných.

Metóda 1 z 2:Vstup do informatiky ako prvá kariéra


Získajte titul z informatiky alebo príbuzného odboru. Väčšina pozícií softvérových inžinierov vyžaduje bakalársky titul.[1]
Dôveryhodný zdroj
Americký úrad pre štatistiku práce
U.S. vládna agentúra, ktorá zhromažďuje a oznamuje informácie týkajúce sa práce
Prejsť na zdroj
Štúdium informatiky poskytne najužitočnejšie zázemie pre navrhovanie a zdokonaľovanie softvéru. Najčastejšie vám budú personalisti na pohovore klásť otázky zamerané na dátové štruktúry a algoritmy, takže teoretické zázemie, ktoré poskytuje tradičný diplom z informatiky, vás na to najlepšie pripraví. Pravdepodobne však budete musieť stráviť značný čas mimo učebne písaním softvéru, aby ste sa naučili, ako sa teoretické koncepty, ktoré sa učíte, môžu uplatniť v praxi pri písaní skutočného softvéru.

  • Je možné zamestnať sa aj s titulom docenta alebo dokonca len so skúsenosťami samouka. Ak sa vydáte touto cestou, mali by ste mať na webovej stránke, ako je Github, silnú zbierku dokončených a funkčných projektov, ktoré preukazujú vaše zručnosti. V prípade, že nemáte vlastný koncept, môžete sa venovať aj projektom s otvoreným zdrojovým kódom, do ktorých môžete prispievať opravami a novými funkciami. Open source znamená, že kód (zdrojový kód) softvéru je verejne prístupný (otvorený). Často to umožňuje komukoľvek predložiť kód do projektu, kým ho neschvália správcovia projektu. Nájdenie open source projektu s priateľskou komunitou vývojárov môže výrazne urýchliť vaše zručnosti po tom, ako si vytvoríte základný súbor zručností.

ODBORNÁ RADA

Gene Linetsky, MS

Zakladateľ startupu & Inžiniersky riaditeľ Gene Linetsky je zakladateľ startupu a softvérový inžinier v oblasti Sanfranciského zálivu. V technologickom priemysle pracuje viac ako 30 rokov a v súčasnosti je riaditeľom inžinierstva v technologickej spoločnosti Poynt, ktorá vytvára inteligentné terminály pre predajné miesta v podnikoch. Gene Linetsky, MS
Zakladateľ startupu & Inžiniersky riaditeľ

Štúdium akejkoľvek vednej disciplíny vám môže pomôcť lepšie programovať. Gene Linetsky, ktorý riadi tím softvérových inžinierov, hovorí: „Niektorí z najlepších inžinierov vychádzajú z elektrotechnických programov, pretože ich to naučí mentálnej disciplíne. Softvérové inžinierstvo je umenie, ktoré neznáša umelecké myslenie – naozaj si vyžaduje túto disciplínu.“


Začnite programovať. Aj keď ste ešte len na základnej škole, môžete si dať veľký náskok tým, že sa naučíte programovať.

  • Softvérové inžinierstvo nie je zamerané výlučne na kódovanie, ale budete potrebovať poznať aspoň niekoľko jazykov a hlbšie porozumieť ich fungovaniu. Neexistuje všeobecná zhoda o tom, ktoré jazyky sú najužitočnejšie, ale toto všetko sú populárne voľby:
    • Python
    • Ruby
    • JavaScript
    • C#
    • Java
    • C++
  • Uvedomte si, že niektoré jazyky sú pri riešení niektorých problémov lepšie ako iné. Žiadny jazyk nie je lepší ako iný. Žiadny jazyk nie je objektívne jednoduchší ako iný. Väčšina jazykov bola napísaná s ohľadom na určité typy problémov a sú lepšie pri ich riešení, zatiaľ čo pri riešení iných sú slabšie. Experimentujte a získajte cit pre svoj štýl. Spočiatku sa zamerajte len na spustenie najzákladnejších programov v jednom jazyku. Keď si osvojíte jeden, začnite experimentovať s druhým. Nie je potrebné učiť sa všetky jazyky. Nájdite si svoju špecializáciu a staňte sa v nej úžasným!
  • Pre mladých vytvoril MIT (Massachusetts Institute of Technology) webovú stránku a programovací nástroj Scratch. Tento nástroj učí koncepty programovania pomocou vizuálnych radov namiesto zastrašujúceho textu. Je užitočná aj pre dospelých, ktorí sa budú cítiť pohodlnejšie, ak sa zamerajú na vizuálne prvky než na abstraktné pojmy a text.


Štúdium dátových štruktúr a algoritmov. „Algoritmus“ jednoducho znamená vzorec alebo postup riešenia problému.[2]
Bežným príkladom je hľadanie cesty na nájdenie najkratšej vzdialenosti medzi dvoma bodmi[3]
, vyhľadávanie na nájdenie konkrétnej položky údajov vo veľkom súbore údajov a triedenie na usporiadanie údajov v určitom poradí.[4]
[5]
„Dátová štruktúra“ je určitý spôsob organizácie údajov, ktorý uľahčuje riešenie určitých problémov.[6]
Bežnými príkladmi sú polia, ktoré jednoducho obsahujú položky údajov jednu za druhou v určitom poradí, a hašovacie tabuľky, ktoré ukladajú údaje podľa určitého „kľúča“ namiesto pozície v zozname.[7]
[8]
Zamerajte sa na rozvoj a udržiavanie svojich zručností, aby ste po získaní pozície softvérového inžiniera dosiahli čo najlepšie výsledky.[9]

  • (Nepovinné) Študujte matematiku. Matematika bude súčasťou každého odboru informatiky a mnohé znalosti o algoritmoch a dátových štruktúrach vychádzajú z matematiky. Hoci to nie je absolútne nevyhnutné, silné zázemie v matematike vám poskytne silnejšie základné zručnosti pre analýzu a navrhovanie nových algoritmov. Ak sa zameriavate na spoločnosti, ktoré sa zaoberajú špičkovým výskumom a vývojom, matematika bude nevyhnutnosťou. Ak chcete pohodlnú prácu vo firme, môžete pravdepodobne prelúskať matematiku vyššej úrovne.
  • Diskrétna matematika je obzvlášť užitočná oblasť štúdia, rovnako ako každý matematický kurz, ktorý zahŕňa softvér.


Doplňte si štúdium. Vzdelávacie systémy sú často zastarané. Učebnice sa revidujú pomalšie ako sa aktualizuje softvér. Vzdelávacie inštitúcie poskytujú teoretické koncepty a spôsoby myslenia, ktoré môžu byť rozhodujúce pre váš úspech, a preto by sa nemali podceňovať. To, za čo vám však zaplatia, je schopnosť aplikovať teóriu na reálny softvér. Tu prichádza na rad doplnenie vášho štúdia.

  • Prezrite si StackOverflow. StackOverflow je webová stránka s otázkami a odpoveďami pre vývojárov. Môžete vyhľadávať podľa značiek a určiť technológiu, problémovú oblasť alebo jazyk, v ktorých sa chcete zdokonaliť. Keď uvidíte odpovede iných, získate prehľad o tom, ako inžinieri riešia problémy. Zakladanie chytrých riešení vám tiež pomôže vytvoriť si súbor nástrojov na riešenie problémov.
  • Používajte stránky na precvičovanie kódovania. Stránky ako CodeWars a CodinGame ponúkajú tisíce problémov, na ktorých si môžete otestovať svoje schopnosti.
  • Nájdite si reálnu komunitu, ktorá vám pomôže udržiavať inšpiráciu, rozvíjať kontakty a poradí vám, na čo sa máte pri učení zamerať. Stránky ako Meetup môžu byť skvelým miestom na hľadanie softvérových inžinierov a získavanie ďalších informácií o tejto profesii. Ak máte problém nájsť všeobecné stretnutia inžinierov, skúste sa zamerať na konkrétne jazyky alebo technológie. Pozrite si aj stránky sociálnych médií.


Vytvorte softvér. Najlepší spôsob, ako zlepšiť svoje zručnosti, je používať ich. Či už ide o profesionálne projekty alebo osobné, navrhovanie a kódovanie softvéru vás naučí veľa. Pre mnohých zamestnávateľov sú praktické úspechy dôležitejšie ako GPA alebo teoretické znalosti.[10]

  • Pokiaľ neplánujete softvér, ktorý vytvoríte, speňažiť, umiestnite ho na internet! Umožniť potenciálnym zamestnávateľom vidieť projekty, ktoré ste vytvorili, a kód, ktorý ich poháňa, im umožní posúdiť vaše zručnosti. Je to tiež skvelý spôsob, ako získať spätnú väzbu, ktorá vám pomôže zlepšiť vaše zručnosti.


Vyhľadajte si stáž. Mnohí študenti softvérového inžinierstva pracujú počas štúdia ako stážisti.[11]
Dôveryhodný zdroj
Americký úrad pre štatistiku práce
U.S. vládna agentúra, ktorá zhromažďuje a oznamuje informácie týkajúce sa práce
Prejsť na zdroj
Môže to byť vynikajúci spôsob, ako získať praktické skúsenosti a nadviazať kontakty s potenciálnymi zamestnávateľmi. Hľadajte príležitosti na stáž prostredníctvom webových stránok s ponukami práce a vytváraním sietí.


Nájdite si pracovné príležitosti. Softvérové inžinierstvo je rýchlo sa rozvíjajúca oblasť. Máte dobrú šancu na okamžité zamestnanie, hoci môžete začať ako programátor a vypracovať sa na vývojára softvéru.[12]
Dôveryhodný zdroj
Americký úrad pre štatistiku práce
U.S. vládna agentúra, ktorá zhromažďuje a podáva informácie týkajúce sa práce
Prejsť na zdroj
Začnite hľadať ešte pred ukončením štúdia:

  • Vysoké školy často pomáhajú svojim absolventom získať pracovné miesto. Porozprávajte sa so svojimi profesormi, zamestnancami katedry a kanceláriou služieb kariéry o hľadaní pracovných príležitostí.
  • Veľké percento pracovných miest vzniká prostredníctvom vytvárania sietí.[13]
    Využívajte svoje osobné kontakty a stretávajte sa s ľuďmi z tejto oblasti prostredníctvom kariérnych stretnutí a konferencií.
  • Pravidelne kontrolujte webové stránky na vyhľadávanie pracovných miest. Vytvorte si profil a zverejnite svoj životopis na odborných stránkach a využívajte ich na nadväzovanie kontaktov aj na žiadosti o zamestnanie.


Zvážte svoje kariérne ciele. Softvérový priemysel sa neustále mení. Pokračujte v zdokonaľovaní svojich vedomostí a praktických zručností a budete mať veľa príležitostí formovať smerovanie svojej kariéry. Tu je niekoľko spôsobov, ako zlepšiť svoje vyhliadky na zamestnanie:

  • Pridajte sa k profesijnej organizácii, aby ste získali príležitosti na nadväzovanie kontaktov.
  • Zvážte magisterský titul, ak máte v tejto oblasti dlhodobé plány. Hoci magisterský titul nie je podmienkou pre väčšinu pozícií, výrazne zvyšuje vaše šance pracovať pre lídra v odvetví, na manažérskej pozícii alebo v oblasti vstavaného softvéru.[14]
    Magisterský titul vám môže priniesť aj výrazné zvýšenie platu na začiatku kariéry.
  • Certifikácia môže byť užitočná v niektorých podoblastiach a regiónoch, ale môže zníženie svoju žiadanosť u ostatných.[15]
    Predtým, ako sa zapíšete na niektorý z týchto programov, porozprávajte sa s inými inžiniermi vo svojej oblasti. Tradičné firemné prostredie často uprednostňuje certifikáty, ale začínajúce a veľmi progresívne spoločnosti ich môžu považovať za stratu času. Vždy však existujú výnimky. Niektoré krajiny sa na certifikáty pozerajú aj inak, preto sa snažte nadviazať kontakty so softvérovými inžiniermi a pochopiť, ako funguje odvetvie vo vašej oblasti.

Metóda 2 z 2:Prechod na kariéru softvérového inžiniera


Poznajte svoje vyhliadky na zamestnanie. Oblasť vývoja softvéru má vynikajúci rast pracovných miest. Softvérové inžinierstvo je v porovnaní so základným programovaním mimoriadne žiaducim zameraním. Medián príjmov softvérových vývojárov je v Spojených štátoch približne 80 000 – 100 000 USD ročne.[16]
Dôveryhodný zdroj
Americký úrad pre štatistiku práce
U.S. vládna agentúra, ktorá zhromažďuje a podáva informácie týkajúce sa práce
Prejsť na zdroj
[17]


Naučte sa programovať. Praktický návrh softvéru a kódovanie by mali byť vašimi prioritami. Túto skúsenosť môžete získať rôznymi spôsobmi: [18]
Odborný zdroj
Stephen Cognetta, MBA
Tréner pre technické pohovory
Rozhovor s odborníkom. 21 júl 2020.

  • Naučte sa programovať sami prostredníctvom online tutoriálov alebo priateľov ochotných vás učiť.
  • Absolvujte masívny otvorený online kurz (MOOC).
  • Ak už máte nejaké skúsenosti, spolupracujte s inými programátormi na GitHube.
  • Kódovací výcvikový tábor je jedným z najrýchlejších spôsobov, ako sa naučiť, ak ste ochotní investovať peniaze a voľný čas. Len si nezabudnite urobiť prieskum, pretože niektoré bootcampy majú v priemysle zlú povesť a nemusia stáť za tie peniaze.[19]
    Zdroj experta
    Stephen Cognetta, MBA
    Tréner pre technické pohovory
    Rozhovor s odborníkom. 21 júl 2020.


Využite svoje skúsenosti. Softvér je síce špecializovaný odbor, ale vaša predchádzajúca kariéra sa nemusí týkať počítačov, aby ste získali výhodu. Softvérové inžinierstvo sa môže vo veľkej miere spoliehať na analytické zručnosti, riešenie problémov a tímovú prácu. Okrem toho vám znalosť odvetvia môže pomôcť pri navrhovaní softvéru pre toto odvetvie.

  • Dokonca aj koníčky a vedľajšie záujmy môžu otvoriť možnosti nadväzovania kontaktov alebo aspoň pridať vášeň k vašej práci. Príkladom sú herné aplikácie, digitálne hudobné balíky alebo obchodný softvér
  • Ak je to možné, zautomatizujte niektoré časti svojej práce. Vytvorenie nástrojov na urýchlenie úloh a uľahčenie práce. Jadrom softvérového inžinierstva je riešenie problémov. Písanie softvéru je len zvolenou metódou softvérového inžiniera na riešenie problémov. Problémy sú už všade okolo vás! Nie je dôvod, prečo by ste nemohli začať hneď teraz.


Zapíšte sa do študijného programu (nepovinné). Je veľmi možné získať prácu programátora po roku alebo dvoch vedľajších skúsenostiach, alebo dokonca po niekoľkých mesiacoch s dostatočným nasadením. Ak už máte bakalársky titul v akomkoľvek odbore a nejaké zručnosti v oblasti kódovania, zvážte možnosť získať priamo magisterský titul v oblasti softvérového inžinierstva.

  • Uvedomte si, že ide o neuveriteľne drahú možnosť. Ak však máte problémy so sebamotiváciou a pripojenie sa ku komunite alebo vyskúšanie nejakého koníčka vás neosloví, toto by mohla byť najefektívnejšia možnosť.


Prepojte sa do siete a získajte prácu. Takmer každé odvetvie potrebuje softvérových vývojárov, takže vaša sieť z predchádzajúcej kariéry môže byť neoceniteľná. Zvážte tiež možnosť vstupu do profesijného združenia, ako je IAENG Society of Software Engineering, IEEE Computer Society Technical Council on Software Engineering alebo Association for Computing Machinery. Pozrite sa aj na miestne stretnutia alebo online komunity. Svet softvéru môže byť prekvapivo malý a nájdenie správneho spojenia môže otvoriť nespočetné množstvo príležitostí.

Schéma kariérnej cesty


Schéma kariérneho postupu pre softvérových inžinierov

Referencie