Pentru cine este programator? Sfat de remarcat

În articol îmi descriu părerea despre prioritățile atunci când aleg un angajator pentru programatori. Am indicat ca factor principal mărimea salariului, justificând acest lucru prin faptul că aceasta lasă mai mult timp pentru viață. În continuare, vă expun motivele pentru care nu ar trebui să vă lăsați duși de reciclare. Continui articolul cu o privire asupra dezvoltării proiectelor de casă, care, după părerea mea, ajută să țin pasul cu tendințele profesiei și, în plus, aduce plăcere. Am venit la aceste gânduri după ce am lucrat ca programator cu normă întreagă timp de 8 ani.


Încurajez oamenii cu experiență care știu să lucreze și să trăiască să comenteze opiniile mele și să-și exprime opiniile cu privire la problemele cu care s-au găsit diferențe. Pentru cei care și-au început recent călătoria de programare sau pur și simplu nu s-au gândit niciodată la astfel de lucruri, recomand să nu ia articolul ca pe un ghid serios. Am scris despre sentimentele mele cu privire la aceste probleme în speranța că cineva ar putea găsi câteva idei utile dacă se simte descurajat ca programator.

Priorități

Atunci când aleg un loc de muncă, îmi stabilesc următoarele priorități.

  1. Suma veniturilor în numerar primite. E simplu.
  2. Confortul spațiului de lucru. Iată cât de convenabil sau incomod poate fi ceea ce te înconjoară la locul de muncă: distanța față de casă, oamenii de la birou, performanța computerului de lucru, vremea în apropierea locului de muncă, o cameră de supraveghere pe monitor, monitorul cu fața la culoar, relația cu management, amenzi pentru întârziere și altele asemenea.
  3. Oportunitate de dezvoltare profesională. Aceasta include experiența pe care o dobândești la locul de muncă. Aceasta înseamnă să înveți tehnologii noi pentru tine, să perfecționezi ceea ce ai învățat anterior și să dobândești abilități noi care îți sunt utile. Orice te face mai experimentat din punct de vedere profesional.

Foarte puțin din această listă se poate afla în avans despre companie înainte de a aplica pentru un loc de muncă. Dar având în vedere ordinea priorităților, puteți compara cu ușurință jobul actual și altul potențial, cunoscând mărimea salariului. Uneori poți sacrifica o parte din a doua și a treia, de dragul unui salariu bun. Desigur, acest echilibru este diferit pentru fiecare.


Unii oameni sunt jenați să o spună cu voce tare, dar banii sunt primul și principalul factor în alegerea unui loc de muncă. Dacă ești plătit bine, nu va trebui să lucrezi ore suplimentare și ore suplimentare, ceea ce înseamnă că vei avea mai mult timp să te bucuri de viață. Punctul meu de vedere este acesta: dacă ești un programator cu mai mult de 3 ani de experiență și simți că ți-ar plăcea să fii plătit mai mult, începe să obții asta fără să amâni pentru mai târziu. Cel mai probabil, nu există niciun motiv să nu primești mai mult dacă este posibil.

Cum să-ți mărești salariul

Există o opinie conform căreia pur și simplu puteți cere acest lucru conducerii dvs. S-ar putea să funcționeze. Dar vă sugerez să aflați mai întâi cât sunt dispuși să vă plătească alți angajatori. Dacă nu aveți oferte de muncă gata făcute, atunci trebuie să începeți să căutați posturi vacante pe cont propriu. Luați în considerare opțiuni care sunt în concordanță cu experiența dvs. și cu salariul peste cel actual. Fiți pregătit să faceți sarcini de testare, interviuri Skype sau interviuri față în față. Privește-l ca pe un potențial profit, nu te închide cu ego-ul tău.


Luați în considerare nu numai angajatorii din orașul dvs., ci și munca la distanță. Există multe articole despre dezavantajele lucrului de la distanță, dar dacă nu ați încercat singur, atunci puteți lua în considerare astfel de opțiuni. Amintiți-vă că munca de la distanță nu înseamnă neapărat lucru de acasă. Cu salariul unui programator, poți închiria un birou sau te poți muta într-un spațiu de coworking.


