Agt foute wat ek as junior gemaak het

Om as 'n ontwikkelaar te begin kan dikwels skrikwekkend voel: jy word gekonfronteer met onbekende probleme, baie om te leer en moeilike besluite om te neem. En in sommige gevalle is ons verkeerd in hierdie besluite. Dit is heel natuurlik, en dit is geen sin om jouself daaroor te klop nie. Maar wat jy moet doen, is om jou ervaring vir die toekoms te onthou. Ek is 'n senior ontwikkelaar wat in my tyd baie foute gemaak het. Hieronder sal ek jou vertel van agt van die ernstigstes wat ek verbind het toe ek nog nuut was met ontwikkeling, en ek sal verduidelik hoe dit vermy kon word.

Agt foute wat ek as junior gemaak het

Ek het die eerste een wat hulle aangebied het geneem

Wanneer jy leer om kode op jou eie te skryf of jou studies op universiteit voltooi, word om jou eerste werk in jou spesialiteit een van jou hoofdoelwitte. Iets soos lig aan die einde van 'n lang tonnel.

Intussen is dit nie maklik om werk te kry nie. Daar is al hoe meer mense wat vir junior poste aansoek doen. Ons moet skryf 'n moordenaar CV, gaan deur 'n hele reeks onderhoude, en dikwels is hierdie hele proses baie vertraag. Gegewe dit alles, is dit nie verbasend dat enige werksaanbod jou met albei hande wil aangryp nie.

Tog is dit dalk 'n slegte idee. My eerste werk was ver van ideaal, beide in terme van professionele groei en in terme van plesier uit die proses. Die ontwikkelaars is gelei deur die leuse "dit sal doen," en dit was nie gebruiklik om te hard te probeer nie. Almal het mekaar probeer blameer, en ek moes dikwels hoeke sny om baie streng spertye te haal. Maar die ergste is dat ek absoluut niks geleer het nie.

Tydens onderhoude het ek 'n dowe oor gedraai vir al die oproepe, ek was so gefassineer deur die vooruitsig om werk te kry. As enige twyfel ontstaan ​​het, het hulle almal uit my kop gevlieg sodra ek hoor dat hulle my vat! En selfs vir 'n goeie salaris!

En dit was 'n groot fout.

Die eerste werk is van groot belang. Dit gee jou 'n idee van hoe dit is om 'n regte programmeerder te wees, en die ervaring en opleiding wat jy daaruit kry, kan die grondslag lê vir jou hele toekomstige loopbaan. Daarom is dit nodig om alles oor die vakature en die werkgewer deeglik uit te vind voordat daar ingestem word. Harde ervaring, slegte mentors - jy het dit beslis nie nodig nie.

  • Doen navorsing oor inligting oor die maatskappy. Gaan na resensiewebwerwe, kyk na die amptelike webwerf, blaai net op die internet en versamel resensies. Dit sal jou 'n beter idee gee van of die maatskappy by jou behoeftes en doelwitte pas.
  • Vra jou vriende. As iemand in jou kring vir hierdie werkgewer gewerk het of iemand op personeel ken, praat persoonlik met hulle. Vind uit waarvan hulle gehou het, waarvan hulle nie gehou het nie en hoe hulle die ervaring in die algemeen beskou het.

Het nie die regte vrae tydens onderhoude gevra nie

’n Onderhoud is die beste geleentheid om die maatskappy beter te leer ken, so maak seker dat jy vrae voorberei oor wat jy by werknemers wil leer. Hier is 'n paar voorbeelde:

  • Vra oor die ontwikkelingsproses (watter metodologieë volg hulle? is daar kodeoorsigte? watter vertakkingstrategieë word gebruik?)
  • Vra oor toetsing (watter toetse word gedoen? is daar spesiale mense wat net toetse doen?)
  • Vra oor die maatskappykultuur (hoe informeel is alles? is daar enige ondersteuning vir juniors?)

Beslis oor die trajek van beweging

Die pad om 'n ervare ontwikkelaar te word is ongetwyfeld baie kronkelend. Deesdae kan jy kies uit 'n verskeidenheid tale, raamwerke en gereedskap. My fout vroeg in my loopbaan was dat ek alles probeer bemeester het. Snaaks genoeg het dit net daartoe gelei dat ek in niks veel gevorder het nie. Eers het ek Java opgetel, toe JQuery, toe aanbeweeg na C#, van daar na C++... In plaas daarvan om een ​​taal te kies en al my energie daarin te gooi, het ek van vyfde na tiende gespring, net volgens my bui. Ek kan jou verseker dat dit 'n hoogs ondoeltreffende opleidingskema is.

Ek sou beter resultate behaal het en vinniger op die loopbaanleer beweeg het as ek dadelik op 'n trajek, dit wil sê 'n sekere stel tegnologieë, besluit het en daarop gefokus het. Byvoorbeeld, as jy 'n front-end ontwikkelaar is, bemeester JavaScript, CSS/HTML, en 'n raamwerk van jou keuse. As jy aan die agterkant werk, neem weer een taal en bestudeer dit deeglik. Dit is nie nodig om beide Python, Java en C# te ken nie.

So raak gefokus, het 'n rigting en maak 'n plan wat jou sal toelaat om 'n professionele persoon te word op jou gekose pad (hier padkaart, wat jou hiermee kan help).

Gesofistikeerd in kode

So, jy berei 'n toets voor om jou werkgewer jou vaardighede te wys, of jy het reeds die eerste taak by jou eerste werk aangepak. Jy gaan uit jou pad om te beïndruk. Wat is die beste manier om resultate te behaal? Demonstreer seker tydens die uitvoering daardie gesofistikeerde tegniek wat jy onlangs bemeester het, nie waar nie?

