Czy programista powinien skończyć studia?

Czy programista powinien skończyć studia? web.gov.pl

Pracodawcy w CV poszukują przede wszystkim konkretnych umiejętności i profesjonalnego doświadczenia. Czy oznacza to, że studiowanie informatyki to strata czasu? O tym w niniejszym artykule.

Niedawno opublikowaliśmy poradnik dla programistów i developerów-samouków. Razem z Mirosławem Zelentem, nauczycielem programowania i popularnym vloggerem, wskazywaliśmy wartościowe źródła wiedzy dla początkujących, udzielając im rad, jak zacząć. Tym razem Mirosław Zelent pomaga w znalezieniu odpowiedzi na inne, ważne pytanie: czy programowania warto uczyć się w szkole?

Informatyka: studiować czy nie studiować?

Mirosław Zelent to nie tylko autor popularnego kanału dla programistów na YouTube (blisko 33 tys. subskrybentów na dzień 12.05.2015 r.), ale także absolwent kierunku informatycznego i nauczyciel w gliwickim technikum informatycznym. Poznał więc od podszewki zarówno kulisy studiowania tej dziedziny wiedzy i nauczania jej w szkole, jak i warunki i możliwości samodzielnej nauki, bez pomocy uczelni i innych placówek oświatowych. Według Zelenta studia informatyczne, choć nie można ich nazwać bezwzględnie koniecznymi, oferują aspirującym programistom bardzo wiele i nie są czasem straconym:

„Uważam, że wykształcenie formalne jest istotne, a zbędne może się okazać tylko w stosunkowo niewielkiej liczbie przypadków. Zrozumiała jest dla mnie pokusa pominięcia nauki formalnej, bo programowanie to w dużej mierze sport dla samouków i pasjonatów. Najbardziej rozwijają nas zrealizowane projekty oraz długie godziny informatycznej praktyki przed komputerem. W tej pracy nie da się ustalić arbitralnie poziomu umiejętności, od którego można się zająć informatyką zawodowo. Nie przeceniałbym jednak wagi zdobycia dyplomu ukończenia studiów. W branży informatycznej liczy się to, czy ciągle się rozwijamy jako programiści. Historia branży IT kusi przykładami wielkich sukcesów Steve’a Jobsa, Marka Zuckerberga czy Billa Gatesa, którzy porzucili studia na rzecz kariery. Często zarzuca się uczelniom wyższym, że choć dobrze realizują naukę fundamentalnych technologii i inżynierii oprogramowania, to nie nadążają za nowymi rozwiązaniami. Za dobry przykład może tutaj posłużyć pomijany w planach zajęć, a tak przecież popularny Ruby on Rails (framework do tworzenia aplikacji webowych napisany w języku Ruby – przyp. red.). Wiele osób obawia się, że studia na uczelni wyższej okażą się dla nich zbyt dużym obciążeniem – zwłaszcza na pierwszym roku trzeba sporo wysiłku, aby w ogóle się na studiach utrzymać. Pojawia się zatem myśl: „Po co mi to? Lepiej przepracuję te kilka lat”. Chcę podkreślić, że takie myśli są zupełnie naturalne. Pozwólcie jednak, że wyjaśnię dlaczego warto jest uzyskać formalne wykształcenie. To nie jest tak, że studia to tylko walka o dyplom. Jest wręcz przeciwnie! Studiowanie rozwija umiejętność samodzielnej pracy. Zarzut, że uczysz się aktualnie jakieś technologii, której sam byś nie wybrał, albo teorii, której zastosowania aktualnie nie widzisz, nie ma racji bytu. Dlaczego? Każdy potrafi nauczyć się tego, co uważa za interesujące i sam wybrał”.

Studia informatyczne a rynek pracy

Gdy rozejrzymy się za ofertami pracy dla specjalistów IT z różnych dziedzin, szybko zauważymy, że wymóg wyższego wykształcenia kierunkowego nie pojawia się w nich zbyt często. Zobaczymy w nich za to rozbudowany spis wymaganych umiejętności (np. języków programowania takich jak JavaScript, Java, Ruby,Python, PHP, czy C++ na określonym poziomie zaawansowania, znajomość i doświadczenie w tematyce architektury oprogramowania, doświadczenie w pracy z systemami kontroli wersji takimi jak Git czySubversion, znajomość popularnych bibliotek i frameworków, m.in. Bootstrap, jQuery, .NET, Django,Angular.js itp.). Ale czy oznacza to, że studia są zbędne? Przecież właśnie tych umiejętności można nauczyć się na studiach, a do tego zdobyć formalne potwierdzenie twoich kwalifikacjach. Czy tak jest w istocie? Czy umiejętności zdobywane na uczelni pokrywają się z tymi wymaganymi na rynku pracy?

programista web.gov.pl