Trebuie să te pregătești pentru interviuri. Puteți găsi o listă de întrebări care vi s-ar putea adresa online. Fă-ți timp să le studiezi, gândește-te la răspunsuri. Ordinea interviurilor este importantă. Începeți cu angajatorul ai cărui termeni și condiții vi se par mai puțin atractive, apoi continuați pentru a face noul loc de muncă potențial mai atractiv. Ideea acestei proceduri este că este mult mai ușor să eșuezi la primele interviuri. În timpul primelor interviuri, este posibil să vă faceți mai multe griji, să uitați mai mult și să acționați mai puțin încrezător. În plus, dacă primești întrebări pe care le-ai eșuat într-un interviu, poți să le studiezi și să le răspunzi în cele ulterioare. Astfel, îți vei crește șansele de a primi o ofertă de la compania cea mai atractivă pentru tine.


Dacă înainte de un interviu cu o firmă ți se pare că cu siguranță nu vei merge la muncă acolo, ia totuși în serios acest interviu, pentru că, în consecință, pot fi dezvăluite noi detalii care vor face acest angajator mai atractiv. Merită întotdeauna să ne amintim că alegeți un nou loc de muncă, în ciuda faptului că totul a început cu scopul de a vă crește salariul.


Dacă începi să simți că iei interviul viitor prea în serios și ești foarte îngrijorat din această cauză, atunci sfatul este opusul celui anterior: percepe-l pe angajator nu ca pe un potențial, ci ca pe un simplu mijloc de a crește salariul tău la locul de muncă actual, știind că dacă nu iese, atunci nu se va schimba nimic. Dar găsește echilibrul pentru a te simți ca un profesionist și nu un tip insistent cu un ego umflat.


Odată ce primiți o ofertă de muncă atractivă, nu vă părăsiți în tăcere angajatorul. Discutați situația cu persoana care ia decizia de a vă crește salariul. Acesta este un moment foarte interesant; prima dată s-ar putea să nu ai suficientă hotărâre. Dacă nu vă simțiți confortabil să discutați despre aceste tipuri de probleme, puteți încerca să începeți discuția prin e-mail. Dar, cel mai probabil, va trebui totuși să comunicați prin voce.


Dacă habar n-ai cum să-ți faci curajul să ceri o creștere de salariu, atunci îți propun următoarele. Începeți să vă concentrați asupra tuturor neajunsurilor actualului loc de muncă: cum nu vă place că cineva încălzește mereu peștele în timpul prânzului, că aerul condiționat funcționează chiar deasupra spatelui dvs., cum sunteți înfuriat de amenda pentru că sunteți un minut întârziat la muncă, cât de obosit de implementarea unor funcții de care nimeni nu are cu adevărat nevoie, cât de obosit de teancul actual de tehnologii folosite, cât de mult nu ați învățat ceva nou. Dar cel mai important, imaginați-vă că ați putea câștiga +X% bani, dar nu îi primiți din cauza angajatorului dvs. Îți place când angajatorul tău îți păstrează banii? Nu? Continuă și vorbește cu el despre asta. Doar nu mergi jignit la muncă, fă-ți treaba cumva, în speranța că managerul va observa și va oferi ceva. Acest lucru este neprofesionist.


Dacă managerul tău îți refuză o promovare și te lasă să pleci, atunci este timpul să pleci. Cât de des poți cere o mărire de salariu? Atâta timp cât primești oferte semnificativ mai bune decât situația ta actuală. Dar nu încerca să înșeli, ar trebui să ai o ofertă de muncă valabilă după ce ai trecut toate interviurile.

Muncă peste program

