Dezvoltatorul și mentorul full-stack Oleksiy Kapustnik răspunde la întrebările obișnuite ale începătorilor și spune cum să înțelegeți că programarea vi se potrivește, ce trebuie să știe un junior Java în 2022 și ce să facă pentru a ieși în evidență de alți candidați.
Cum știi dacă cariera unui dezvoltator este potrivită pentru tine? Ce calități sunt esențiale pentru acesta?
Trebuie să fii la curent cu noile tehnologii, să ai o pasiune pentru ele și să vrei să înveți lucruri noi. Fără aceste calități, veți avea dificultăți. Am predat zeci de studenți, iar în fiecare grupă, unii au ars de programare – au fost mereu în frunte. Programarea este un domeniu în care trebuie să înveți constant. Și cu cât nivelul este mai scăzut, cu atât îți este mai greu pentru că nu știi multe. Deci, ar ajuta să reziste la sarcina de antrenament și, mai târziu, să-ți menții nivelul. Dacă ești profesor de matematică, ai dobândit cunoștințele necesare și le-ai aplicat în următorii 50 de ani. Odată ce există o descoperire sau o nouă formulă la fiecare zece ani, o știi și o înveți din nou. În programare, opusul este adevărat: am stăpânit tehnologia timp de două săptămâni, dar în timp ce am înțeles-o, a apărut o nouă actualizare, și a trebuit să-l reînvăț din nou pentru că a schimbat radical totul. Trebuie să învățăm să ne adaptăm. Este natura noastră să ne fie frică să schimbăm ceva sau să ne împotrivim. Dar dacă te comporți așa în viață, probabil că nu ai parte de programare. Și invers: dacă înțelegi că trebuie să te schimbi tot timpul, să te îmbunătățești și să recunoști că totul în viață este impermanent, atunci programarea va fi ușor pentru tine. Perseverența și disciplina sunt esențiale. Motivația funcționează doar în stadiul inițial. De exemplu, dacă începi să studiezi, ești motivat de bani, libertate, avantaje și o nouă profesie. Dar după câteva luni, motivația ta poate dispărea, ceea ce este tipic: disciplina ar trebui să funcționeze mai departe. Poți sta ore întregi la o sarcină, iar când o rezolvi, înțelegi că totul este posibil. Apropo,
Ce ar trebui să știe un dezvoltator Java începător în 2022?
Pe lângă Java Core, trebuie să cunoașteți cadrul Spring – nu puteți lucra fără el. Odată, am eșuat la un interviu pentru că nu mi-am dat seama că trebuie să știu asta. În orice caz, aveți nevoie de cunoștințe despre baze de date și framework-ul Hibernate. Adesea, ei scriu despre cunoașterea JavaScript, HTML și CSS în cerințele postului. Totuși, uneori te întreabă despre ele la interviu, deși este posibil să nu le folosești dacă obții un loc de muncă. Aveam nevoie de aceste cunoștințe într-o companie în care lucram ca dezvoltator full-stack. Când lucram la EPAM, eram un dezvoltator back-end pur și nu mi-a fost de folos. Cu toate acestea, cunoașterea acestor tehnologii nu va strica, mai ales dacă doriți să vă creați proiectul. Recomand tehnologii de învățare precum Kafka (Apache Kafka este un broker de mesaje software distribuit, un proiect open-source dezvoltat de Fundația Apache – ed.). Un dezvoltator Middle trebuie să știe asta și poate fi un avantaj suplimentar pentru un Junior. Trebuie să cunoașteți sistemul de control al versiunilor Git. De asemenea, trebuie să înțelegeți cine este cine și ce face DevOps (sarcina principală a acestui specialist este să configureze și să mențină software-ul necesar în companie și să automatizeze fiecare etapă de dezvoltare – n.d.). Dacă un dezvoltator realizează proiecte pentru el însuși, trebuie să cunoască lucrurile esențiale din zona DevOps. trebuie să înțelegeți cine este cine și ce face DevOps (sarcina principală a acestui specialist este de a configura și întreține software-ul necesar în companie și de a automatiza fiecare etapă de dezvoltare – n.d.). Dacă un dezvoltator realizează proiecte pentru el însuși, trebuie să cunoască lucrurile esențiale din zona DevOps. trebuie să înțelegeți cine este cine și ce face DevOps (sarcina principală a acestui specialist este de a configura și întreține software-ul necesar în companie și de a automatiza fiecare etapă de dezvoltare – n.d.). Dacă un dezvoltator realizează proiecte pentru el însuși, trebuie să cunoască lucrurile esențiale din zona DevOps.
Cum îți poți face CV-ul excepțional, diferit de restul candidaților?
CV-ul ar trebui să fie ușor de citit. Aș spune că ar trebui să fie ușor de citit, astfel încât recrutorul să poată vedea: acesta este CV-ul unui dezvoltator Java. Acest dezvoltator cunoaște nucleul și elementele fundamentale ale cadrelor. O listă cu cărțile pe care le-ați citit poate fi un plus. În primul meu CV, am oferit o astfel de listă, iar când HR sa întâlnit cu mine, ea a spus că ea și colegii ei au fost impresionați că am citit aceste cărți. De asemenea, este necesar să specificați „cunoștințele generale” pe care le aveți. De exemplu, cum funcționează Internetul, cunoștințe de REST, SOAP – ceva care nu se aplică Java Core, dar aparține programării generale.
De unde știi când este timpul pentru interviuri?
Aș începe prin a găsi întrebări de interviu pentru un post Java Junior. Apoi citeam întrebările și mă gândeam cum le-aș răspunde. Apoi, comparați răspunsurile mele cu răspunsurile date. Dacă majoritatea se potrivesc, bine, ești pregătit pentru un interviu. Cu toate acestea, dacă ați răspuns corect doar la trei întrebări din 30, aveți nevoie de mai mult timp. Dacă totul a funcționat cu întrebările, ai putea face teste online. Întrebările vor fi cel mai probabil aproape aceleași la interviu. Cu toate acestea, nu uita de stres și fii pregătit pentru o provocare. Când faci toate aceste pregătiri, stabilește-ți un termen limită, altfel, s-ar putea să nu te simți niciodată pregătit pentru un interviu adevărat.
Cum să te pregătești pentru un interviu?
În primul rând, trebuie să-ți învingi frica. Dacă acesta este primul interviu de angajare din viața ta, vei fi stresat. La primul meu interviu, trei venerabili programatori mi-au spus: „Păi, spune-mi”. Și m-am speriat nu pentru că erau înfricoșători, ci pentru că asta nu mi s-a întâmplat niciodată înainte. Pentru a depăși această frică, poți să ceri unui prieten să te ajute: dă-i o listă de întrebări și lasă-l să te ghideze prin ele. În timpul interviului, poate apărea o situație când ești întrebat ceva și nu știi răspunsul. Nu poți spune pur și simplu „Nu știu” și să taci. În schimb, ar trebui să răspunzi: „Nu am lucrat cu această tehnologie, dar presupun că funcționează așa...”. Trebuie să-ți transformi ignoranța în ceva ce poți învăța rapid. Încercați să acționați încrezător. Scopul oricărui interviu pentru o companie este să te evalueze ca dezvoltator, iar tu să evaluezi intervievatorii ca potențiali colegi. Simte-te egal: pe măsură ce compania te alege, tu alegi o companie.
Cum ar trebui să-mi organizez învățarea?
Există o linie fină în antrenament - este echilibrul dintre viața personală și munca la computer. Când începeți să învățați, este posibil să aveți suficient timp, dar puține cunoștințe pentru a codifica. Prin urmare, puteți dedica 3 ore pe zi programării. Apoi, când cantitatea de cunoștințe crește, poți petrece 8 ore pe zi studiind. Uneori, ați putea crede că este o idee bună să lucrați 15 ore pe zi pentru a învăța totul cât mai curând posibil. Dar nu vei menține această viteză mult timp. Prin urmare, este esențial să îți găsești limita atunci când realizezi că ai muncit suficient pentru a învăța materialul, dar nu ești epuizat. Odată, am studiat și am muncit prea mult, ceea ce a avut un efect negativ. Trebuie să vă odihniți și să vă reîncărcați creierul.
GO TO FULL VERSION