6 rzeczy, które każdy junior powinien wiedzieć

Opiszę dzisiaj wnioski, które nasunęły się przez cały czas mojej nauki. Podpowiem gdzie umieścić swoje projekty żeby nadawały się do portfolio. Udowodnię, że wyszukiwanie rozwiązań w Google to bardzo dobra rzecz. Podrzucę pomysł na tworzenie projektów i wyleczę Cię z fobii do frameworków. Zaczynajmy!

#1 Korzystanie z Githuba

To chyba najważniejsza rzecz, o której chciałbym wiedzieć jak zaczynałem swoją przygodę z programowaniem. Wbrew pozorom, podstawy obsługi tego portalu nie są skompikowane, a jeśli chcesz je poznać, to zapraszam do mojego wcześniejszego postu, gdzie wyjaśniłem wszystkie kroki od założenia konta po pierwszy commit.
http://www.idaszak.com/article/2017/03/23/daj-sie-poznac-2-projekt-konkursowy-mistrzmakro.
Wrzucanie publicznie kodu to świetna wizytówka podczas szukania pracy, oraz świetny sposób żeby otrzymać jakiś feedback. Na swoim profilu widać ile commitów zrobiłeś na każdy dzień, myślę że spora ilość, pokazująca przepracowane godziny z kodem świadczy bardzo dobrze o młodym programiście.

Systematyczne commitowanie warto mieć na uwadze, a może nam pomóc w tym challenge #100DaysOfCode, który jest opisany szerzej na stronie medium https://medium.freecodecamp.com/join-the-100daysofcode-556ddb4579e4#.wfu98r7q0
a w skrócie polega na tym, by przez 100 dni wrzucać kod na Github i dokumentować wykonaną pracę w specjalnym repozytorium.

#2 Praktyka ponad teorią

We wcześniejszym poście opisywałem początki mojej nauki, gdzie przedzierałem sie przez grube książki, zamiast pisać projekty. Na początek najlepiej zabrać się za tutoriale i wspomóc się Stack Overflow, żeby poznać zastosowania języka, dopiero potem zainteresować się bardziej teorią. Zyskamy wtedy szerszy pogląd na różne zagadnienia i łatwiej będzie nam sobie wyobrazić przykłady z książek. Kolejnym krokiem powinien być własny projekt. Możemy w taki sposób wzmocnić swoje portfolio. Wiele osób poleca tworzyć projekty, które zostaną ukończone i wydane w internecie do ogólnego użycia. Pracodawcy cenią bardziej projekty, które nie są tylko "pisane do szuflady".

Skąd brać pomysły na projekty? Osobiście nie miałem większej okazji korzystać, ale podobno Free Code Camp pozwala na stworzenie wielu ciekawych projektów. Dobrym pomysłem jest też uczestniczenie w projektach open sourcowych. Wyszukiwać takie można w Githubowej zakładce trending, a potem szukać zadań do wykonania w zakładce Issues

#3 Google zamiast forum

Internet jest tak ogromnym miejscem, że możemy znaleźć w nim rozwiązania prawie wszystkich programistycznych problemów, jednak wymogiem jest posługiwanie się językiem angielskim. Stack overflow, to wspaniałe miejsce, gdzie zaczynając swoją przygodę z językiem czy frameworkiem możemy znaleźć bardzo przydatne fragmenty kodu. Trzeba tylko uważać czy dany kod nie jest sprzed wielu lat, lub nie jest złą praktyką. Apeluję, żeby nie zaśmiecać forów internetowych i grup na Facebooku, na których codziennie mozna znaleźć setki pytań, które można rozwiązać pierwszym linkiem z google.

Czy to wstyd że programista czegoś nie zna na pamięć i sprawdza coś banalnego w dokumentacji czy Stack Overflow? Świetnie obrazuje to akcja developerów na twitterze, gdzie ludzie przeciwstawili się pisaniem kodu na tablicy z głowy podczas rozmów kwalifikacyjnych. Przykładowe tweety możesz zobaczyć poniżej:


#4 Nie ucz się samotnie

Uważam, że podjęta decyzja o nauce programowania nie jest czymś co warto dzielić z wszystkimi. Mogą pojawić się negatywne opinie ludzi, którzy sami nie są zdolni do takiego kroku. Jednak odnalezienie partnera chętnego do wspólnej nauki, to niesamowity kopniak motywujący do działania. Dzielenie się małymi sukcesami i nowymi informacjami bardzo ułatwi naukę. Pamiętaj, że proces uczenia się jest bardziej efektywny, gdy przyswojoną wiedzę próbujemy przekazać komuś innemu. Świetnym pomysłem jest też odnalezienie doświadczonego mentora, który pokieruje nauką, albo usiądzie i będzie programował razem z Tobą. Poza tym, że wyniesiesz z tego bardzo dużo wiadomości, to będziesz gotów, jeśli na rozmowie kwalifikacyjnej wymagany będzie "pair programming".

#5 Nie bój sie frameworków!

Ten punkt jest jakby odnośnikiem do punktu drugiego. Na forach i grupach doświadczeni programiści podkreślają wagę czystego języka, bez frameworków. Straszą, że frameworki są niesamowicie skomplikowane i na początku nauki nie ma sensu się ich uczyć. Oczywiście nie podważam tego, tak samo uważam że w wielu wypadkach lepsze aplikacje można by zrobić bez użycia żadnej biblioteki czy frameworka zajmującego dużo pamięci, a podstawy języka powinno się bardzo dobrze znać. Jednak realia są zupełnie inne, posady dla początkujących programistów wymagają poza podstawową wiedzą znajomości frameworków.

Przy dzisiejszej dostępności najróżniejszych tutoriali, kursów i dobrych dokumentacji nie jest trudno poznać podstawy frameworka. A to właśnie frameworki pozwalają poznać więcej zaawansowanych konceptów w programowaniu, które ciężko zrozumieć początkującym poprzez samo oglądanie przykładów w książce.

#6 LinkedIn, CV, Portfolio

Github to strona, która w prosty sposób może odgrywać dla nas rolę portfolio. Jednak gdzie można znaleźć najwięcej programistów i rekruterów podczas szukania pracy? Portal LinkedIn umożliwia stworzenie własnego wirtualnego CV oraz zbudowania sieci znajomości, które mogą pomóc nam w znalezieniu pracy. Sam Linkedin posiada także grupy dyskusyjne przypominające te na Facebooku. Poza stworzeniem konta na LinkedIn, warto także pomyśleć o swoim CV. Dobrze jest myśleć o nim od początku swojej nauki, żeby wpaść na pomysł, jak wypełnić lukę w tabeli zawierającej doświadczenie.

Published: March 26 2017

blog comments powered by Disqus