Un loc de muncă cu normă întreagă înseamnă că lucrezi 40 de ore pe săptămână. Dacă vi se cere să munciți mai mult decât atât, atunci amintiți-vă că munca ocupă deja aproximativ o treime din întreaga viață de zi cu zi. Dacă nu ai nimic altceva în viață în afară de muncă și somn, atunci poți pierde timpul cu munca. În caz contrar, gândește-te la prioritățile tale. Nu sunteți de acord să faceți ore suplimentare dacă nu plătiți suficient. Dar chiar și în acest caz, se poate dovedi că pur și simplu nu aveți timp să vă cheltuiți salariul. S-ar putea să credeți că acum veți economisi pentru un apartament, apoi pentru o mașină, apoi pentru o vacanță în familie și apoi viața va merge mai departe. Dar viața deja merge mai departe, iar tu îmbătrânești. Încercați, până la urmă, să începeți să câștigați mai mult pentru aceleași 40 de ore pe săptămână, și nu prin ore suplimentare. Petrece-ți timpul liber făcând lucruri care îți plac și învățând lucruri noi pentru a fi la curent cu tendințele din profesia ta.

Proiecte acasă

Există o părere comună care spune ceva de genul: „Deja programez toată ziua, nu mai am energia necesară să vin acasă și să dezvolt un proiect pentru animale de companie sau să mă angajez în sursa deschisă”. Înțeleg că nu toată lumea este un mare fan al programării de dragul procesului, iar pentru ei părerea de mai sus este adevărată. Dar pentru unii, voi presupune că motivul este că pur și simplu nu au încercat să programeze nimic interesant pentru ei înșiși. Poate că pur și simplu nu s-au gândit la ceva interesant care ar putea fi creat și poate nici măcar nu au încercat să se gândească la asta.



Poate părea că nu vei avea timp pentru asta. Dar dezvoltarea proiectelor de acasă are mult mai mult de-a face cu creativitate decât cu munca de zi cu zi ca programator. Și există o comică excelentă despre timpul pentru creativitate. Ideea este că atunci când programezi pentru distracție, te grăbești care te îngreunează să te oprești, chiar și să mănânci sau să dormi. Dar amintiți-vă că există și alte lucruri interesante în viață în afară de programare, căutați-vă echilibrul.

Profesia de programare este relativ nouă, așa că există puține drumuri bătute în ea. Specialiștii acestui profil își găsesc de obicei drumul către succes prin încercare și eroare.

În ce moduri își pot implementa experiența acumulată?

Carieră orizontală ca programator executiv

Cea mai bună alegere pentru un tocilar este (adică formarea țintită fără schimbarea statutului de muncă). Un programator care se îmbunătățește constant este un angajat valoros.

Este puțin probabil să fie jignit atunci când distribuie fondul de salarii. Va deveni un candidat demn pentru un loc într-o companie mai reputată, până la organizații internaționale.

Sfat de reținut:

Este nerealist să fii generalist în IT. Pentru a vă deplasa rapid pe orizontală, selectați direcție specifică(baze de date, C++, java etc.) și încercați să deveniți cel mai bun la asta.

Promovare ca expert

După ce ați atins un anumit nivel, veți înțelege că sunteți gata să vă împărtășiți experiența. În această etapă, înaintea ta se deschide o nouă perspectivă - autorealizarea în rolul de consultant.

Puteți consulta atât clienții offline (de exemplu, firme din oraș care creează un site web de vânzare pentru vânzarea produselor), cât și clienții din spațiul virtual. Munca bună de acest fel vă va face un nume, iar aceasta, la rândul său, va oferi venituri.

Visezi să devii un expert respectat? Nu vă concentrați doar pe programare. Învață ușor pentru a comunica cu oamenii, competent și la figurat Exprimă gânduri.

Munca de management

Dacă ai ajuns la nivelul unui expert, dar nu vrei să înregistrezi un antreprenor individual, încearcă să-ți construiești o carieră verticală într-o companie de renume.

Veți fi însărcinat cu planificarea și supravegherea activității altor specialiști.

În esență, tu vei fi șeful. De aceea, dezvolta-te in tine abilități de conducere, învață să motivezi oamenii.

Pornire proprie

O altă opțiune de carieră – poate cea mai dificilă – este să-ți dea viață propriului proiect (de exemplu, lansarea unui serviciu original plătit).

Startup-urile reușesc doar pentru acei programatori care au spirit antreprenorial sau găsi un partener de afaceri cu experiență.