– Rzetelne przepracowanie programu studiów informatycznych oraz możliwość kontaktu z doświadczoną kadrą naukową niewątpliwie pozwala zdobyć całkiem sensowny zestaw potrzebnych absolwentowi umiejętności. Konkurencja pomiędzy uczelniami (które z biznesowego punktu widzenia są rywalizującymi ze sobą firmami) wymusza ciągłą modernizację i ulepszanie programów nauczania, bazy sprzętowej, wachlarza oferowanych specjalizacji oraz zapewnienie bezpośredniej współpracy z pracodawcami na wielu różnych płaszczyznach. Dziś na studiach informatycznych nauczymy się już nie tylko wspomnianych w pytaniu zagadnień, ale często także tzw. umiejętności miękkich (czyli tych interpersonalnych) oraz sposobów pracy w zespole np. z zastosowaniem podejścia agile. Natomiast hipokryzją byłoby twierdzić, że popyt na umiejętności potrzebne inżynierom w branży IT jest całkowicie zaspokajany przez uczelnie oraz, że absolwent uczelni to całkowicie ukształtowany i okrzepły w praktyczne doświadczenie pracownik. Oczywiście, że tak nie jest! Uczelnia wyższa bazuje na jakości edukacji wczesnoszkolnej i średniej – uważa Zelent.

Podobne artykuły:

Poziom pokrywania się wymagań uczelnianych i rynku pracy różni się oczywiście w zależności od konkretnego obszaru zainteresowania w ramach różnorodnego świata IT.

– Ciężko wyróżnić szczególnie jedną z tych dziedzin, aczkolwiek gdybym musiał wskazać obszar IT, w którym najbardziej przyda się formalne wykształcenie, to zwróciłbym szczególną uwagę na tworzenie aplikacji trudno skalowalnych (tzn. takich, które wymagają szczególnie wiele wysiłku, by zachowały wydajność w obliczu konieczność zwiększenia zasięgu) – tłumaczy Zelent.

Agile, Scrum, Kanban – liczy się praca zespołowa

Nauka programowania na studiach oznacza, że na pewno zdobędziesz wiedzę, która stanie się mianownikiem dla ciebie i innych programistów-absolwentów. To ułatwi komunikację i współpracę. Nie można też przecenić umiejętności interpersonalnych, jakie pozwoli wypracować codzienne przebywanie z ludźmi takimi jak ty. Ważne jest znaczenie pracy zespołowej, co w zawodowej praktyce odzwierciedla popularność metodyk programowania zwinnego takich jak Agile, Scrum i Kanban.

Podobne artykuły:

– Kolejna sprawa to fakt, że bez ukończenia studiów ciężko ci będzie komunikować się z ludźmi z twojego fachu na takim poziomie merytorycznym, na jakim będziesz to robić po studiach. Przepracowanie różnorodnych źródeł, a przede wszystkim kontakt twarzą w twarz z pracownikami naukowymi podczas konsultacji, laboratoriów i ćwiczeń, to doświadczenie nie dające się zastąpić w zaciszu domowym czy podczas pracy zdalnej. Rola autorytetu doświadczonego eksperta w kształtowaniu postaw studentów jest nie do przecenienia – uważa Zelent. – Oczywiście, w pracy o sukcesie zawodowym decydują także umiejętność pracy zespołowej, empatia, jasne przekazywanie swoich myśli. Studia informatyczne pozwalają rozwinąć się na wszystkich tych płaszczyznach. Człowiek nie jest samotną wyspą i dlatego powinien uwzględniać punkt widzenia pracodawcy, współpracowników, bądź podwładnych. Posiadanie dyplomu cenionej uczelni technicznej jest świadectwem określonych umiejętności interpersonalnych kandydata, dotyczących samorozwoju i technicznego sposobu myślenia. I dlatego dyplom wyższej uczelni technicznej stanowi często próg rekrutacyjny w tym zawodzie.

Ciągłe samodoskonalenie programisty

Zdaniem Zelenta to właśnie konieczność nauczenia się wielu pozornie mocno oddalonych od siebie umiejętności, w których niekoniecznie czujesz się komfortowo, kształtuje twoją zdolność do ciągłego samodoskonalenia się jako programista: „Tak, wykształcenie formalne jest istotne, ale już fakt, czym dany programista ma zamiar się zajmować, ma mniejsze znaczenie. Po pierwsze, tego nie da się w tej branży w 100 proc. przewidzieć, po drugie, na studiach chodzi raczej o całościowy rozwój człowieka. To klasyczny przypadek, gdy chcemy dać komuś wędkę, a nie rybę”.

Od zera do kodera – jak długo?

Bez względu na to, czy zdecydujemy się na naukę informatyki na studiach, czy skorzystamy z porad tych, którzy jej zasadność marginalizują, musimy pamiętać o systematyczności w swoich postępach. Nawet z jej pomocą nie zostaniemy jednak wziętymi programistami z dnia na dzień:

– Jest takie powiedzenie: trening czyni mistrza. Tyle razy to słyszeliśmy, że zaczęliśmy ignorować. Wolimy szybki zysk, natychmiastowy sukces. By z powodzeniem zadomowić się na rynku IT, potrzebna jest cierpliwość. Tak wiele osób mówi sobie: od teraz biorę się za siebie, będę pracować, będę się uczyć, kupię książki, zostanę specem. Trzy miesiące później są zniechęceni, bo myśleli, że zawojują świat. Trzy miesiące? Rok, dwa lata regularnej pracy – to minimum. Ralph Waldo Emerson powiedział: "Do the thing, and you shall have the power". Czyli: rób to, w czym chcesz być dobry – wówczas siłą doświadczenia staniesz się ekspertem. Nie ma drogi na skróty – kończy Mirosław Zelent.

Artykuł pochodzi z serwisu web.gov.pl

Platforma Wspieramy e-Biznes Adrian Senecki