Geen. Dit is 'n ernstige fout wat ek self gemaak het, en meer dikwels as wat ek sou wou, sien ek in die werk van ander juniors. Dit is baie algemeen dat hulle die wiel herontdek of na komplekse oplossings soek in 'n poging om hul kennis te wys.

Die beste benadering tot die skryf van kode word uitgedruk basies KISS. Deur na eenvoud te streef, sal jy met duidelike kode eindig wat maklik sal wees om mee te werk in die toekoms (die ontwikkelaar wat jou vervang sal dit waardeer).

Het vergeet dat daar lewe buite kode is

Om nooit te "afskakel" nie, is 'n slegte gewoonte wat ek baie vroeg opgedoen het. Wanneer ek aan die einde van die dag huis toe is, het ek gereeld my werkskootrekenaar saamgeneem en ure daarop gesit om 'n taak toe te maak of 'n fout reg te maak, alhoewel albei van hulle tot die oggend kon gewag het. Soos jy kan verwag, was hierdie regime stresvol en ek het vinnig uitgebrand.

Die rede vir hierdie gedrag was deels my begeerte om alles so vinnig as moontlik te doen. Maar in werklikheid moes ek verstaan ​​het dat werk 'n langtermynproses is en, met seldsame uitsonderings, kan vandag se tekortkominge maklik na môre oorgedra word. Dit is baie belangrik om periodiek van ratte te wissel en te onthou dat die lewe nie tot werk beperk is nie – daar is vriende, familie, stokperdjies, vermaak. Natuurlik, as jy daarvan hou om te sit tot dagbreek kodering - om Gods ontwil! Maar wanneer dit nie meer pret is nie, stop en dink of dit tyd is om iets anders te doen. Dit is nie ons laaste dag van werk nie!

Vermy om te sê: "Ek weet nie"

Om vas te sit in die proses om 'n probleem op te los of 'n taak te voltooi, is algemeen; selfs die mees senior seniors staar dit in die gesig. Toe ek 'n junior was, het ek minder gereeld gesê: "Ek weet nie," as wat ek moes, en ek was verkeerd daaroor. As iemand in die bestuur my ’n vraag vra en ek het nie die antwoord geweet nie, sou ek probeer vaag wees in plaas daarvan om dit net te erken.

Ek het gevoel asof as ek sê: "Ek weet nie," sou mense die indruk kry dat ek nie weet wat ek doen nie. Trouens, dit is glad nie waar nie; daar is geen alwetende mense nie. Daarom, as jy gevra word oor iets wat jy nie weet nie, sê so. Hierdie benadering het verskeie voordele:

  • Dit is regverdig – jy mislei nie die vraesteller nie
  • Daar is 'n kans dat hulle dit vir jou sal verduidelik en dan sal jy iets nuuts leer
  • Dit wek respek – nie almal kan erken dat hulle iets nie weet nie

Ek was haastig om te vorder

Jy het waarskynlik die gesegde gehoor: "Leer om te loop voor jy hardloop." Nêrens is dit meer relevant as op die gebied van webprogrammering nie. Wanneer jy eers as junior iewers werk kry, wil jy net die bul by die horings vat en dadelik aan die een of ander groot, komplekse projek begin werk. Selfs gedagtes glip deur oor hoe om vinnig 'n bevordering na die volgende vlak te verdien!

Ambisie is natuurlik goed, maar in werklikheid sal niemand so iets vir 'n junior reg uit die hek gee nie. Heel aan die begin van jou loopbaan sal jy heel waarskynlik eenvoudige take en foute kry om reg te stel. Nie die opwindendste ding in die wêreld nie, maar waarheen om te gaan. Dit sal jou toelaat om stap vir stap gemaklik te raak met die kodebasis en al die prosesse te leer. Terselfdertyd kry jou base die geleentheid om te sien hoe jy by die span inpas en wat jy die beste doen.

My fout was dat ek gefrustreerd geraak het met hierdie klein take en dit het my aandag van my werk afgetrek. Wees geduldig, doen alles wat hulle vra pligsgetrou, en binnekort sal jy iets interessanter kry.

Het nie by die gemeenskap aangesluit nie en nie verbindings gemaak nie

Die ontwikkelaars het 'n wonderlike gemeenskap: hulle is altyd gereed om te help, terugvoer te gee en selfs aan te moedig. Programmering is moeilik en soms baie uitputtend. Vir my sou die tydperk van werk as junior makliker gewees het as ek van die begin af aktief met kollegas begin kommunikeer het.

Kontakte met die gemeenskap is ook baie nuttig vir selfopvoeding. Jy kan bydra tot oopbronprojekte, ander mense se kode bestudeer en kyk hoe programmeerders saam 'n projek lei. Dit is alles vaardighede wat jy in jou dagtaak kan gebruik en wat jou mettertyd 'n goeie professionele persoon sal maak.

Kies gemeenskappe wat jou belangstelling prikkel - sommige opsies sluit in freeCodeCamp, CodeNewbies, 100DaysOfCode - en sluit aan! Jy kan ook plaaslike ontmoetings in jou stad bywoon (soek op meetup.com).

Ten slotte, op hierdie manier kan jy professionele verbindings verkry. In wese is verbindings bloot die mense in jou bedryf waarmee jy netwerk. Hoekom is dit nodig? Wel, kom ons sê jy wil eendag van werk verander. As jy na jou verbindings wend, kan iemand dalk vir jou 'n geskikte vakature aanbeveel, of jou selfs by 'n werkgewer aanbeveel. Dit sal jou 'n beduidende voordeel by die onderhoud gee - hulle het reeds 'n woord vir jou gesit, jy is nie meer "net nog 'n CV van die stapel nie."

Dit is al, dankie vir jou aandag!

Bron: www.habr.com

Voeg 'n opmerking