Nu sari imediat într-un proiect mare care necesită o investiție uriașă de bani și timp. În primul rând, încercați-vă într-o afacere care vă va permite inițial să vă mențineți sursa anterioară de venit.

Poate că, după ce ai citit articolul, vei începe să cauți un post vacant. Profită de cele publicate în catalogul nostru.


Privind în jurul meu, cred că nu se întâmplă foarte des, mi se pare, ca oamenii să rămână programatori mulți, mulți ani. Cel mai adesea, trec treptat în manageri pe parcursul mai multor ani, la început continuând să scrie cod, dar apoi din ce în ce mai multe responsabilități manageriale ocupă tot timpul. Ei merg adesea la Product Management. Unele, mai rar, în marketing. Mulți intră în lumea startup-urilor și devin proprii lor oameni de afaceri - chiar dacă continuă să scrie cod, acest lucru funcționează deja pentru ei înșiși. Mișcarea inversă, de la alte profesii la programatori, nu se întâmplă aproape niciodată la mijlocul unei cariere, doar la început (de la matematicieni, fizicieni, ingineri, oricine altcineva, dacă există o înclinație pentru această chestiune).

Sunt programatori peste 50 de ani în spațiul previzibil, dar sunt destul de puțini. Cum să explic de ce? - Este pentru că oamenii merg mai ales în management și alte profesii? - sau mai degrabă pentru că profesia încă se extinde foarte rapid, iar acum 30 de ani mult mai puțini oameni au studiat pentru a deveni programatori și au intrat în profesie, așa că acum sunt puțini în masa generală? Probabil că ambele explicații sunt corecte, dar poate una dintre ele este mult mai importantă? Nu stiu.

Am 37 de ani și, în afară de câteva slujbe cu fracțiune de normă pentru adolescenți, programez pentru a-mi câștiga existența de puțin peste 20 de ani. De cele mai multe ori se întâmplă în companii în care nu sunt propriul meu șef. Până acum, am rezistat în mod conștient curentului subteran care atrage programatorii în management din două motive. Simt că mă bucur mai puțin și nu cred că voi fi foarte bun la asta. Până acum nu am regretat această decizie. Dar ce voi face în alți 20 de ani, presupunând că sunt în viață, relativ sănătos și încă muncesc? Multe încă se pot schimba; dar dacă nu încerc în mod specific să fluier, legea inerției vieții spune că chiar și la vârsta de 57 de ani voi apăsa tastele și voi introduce cuvinte cheie într-un editor de text la o companie. Vor exista oportunități și proiecte bune, interesante pentru mine, în vârstă de 57 de ani, în industrie, care va fi în 20 de ani? Acum, în industria noastră, repet, sunt programatori peste 50 de ani, dar sunt destul de mulți...

O discuție recentă despre HN („Ce se întâmplă cu dezvoltatorii mai vechi?”) mi-a stârnit gândurile despre acest lucru și, deși nu a oferit un răspuns concret, a sugerat multe posibilități. Comentariul de sus de acolo rezumă bine diferitele opțiuni de dezvoltare pe care le-am descris mai sus: deveniți manager, rămâneți programator și aprofundați-vă abilitățile, deveniți un om de afaceri startup, intrați într-o profesie complet diferită. Există o mulțime de oameni ca mine în comentariile de acolo care încă preferă, toate lucrurile fiind egale, să facă bani folosind cuvintele cheie din editor. Cei peste 50 de ani scriu mai des că, atâta timp cât își mențin cunoștințele tehnice și țin pasul cu vremurile, nu le este greu să își găsească un loc de muncă – deși acestea sunt în mare parte păreri americane, poate fi diferit în alte țări. Dar nu este clar câți au rămas cei care și-au dorit același lucru, dar le-a fost greu să-și schimbe locul de muncă la bătrânețe sau că le-a fost greu să accepte faptul că toți de vârsta lor îi depășise în ierarhie sau că pur și simplu s-au săturat. .

Desigur, doar eu pot decide singur dacă ar trebui să „încerc în mod special și să flutter” sau să continui cu cuvinte cheie și editori. Dar o să mă bucur să aflu părerea programatorilor, actuali și actuali, care s-au recalificat ca manageri de clădiri sau care se străduiesc pentru asta, pe această temă.

Ar trebui să vă începeți calea către o carieră ca programator răspunzând la întrebarea, aveți nevoie de programare? Această întrebare nu se aplică celor care studiază sau au studiat într-o specialitate apropiată de programare. Dacă ai fost mai bun la matematică la școală decât la științe umaniste, dacă îți place să petreci mult timp pe computer, dacă vrei să înveți ceva nou, atunci programarea este pentru tine.

Unde sa încep

Există mai multe opțiuni pentru dezvoltarea evenimentelor, în urma cărora o persoană devine programator. Primul este părinții-programatori care și-au învățat copiii totul. Acești copii nici nu au nevoie să meargă la universitate. A doua opțiune este profesia la modă de programator. După școală, a trebuit să alegem unde să mergem să studiem și am ales domeniul la modă al IT-ului, care părea că ne place. Și ultima opțiune este un hobby care s-a transformat în muncă.

Dacă nu ți s-a întâmplat nimic din cele de mai sus, atunci ai de ales dintre patru opțiuni:

  • Autoeducatie. Această opțiune poate fi utilizată fie independent, fie în combinație cu alte metode. Internetul este plin de aplicații care te ajută să înveți diverse limbaje și tehnologii de programare. Dar aceasta este calea cea mai dificilă pentru începători.
  • Universitate. Dacă termini școala și vrei să fii programator, mergi la universitate. Dacă nu pentru cunoaștere, atunci pentru crustă. Poate servi drept bonus atunci când aplici pentru un loc de muncă. Deși vei dobândi și unele cunoștințe. Dar nu uitați să vă educați. Alegerea unei universități ar trebui abordată foarte responsabil. Studiați cu atenție programele de formare și alegeți cele mai bune universități tehnice.
  • Mentor. Va fi foarte bine dacă găsești o persoană care acceptă să te ajute și să te îndrepte în direcția corectă. El vă va sugera cărți și resurse adecvate, vă va verifica codul și vă va oferi sfaturi utile. Apropo, am scris deja despre unde puteți găsi un mentor. Puteți căuta un mentor printre programatorii familiari, la petreceri și conferințe IT, pe forumuri online și așa mai departe.
  • Cursuri practice de specialitate. Încercați să căutați cursuri în orașul dvs. care să vă învețe un limbaj sau tehnologie de programare. Am fost plăcut surprins de numărul de astfel de cursuri la Kiev, inclusiv cele gratuite și cu angajare ulterioară.

Ce limbă, tehnologie și direcție să alegi

Când devii programator, după un an sau doi vei fi liber să alegi orice limbă îți place. Dar atunci când alege un prim limbaj de programare, un începător ar trebui să ia în considerare următoarele criterii:

  • Disponibilitatea posturilor vacante pe piata. Scopul final al acestei căi este de a găsi un loc de muncă ca programator. Și acest lucru va fi dificil de făcut dacă nimeni nu caută dezvoltatori în limbajul tău de programare pe piața muncii. Verificați site-urile de locuri de muncă, vedeți cine este cel mai căutat, scrieți o duzină de limbi. Și treceți la următorul criteriu.
  • Nivel de intrare scăzut. Dacă trebuie să petreceți mult timp învățând o limbă, vă poate descuraja deloc să programați. Citiți despre limbile pe care le-ați selectat mai sus. Revizuiți literatura pe care va trebui să o citiți pentru a învăța aceste limbi. Și alege-le pe cele descrise ca fiind ușoare sau care ți s-au părut ușor. Astfel de limbi pot fi PHP, Ruby, Python.
  • Fiorul procesului. Dacă nu vă place să scrieți cod în limba aleasă, nu vă veți bucura de procesul, munca sau viața. Ai nevoie de el? Faceți alegerile corecte.

De asemenea, va trebui să decideți asupra direcției de programare. Mobil, desktop, jocuri, web, programare de nivel scăzut și așa mai departe. Cele mai populare și relativ ușoare industrii sunt dezvoltarea pentru clienții web, mobil și desktop. O limbă poate fi potrivită pentru fiecare direcție și nu alta deloc. Adică, atunci când alegeți un limbaj de programare, merită să plecați și de la acest factor.

Oricum, învață tehnologii web. Acesta este limbajul de marcare HTML, stilurile CSS și , care vă vor face pagina dinamică. Următorul pas este să înveți un limbaj pe partea de server (Python, PHP, Ruby și altele) și cadre web potrivite pentru acesta. Studiați bazele de date: aproape fiecare post vacant de programator menționează acest lucru.

Cum să obțineți experiența inițială

Fără experiență nu vei obține un loc de muncă. Fără muncă nu vei obține experiență. Un cerc vicios al vieții reale. Dar e în regulă, vom ieși din asta.

În primul rând, nu așteptați până când citiți fiecare carte din limbajul de programare ales. Începeți să scrieți primele rânduri de cod după al doilea capitol al cărții. Completați toate sarcinile din cărți, reintroduceți exemplele, înțelegeți-le. Complicați exemplele și sarcinile din cărți cu propriile idei. Creați-vă propriile sarcini pentru materialul pe care l-ați acoperit. Rezolvați aceste probleme.

În al doilea rând, trebuie să găsești primele proiecte. Aceasta este probabil cea mai dificilă opțiune, dar funcționează. Va trebui să căutați singur comenzile, să le îndepliniți și să vă deranjați cu plata. Pentru un începător, acest lucru este extrem de dificil, dar apoi toate celelalte opțiuni vor părea o bucată de tort. Proiectele finalizate pot fi înregistrate ca experiență și prezentate viitorului dvs. angajator. Proiectele reale sunt un mare plus pe CV-ul tău.

Dacă știți engleza, este mai bine să vă înregistrați la schimburile în limba engleză. Piața este mai mare acolo. Dacă nu știi engleza, învață-o. Între timp, sunt disponibile schimburi de liber profesioniști în limba rusă. Căutați proiecte mici care sunt la nivelul sau chiar peste nivelul dvs. de calificare. Aplicați pentru câteva zeci dintre aceste locuri de muncă. Și pregătiți-vă să primiți o mare de refuzuri. Dar dacă una sau două aplicații apar, vei avea șansa de a câștiga experiență reală.

O altă opțiune bună pentru a obține experiență reală este open source. Astfel de proiecte au întotdeauna nevoie de oameni noi, chiar și de începători. Puteți căuta erori în proiect sau puteți căuta în instrumentul de urmărire a erorilor și puteți sugera metode de rezolvare a acestora. Puteți găsi cu ușurință astfel de proiecte pe GitHub sau . Simțiți-vă liber să puneți întrebări acolo.

A patra opțiune pentru a câștiga experiență este să ajuți colegii programatori. Cereți-le să vă predea sarcini mici și simple. Dacă ceva nu merge, vei avea întotdeauna la cine să apelezi. Și, în același timp, vei participa la un proiect real.

Ultimul mod este propriile proiecte, diverse hackathon-uri sau lucrul într-un spațiu de coworking. Este dificil să-ți începi propriile proiecte pe cont propriu; este mai bine să cauți cunoștințe sau prieteni.

De ce să alegeți Python

Să mai vorbim puțin despre alegerea primului limbaj de programare. Prima limbă ar trebui să fie simplă și populară pe piață. Un astfel de limbaj este Piton. Vă recomand cu căldură să îl alegeți ca prim limbaj de programare.

Codul programului Python este lizibil. Nici măcar nu trebuie să fii programator pentru a obține o înțelegere de bază a ceea ce se întâmplă într-un program. Datorită sintaxei necomplicate a lui Python, îți va lua mai puțin timp pentru a scrie un program decât, de exemplu, în Java. O bază de date uriașă de biblioteci care vă va economisi mult efort, nervi și timp. Python este un limbaj de nivel înalt. Aceasta înseamnă că nu trebuie să vă gândiți prea mult la celulele de memorie și la ce să puneți acolo. Python este un limbaj de uz general. Și este atât de simplu încât chiar și copiii îl pot învăța.

Pentru dreptate, merită menționat alte limbaje de programare. Java ar putea fi o alegere bună pentru un începător. Acest limbaj este mai popular decât Python, dar și puțin mai complex. Dar instrumentele de dezvoltare sunt mult mai bine dezvoltate. Trebuie doar să compari Eclipse și IDLE. După Java, vă va fi mai ușor să treceți la lucrul cu limbaje de programare de nivel scăzut.

PHP- o altă limbă foarte populară. Și cred că este chiar mai simplu decât Python. Este foarte ușor să găsești un mentor sau o soluție la o problemă pe forum. Acest lucru se datorează faptului că există un număr mare de programatori PHP de diferite niveluri în lume. Nu există un import normal în PHP; există multe opțiuni pentru a rezolva aceeași problemă. Și asta complică învățarea. Și PHP este conceput exclusiv pentru web.

Limbi CȘi C# foarte greu pentru un incepator. Rubin- o alegere bună ca a doua limbă, dar nu prima. JavaScript- un limbaj foarte simplu, dar care nu te va învăța nimic bun. Dar sarcina primului limbaj de programare este încă să te învețe ceva corect, să stabilești un fel de logică.

Este engleza importanta?

Important! Nu stiu? A preda. Știi? Îmbunătăţi. Învață să citești, să scrii, să asculți și să vorbești engleză. Concentrați-vă pe literatura tehnică. Ascultați podcasturi în limba engleză. Citiți manuale de programare în limba engleză.

Ce trebuie să știți în afară de limbajul de programare

Desigur, pe lângă limbajul de programare și limba engleză, trebuie să știi și altceva. Dar ce depinde de direcția pe care o alegi. Un programator web trebuie să cunoască HTML, CSS, JavaScript. Un programator desktop predă API-urile sistemului de operare și diverse cadre. Un dezvoltator de aplicații mobile învață cadre Android, iOS sau Windows Phone.

Toată lumea trebuie să învețe algoritmi. Încercați să urmați un curs despre Coursera sau să găsiți o carte despre algoritmi care vi se potrivește. În plus, trebuie să cunoașteți una dintre bazele de date, modelele de programare și structurile de date. De asemenea, merită să verificați depozitele de cod. Măcar cu unul. Este necesară cunoașterea sistemelor de control al versiunilor. Alegeți Git, este cel mai popular. Trebuie să cunoașteți instrumentele cu care lucrați, sistemul de operare și mediul de dezvoltare. Iar principala abilitate a unui programator este să poată folosi Google. Nu vei trăi fără asta.

Ultimii pași

Trebuie să pregătiți un CV. Nu doar un CV, ci un . Nu ar trebui să scrii acolo, dar nici nu trebuie să taci în legătură cu abilitățile tale. Odată ce sunteți invitat la un interviu, trebuie să vă pregătiți pentru el. Parcurgeți materialul care este listat în CV-ul dvs. Trebuie să ai încredere în cunoștințele tale. Priviți proiectele la care ați lucrat, gândiți-vă la tehnologiile pe care le-ați folosit. Și înainte - către un viitor luminos cu o nouă profesie de programator.

Gândește-te la cariera ta. Foto: țeavă de kimberlit Udachnaya, Yakutia.

Un programator prost este acela care nu se străduiește să devină CIO. Ambiția și dorința pentru înălțimi în carieră merg de obicei alături de dorința de a deveni un excelent profesionist în domeniul tău.

Managerii de resurse umane menționează adesea posibilitatea de creștere a carierei ca unul dintre punctele atunci când angajează un tânăr specialist, iar pentru majoritatea companiilor IT mari, perspectivele de dezvoltare profesională a unui dezvoltator sunt precizate literal punct cu punct. Un astfel de plan reflectă principalii factori care ar trebui să îmbunătățească performanța angajatului pentru promovarea ulterioară într-o poziție superioară.

Să luăm în considerare calea carierei unui programator folosind exemplul mișcării verticale, deoarece aceasta este calea clasică și cea mai comună de la stagiar la manager. În plus, creșterea verticală este cea care contribuie la cea mai rapidă avansare în carieră.

Stagiar (dezvoltator junior)

Majoritatea programatorilor își încep cariera cu acest prim pas. Printre principalele cerințe pentru angajare:

Studii tehnice superioare sau incomplete.
Cunoașterea elementelor de bază ale limbajelor de programare.

Prima poziție a unui tânăr specialist nu implică participarea la proiecte mari: li se atribuie rolul de a îndeplini sarcini standard, tipice. În această etapă, dezvoltatorul are suficient timp pentru a-și perfecționa abilitățile și pentru a obține nivelul maxim posibil de cunoștințe pentru a merge mai departe. Vă va ajuta să obțineți cunoștințe de bază.

Dezvoltator de software

Până la momentul tranziției la această poziție, programatorul trebuie cel puțin:

Deține o diplomă de specialist (de preferință o specialitate tehnică, dar nu este obligatorie).
Aflați totul despre inginerie software.
Cunoștință în mai multe limbaje de programare.
Aveți o înțelegere a sistemelor de gestionare a bazelor de date, a serviciilor web, a sistemului de operare.

În această etapă, responsabilitățile angajatului ajung la un nivel complet diferit - i se încredințează dezvoltarea și implementarea software-ului, încredințat să lucreze la noi proiecte și să mențină cele existente.

Managerii de resurse umane subliniază că în postura de dezvoltator de software este important ca un angajat să se dovedească nu doar ca un specialist priceput în procesele de programare, ci și ca o persoană sociabilă, neconflictuală. Avansarea ulterioară pe scara carierei implică un contact mai strâns cu echipa, angajații altor departamente și șefii de departamente, astfel încât calitățile personale sunt foarte importante.

Dezvoltator principal

Cerințele pentru solicitant includ, în plus:

Experienta intr-o companie mare specializata, de la 2 ani.
Participare la proiecte comerciale corporative.

Gama de sarcini profesionale cu care se confruntă dezvoltatorul principal include implementarea proiectării detaliate a componentelor pe baza specificațiilor generale existente, precum și programarea și testarea inițială a componentei. Vorbind despre perspectivele de avansare ulterioară, este de remarcat faptul că dezvoltatorii de frunte care nu numai că au potențial, dar știu și cum să organizeze munca unui grup de oameni au șanse mai mari de a trece mai departe pe scara carierei.

Șef departament dezvoltare (leader de echipă)

Toate cerințele suplimentare pentru un candidat pentru această poziție se limitează în esență la experiența în gestionarea unei echipe de dezvoltare formată din cel puțin două persoane și la posesia abilităților de management. Managerul trebuie să cunoască elementele de bază ale managementului de proiect, să fie capabil să pregătească prezentări eficiente, inteligente și să vorbească în fața unui public. De asemenea, are nevoie de capacitatea de a delega autoritatea, de a identifica problemele și de cele mai eficiente modalități de a le rezolva.

Principalele responsabilități includ, de regulă, administrarea proiectelor și luarea deciziilor de proiectare, organizarea muncii în echipă și rezolvarea tot felul de probleme tehnice.

Manager de proiect

După cum arată practica, specialiștii cu atât abilități de management, cât și cunoștințe în domeniul dezvoltării se descurcă cel mai bine în această poziție. Dar, uneori, managerii de proiect devin oameni care sunt departe de domeniul real al programării. Prin urmare, fiecare dezvoltator ambițios în această etapă are mulți concurenți. Aici este important să vă dovediți bine și ca un manager inteligent, care are în geantă destule idei non-triviale.

Treceți mai departe - în mai multe direcții: treceți la un alt proiect, mai interesant și de anvergură, dezvoltați-vă ca director de dezvoltare sau deveniți director IT. Calea aleasă depinde în mare măsură de interesele specialistului și de zona în care acesta încearcă să se dovedească.