DevDebata

Studia pomagają uniknąć pułapki “religijnego” podejścia do technologii. Devdebata

biblioteka

– Studia może nie zawsze są potrzebne do tego, by dobrze programować. To jasne, że są dostępne świetne kursy, a niektórym wystarczy pół roku, żeby doskonale orientować się w technologii. Ale lata spędzone na uczelni dają pewien fundament – uważa jeden z uczestników devdebaty. Jak to w końcu jest: czy warto być programistą po studiach? Co takiego daje nam akademickie wychowanie w kontekście pracy w IT?

W devdebacie udział wzięli:

  • Adam Kochanowski. Software development manager z kilkunastoletnim doświadczeniem w branży. Pracował jako Frontend developer, UX designer, Scrum master oraz Tech lead. W Hexagon Geosystems rozwija produkt poprawiający wydajność maszyn budowlanych i bezpieczeństwo na placach budowy,
  • Jakub Matusiak. Geospatial Web Developer z wieloletnim doświadczeniem kartograficznym. Praktyk rozwijania User Interface z elementem mapowym. Prywatnie pasjonat urbanistyki, transportu miejskiego i wędrówek,
  • Karol Kozłowski. Aspirujący programista frontendowy. Zainteresowany realizacją koncepcji projektanta i zapewnieniem dobrego doświadczenia użytkowników. Ciągłe samodoskonalenie to sposób na życie w informatyce. Gracz zespołowy zawsze gotowy do wsparcia.

Na początek pytanie do tych dłuższych stażem w branży IT, czyli Adama i Kuby: jak wyglądały Wasze początki?

Adam Kochanowski

Adam Kochanowski: Zacząłem bardzo wcześnie, ale nie od programowania. Moje początki to grafiki komputerowe, które robiłem dla małej agencji reklamowej. Lubiłem emocje towarzyszące projektowaniu, ale moją największą motywacją zawsze była ciekawość. Szukałem, zastanawiałem się, jak mogę swoją pracę usprawnić, przełożyć na jeszcze większe korzyści dla klientów. Byłem zainteresowany zdaniem innych (feedback jest ważny, motywował mnie do dalszego rozwoju). W miejsce radości z tworzenia budziła się we mnie dociekliwość.

Naturalnym kolejnym etapem pracy w agencji było publikowanie moich grafik, a żeby to robić, potrzebowałem nowej wiedzy, znajomości technologii webowych. Zacząłem się więc uczyć. Myślę, że właśnie ta ciekawość ukierunkowała mnie na programowanie. Zafascynowała mnie praca w IT, zwłaszcza technologie frontendowe. Na początku byłem samoukiem, ale z czasem przyszła świadomość, że nawet największa pasja potrzebuje właściwego ukierunkowania. Zdecydowałem się na studia, dzięki którym uporządkowałem swoją wiedzę – to była trudna, ale niezwykle cenna przygoda.

Choć największą wartość w moje zawodowe życie wniosła praca komercyjna, dopiero całość doświadczeń (fascynacja IT, ogólna wiedza ze studiów, praktyka pierwszych lat pracy i dalsza ścieżka zawodowa) przekłada się na osiąganie realnej wartości biznesowej. Ale nie tylko – każdy etap, przez który przeszedłem, sprawia, że dziś szeroko patrzę na wiele problemów, co wykorzystuję w mojej pracy z zespołem. Uzupełniamy się, wspólnie zamieniamy codzienne zawirowania w pracy na niesamowite efekty dla klientów.

Jakub Matusiak

Jakub Matusiak: U mnie wszystko zaczęło się od map. Rysowałem je, projektowałem, miałem szuflady pełne map, interesowałem się urbanistyką. Natomiast w liceum trafiłem do klasy informatycznej i wtedy zapragnąłem programować. Poznałem podstawy programowania, lecz studia wybrałem już pod kątem mojej wcześniejszej pasji – poszedłem na geografię, specjalizacja planowanie przestrzenne. Byłem przekonany, że będę pracował w zawodzie urbanisty.

Po studiach przez kilka lat pracowałem jako kartograf, aż pewnego dnia postanowiłem zrobić coś innego, równolegle do mojej pracy – otworzyłem swój sklep internetowy. No i wtedy zaskoczyło, zacząłem się interesować tworzeniem treści w internecie. I siłą rzeczy musiałem nauczyć się HTML-a i CSS-a, zgłębiałem C++, żeby zrozumieć, jak to wszystko działa. Ta wiedza z liceum gdzieś uciekła, praktycznie zaczynałem od nowa.

Uczyłem się codziennie. W tramwaju, autobusie, w drodze do pracy – oglądałem różne kursy, quizy. Wieczorami siadałem do praktyki – łącznie zajmowało mi to jakieś 1,5 h dziennie. Byłem bardzo zdeterminowany. Myślę, że głównie dlatego, iż podświadomie czułem, że brakuje mi wiedzy, którą mógłbym zdobyć na studiach – i chciałem to szybko nadgonić. Ze wspomnianymi na początku mapami ponownie spotkałem się w Hexagonie – tym razem od strony programistycznej.

Pytanie do Karola – jak trafiłeś do Hexagon na staż? Czym się tam zajmowałeś?

Karol Kozłowski

Karol Kozłowski: Na wakacjach po drugim roku studiów pomyślałem, że to dobra pora na zaliczenie obowiązkowych praktyk zawodowych. Na stronie ictcluster.pl zauważyłem ofertę Hexagonu, gdzie możliwa była praca na frontendzie, a w wymaganiach były wpisane tylko studia z informatyki. Brzmiało świetnie, w sam raz dla mnie, więc to była pierwsza firma, do której wysłałem podanie. Niedługo potem zostałem zaproszony na swoją pierwszą rozmowę o pracę, którą udało mi się ukończyć z sukcesem i dostałem staż na 3 miesiące. Miałem różne obawy dotyczące możliwego przebiegu stażu, ale wszystkie zostały rozwiane. Nie było żadnego roznoszenia kawy czy nudy – dostałem solidne przygotowanie w postaci kursu z frameworku, którego nigdy wcześniej nie używałem i dosyć szybko zostałem wdrożony do prawdziwego projektu, który już miał znaczenie biznesowe. Pracowałem razem z zespołem, chodziłem na spotkania projektowe, dyskutowałem o możliwych rozwiązaniach i wykonywałem kolejne wyznaczane dla mnie zadania. Myślę, że naprawdę nieźle poznałem wtedy pracę programisty frontendowego.

Większość programistów, z którymi rozmawiam, są po różnego rodzaju kursach i dość szybko “weszli” do branży. Wy jesteście po studiach – albo w trakcie. Spytam wprost: dlaczego taki wybór?

Adam Kochanowski: Nie zawsze szybki start w branży przełoży się na czerpanie autentycznej satysfakcji z pracy w IT. Skończyłem informatykę na Politechnice Łódzkiej i z perspektywy czasu wiem, że było warto. Żaden krótszy kurs nie przygotowałby mnie na to, z czym mierzyłem się przez już ponad dekadę pracy zawodowej. Nie chodzi o samą wiedzę – tę można rzeczywiście zdobywać w różny sposób, a wiele kursów ma z pewnością dobrze i konkretnie opracowane programy. Jednak to studia stwarzają prawdziwą możliwość usystematyzowania wiadomości w pełnym zakresie, uczą pragmatycznego podejścia do zagadnień związanych z algorytmami, abstrakcją, modularyzacją… Zresztą poznanie podstaw oprogramowania czy matematyki, choć wydaje się tylko teorią bez przełożenia na późniejszą pracę, pozwala nam teraz patrzeć holistycznie na pojawiające się problemy.

Jest jednak coś jeszcze ważniejszego. Studia przygotowują nas do tego, żeby się uczyć – a jest to konieczne w tej branży. Musimy przede wszystkim chcieć wiedzę zdobywać i ją aktualizować, w IT nauka się nie kończy. Studia poprzez długotrwałą pracę z innymi dają także fantastyczną możliwość poznania różnych spojrzeń na te same koncepty. To przecież kilka lat nawiązywania przyjaźni i relacji, a wraz z nimi niekończących się dyskusji, konieczności otworzenia się na zdanie innych i zdobycie umiejętności obrony własnych pomysłów. W moim zespole to niezwykle ważne – wiele problemów omawiamy wspólnie, ścierając różne poglądy i doświadczenia.

Myślę, że studia dają coś więcej niż samo zdobycie wiedzy. Wskazują, jak korzystać z tego, co się wie… lub nie. Trochę jak z narzędziami: można nauczyć się wielu z nich, ale w praktyce ważne jest efektywne użycie tego właściwego, które sprawdzi się w rozwiązaniu konkretnego problemu.

Karol Kozłowski: Ja kończę informatykę na uniwersytecie i mogę powiedzieć tak – cieszę się, że zacząłem te studia, a jeszcze bardziej się cieszę, że niedługo je skończę. Studia dały mi sporą dawkę wiedzy, której nigdy w życiu nie wykorzystam i pewnie zmarnowałem trochę więcej czasu niż mógłbym, ale nie mogę odmówić im solidnych fundamentów informatycznych i nauki dyscypliny, której mi brakowało. Studencki reżim ciągłych kolokwiów i egzaminów sprawił, że nauczyłem się organizować swój czas i ogólnie tego, jak się czegoś skutecznie uczyć. A dlaczego wróciłem na studia po stażu?

Studia i dyplom jednak były mi potrzebne do umocnienia swojej pozycji na rynku pracy. Wolałem nie stawiać wszystkiego na jedną kartę, jaką była praca w Hexagonie. Miałem możliwość kontynuowania studiów obok pracy, ale wiedziałem, że nie dałbym rady. Ostatni rok studiów wymaga ode mnie przede wszystkim mnóstwa wolnego czasu na samodzielną naukę, a dzielenie tygodnia na pracę i studia wykracza poza moje umiejętności organizacyjne. Nie byłbym ani dobrym studentem, ani wydajnym pracownikiem w takim trybie. Nie wiem, czy jeszcze trafi mi się taka dobra okazja, jak w Hexagonie, ale zaakceptowałem to ryzyko.

Jakub Matusiak: Ukończyłem informatykę podyplomowo. Studia były dla mnie zwieńczeniem dwuletniego okresu samouczenia, kursów i eksperymentowania z kodem. Był to świadomy i przemyślany wybór. Do podjęcia studiów podyplomowych przekonał mnie mój wykładowca od baz danych, z którym od kilku lat pracowałem w jednej firmie, przy bazach danych przestrzennych. Uczęszczanie na sobotnio-niedzielne zjazdy wymagało sporo samozaparcia, po całym tygodniu pracy etatowej i prowadzenia sklepu internetowego. Było warto, gdyż wybór wynikał przede wszystkim z marzenia o dalszej pracy przy mapach, ale z perspektywy programisty. Pragnąłem zająć się czymś bardziej twórczym, niż moja dotychczasowa praca kartografa, która była różnorodna i ciekawa, ale w dużej mierze odtwórcza.

Czym się różni programista po studiach od tego po kursie?

Adam Kochanowski: W ostatnich latach pojawiło się mnóstwo kursów różnego rodzaju. Są niezwykle kuszące – zaledwie kilka miesięcy czy nawet tygodni nauki, po których na wyciągnięcie ręki czekają świetne zarobki. To jednak pułapka. Na każdego programistę czeka ogrom wyzwań, kiedy tylko zacznie pracę, niezależnie od sposobu, w jaki zdobywał wiedzę. A podpowiedzi, w jaki sposób sobie z nimi poradzić, niestety nie zawsze można wygooglować… Konieczna jest do tego bazowa wiedza. Nasza praca to nie tylko pisanie kodu. Oczywiście, można programować, kompletnie nie rozumiejąc, co się robi. Jednak to świadomość wagi takich elementów jak architektura, wydajność, czytelność kodu itd. decydują o rzeczywistej efektywności pracy programisty. A właśnie ona jest niezmiernie ważna podczas pracy w zespole.

Gdybym miał krótko scharakteryzować nasz team w Hexagonie – oddział łódzki i ten, z którym pracujemy na bieżąco w Sztokholmie – przychodzi mi do głowy właściwie jedno słowo. Jesteśmy inżynierami. Co to oznacza w kontekście pracy programisty?

Odpowiem na przykładzie rozmów rekrutacyjnych. Poszukując nowych pracowników, miałem okazję zaobserwować pewne wzorce u kandydatów. Często wśród osób z wykształceniem kierunkowym obserwowaliśmy otwarty umysł, skłonność do podejmowania dyskusji i przemyślane argumenty. Widać było wyraźnie, że to kandydaci, którzy rozumieją, że każdy problem można rozwiązać na wiele sposobów i nie ma czegoś takiego jak najlepsze narzędzie, framework czy język programowania. Wszystko zależy od kontekstu danego zagadnienia technicznego, ale też biznesowego.

Gdy sam zaczynałem pracę (około 13 lat temu), to na zatrudnienie mógł liczyć tylko najlepszy człowiek na piątym roku studiów. Teraz bardzo się to zmieniło, jednak moim zdaniem warto zainwestować trochę więcej czasu niż poświęcić pół roku na kurs. Moja perspektywa (studenta, specjalisty na każdym etapie od juniora, a teraz już leadera szukającego pracowników) pokazuje, że problemy, z jakimi zmierzy się programista jedynie po kursie, mogą stać się dla niego przytłaczające. A to zdecydowanie odbiera radość z pracy.

Karol Kozłowski: Kursy uczą, jak posługiwać się jakąś konkretną technologią czy językiem, ale nie wymuszają samodzielności. Wielu początkujących programistów wpada w pułapkę, bezmyślnie przepisując kod z kursu bez większego zrozumienia, co potem przekłada się na problemy w próbie napisania czegoś samodzielnie. Oczywiście wszystko zależy od człowieka i jego podejścia, ale już zdarzało mi się spotkać takich “programistów”, którzy myśleli, że wystarczy zrobić kurs i można brać się do roboty. Na studiach jednak wymuszają na tobie sporo samodzielnej pracy i zrozumienia tematu.

Jakub Matusiak: Programista po kursie potrafi użyć narzędzia w granicach zdobytej na kursie wiedzy. Programista po studiach potrafi spojrzeć na problem krytycznie, w oderwaniu od narzędzia i wybrać narzędzie świadomie, pod konkretne zastosowanie. Studia pomagają uniknąć pułapki “religijnego” podejścia do technologii. Uczą spojrzenia przez pryzmat celu – rozwiązania problemu, a nie środka – zastosowania danego narzędzia. Nieodzowna jest również nauka organizacji czasu i własnej pracy oraz wprawki do grupowej pracy nad projektami. Podejście inżynieryjne i doświadczenie zawodowe również zdobywa się w pracy z ludźmi, czego nie uczą kursy, a studia dają możliwość pracy grupowej przed zdobyciem pierwszej pracy w IT.

Co takiego dały Wam studia – w kontekście pracy programisty?

Adam Kochanowski: Social learning. Studia to inni ludzie, współpraca, dyskusje, często odmienne zdanie i pomysły na rozwiązanie tego samego problemu… Wszystko to stanowi nieodłączny element studiowania. Osoby po kursie (zwłaszcza, jeśli był tylko w wersji online i zdalnej) mają bardzo ograniczone możliwości zderzenia się z inną opinią. Może się to przełożyć na pracę zawodową. Zwłaszcza w sytuacji, kiedy konieczne będzie uzasadnienie podjętych decyzji projektowych, tym bardziej w przypadku negatywnego feedbacku.

Studia może nie zawsze są potrzebne do tego, by dobrze programować. To jasne, że są dostępne świetne kursy, a niektórym naprawdę wystarczy pół roku, żeby doskonale orientować się w technologii. Ale lata spędzone na uczelni dają pewien fundament. Lubię mówić, że po studiach „wiesz, jak dużo nie wiesz, ale dzięki temu uczysz się uczyć”. Ta pokora, że zawsze jest coś więcej, czego możesz się nauczyć, przekłada się bezpośrednio na zawodowe życie. Studia uczą, że zawsze warto szukać głębiej, żeby zrozumieć, jak coś działa – od dołu do samego końca. Po co? Nie zawsze, by znaleźć odpowiedź… Także po to, by wiedzieć, kiedy z tego szukania zrezygnować. Bo praca w IT to nieustanny taniec rozwiązań technologicznych z zapotrzebowaniem i wartością biznesową projektów. Nie wystarczy być świetnym programistą, inżynierem, technikiem. Rozumienie strony praktycznej kodowanych projektów, umiejętność doboru odpowiedniego narzędzia są nie do przecenienia w naszej codziennej pracy i dla osiągania celów biznesowych.

Wydobycie piękna i użyteczności z codziennego chaosu. Otwartość, poszukiwanie sensu i najlepszego rozwiązania, umiejętności społeczne i prowadzenia wartościowych dyskusji z konkretnymi argumentami, ukierunkowanie na coś więcej niż kod. To zawdzięczam dziś studiom. Proces studiowania pomaga też zbudować sieć kontaktów, które przydają się w życiu zawodowym.

Jakub Matusiak: Studia pozwoliły mi spojrzeć na technologie z perspektywy dłuższych, zaliczeniowych projektów, rozwiązujących konkretne problemy biznesowe. Uporządkowały wiedzę i stały się drogowskazem do dalszego samodoskonalenia. Otworzyły drogę na rynek pracy, będąc kartą przetargową przy pierwszych rozmowach o pracę programisty. W moim przypadku studia informatyczne sprawdziły się jako rozszerzenie wiedzy geograficznej zdobytej na studiach licencjackich i magisterskich. Rozwijanie w Hexagon aplikacji opartej o wizualizacje mapowe znajduje się w domenie geospatial, czyli na pograniczu geografii i informatyki.

Karolu, czego nauczyłeś się podczas stażu w Hexagon? Jak wiedza zdobyta w praktyce ma się do tego, czego teraz uczysz się na studiach?

Karol Kozłowski: Przede wszystkim nauczyłem się nowego framweworku frontendowego – Vue.js. Nauczyłem się również pisać testy jednostkowe, lepiej posługiwać się narzędziami kontroli wersji, rysować użyteczne diagramy i pisać nowoczesny, czytelny kod w JavaScript. Oprócz tego zdobyłem umiejętności miękkie przy pracy w zespole. Przyznam, że wiedza praktyczna przydała mi się na studiach – w projektach grupowych używałem Vue.js i mam zamiar również wykorzystać go w pracy licencjackiej. Kontrola wersji i umiejętności miękkie również były super przydatne w pracy grupowej na studiach, ale chyba na tym się użyteczność kończy. Na studiach raczej nie pisze się nowoczesnego kodu, nie dba się o jego wygląd i jest mało okazji, żeby wykazać się frontendem.

A jak ocenilibyście program studiów (chodzi o kierunki związane z IT)? Czy dają wystarczającą wiedzę, czy nadążają za dynamicznymi zmianami branży?

Karol Kozłowski: Studia dają niezłe podstawy i wiedzę, która może być zaaplikowana w wielu obszarach branży. Takie rzeczy, jak sztuka rozwiązywania problemów algorytmicznych, zrozumienie działania systemów komputerowych, znajomość paradygmatów i ogólne podstawy programowania są wiedzą dosyć uniwersalnie przydatną. Pod względem technologii to niestety już nie ma tak dobrze. Raczej nie można się spodziewać nowoczesnych frameworków, nawet jeśli są bardzo popularne przez całe lata. Materiały prowadzących zajęcia również nie są zbyt często aktualizowane, więc można łatwo natknąć się na kod, którego dzisiaj nikt nie powinien pisać. Ogólnie, jeśli ktoś chce pracować w po studiach, to sam program studiów mu nie wystarczy. Z pewnością trzeba wyjść poza jego ramy.

Jakub Matusiak: Zaletą studiów jest zdobywanie szerokiej, potrzebnej wiedzy teoretycznej, rozwijanie myślenia krytycznego i stawianie studenta przed trudniejszymi problemami, niż te trywializowane na kursach. Minusem jest opóźnienie programu studiów wobec trendów branżowych oraz niewielkie zaangażowanie w problematykę User Experience, projektowania User Interface i wizualizacji, czyli domeny stricte front-endowej. Student powinien poszerzać swoją wiedzę w ramach ulubionej specjalizacji, łącząc to z wiedzą domenową, często wynikającą z hobby i zainteresowań pozauczelnianych.

Jakie macie rady dla tych, którzy dziś zaczynają przygodę z programowaniem?

Adam Kochanowski: Kiedyś perfekcyjne opanowanie jednego narzędzia (np. Java, C#, SQL) zapewniało znalezienie dobrej pracy w IT. Dzisiaj to już niemożliwe. Ten, kto zaczyna, musi znać wiele narzędzi, technologii – choćby w minimalnym stopniu. Dlatego moja rada dla początkujących to poszukiwanie i sprawdzanie. Na początku swojej kariery zdobywajcie jak najwięcej doświadczeń, poznając różne narzędzia, testujcie, sprawdzajcie wszystko, co się da (to, czego się nie da, najlepiej też). Wszystko po to, żeby zobaczyć, co najbardziej lubicie robić, w czym czujecie się najlepiej. A po pewnym czasie – powiedzmy po 3-4 latach prób i błędów – warto się już wyspecjalizować i szlifować do mistrzowskiego poziomu to wybrane narzędzie, które najbardziej Was zainteresowało. Dzięki temu zyskacie pewność, że będziecie pracowali z tym, co przyniesie Wam najwięcej radości.

Jakub Matusiak: Umiejętnie balansuj pomiędzy generalizacją a specjalizacją. Na samym początku stroń od frameworków i pisz “waniliowy” kod, najlepiej od czystej karty. Staraj się zrozumieć każdą linię kodu, którą napiszesz. Dopiero gdy zrozumiesz, co siedzi “w środku”, weź się za popularne, wartościowe rynkowo frameworki i próbuj rozwiązywać problemy biznesowe. Na tym etapie poznaj ekosystem swojej specjalizacji i naucz się korzystać z jego narzędzi, bazując na popularnej Developer Roadmap.

Zanim zaczniesz programować dane rozwiązanie, spróbuj rozrysować problem na kartce lub wirtualnym arkuszu, nie myśląc w kategoriach kodu. Rozrysuj moduły i komunikację między nimi. Nie wymyślaj koła na nowo – stosuj wzorce projektowe. Najpierw zaprogramuj najprostsze, działające rozwiązanie, dopiero potem myśl o szczegółach i ulepszeniach. Pomaga w tym kontrola wersji. Każdy kolejny zdobyty cel uwieńczaj commitem, aby nie popsuć tego, co dobrze zrobiłeś. Gdy pracujesz już w zespole developerskim, zadawaj dużo pytań i nie wstydź się prosić o wsparcie – unikniesz wielu ślepych uliczek. Prowadź dziennik (Bullet Journal), w którym zapisywać będziesz uwagi zespołu do Twoich Pull Requestów i wnioski z dyskusji projektowych. Raz na pół roku podsumuj najczęściej występujące uwagi i zastanów się, jak rozwijać brakujące umiejętności.

Na koniec. Jakie są – Waszym zdaniem – największe problemy programistów?

Adam Kochanowski: Często zdarzyło mi się obserwować wśród programistów nadmierne przywiązanie do swojej pracy. Kodowanie to w pewnym sensie tworzenie, nic dziwnego, że autorowi zależy na tym, co napisał, staje się z tym bardzo zżyty. Jeśli jednak jego podejście zaczyna się przekształcać w „to jest moje, ja coś stworzyłem”, relacja staje się niezdrowa. Co gorsza, taki programista przekłada docenienie swojej pracy nad wszystko inne. Wiele razy spotkałem się z sytuacją, w której ktoś nie radził sobie z zadaniem, a gdy oferowałem mu pomoc, w odpowiedzi słyszałem: „Nie, to jest moje, sam sobie z tym poradzę”. To jest niestety brak podejścia zespołowego i inżynieryjnego, co realnie przekłada się na wydajność całego teamu.

Miałem nawet styczność z człowiekiem, który był tak przywiązany do swojego kodu, że pisał go w sposób uniemożliwiający przejęcie przez kogokolwiek innego. Moich kolegów z zespołu często przestrzegam przed takim przywiązaniem. Przecież klient, dla którego kodujemy, zawsze może zmienić zdanie i nagle poprosić o coś zupełnie innego. A wtedy do kosza pójdzie cała kilkutygodniowa praca programistów – jak w takiej sytuacji poradzi sobie ktoś tak bardzo zżyty ze „swoją” częścią kodu? A przecież z punktu widzenia celu biznesowego sytuacja nagłej zmiany wymagań jest nie tylko możliwa, ale także zupełnie w porządku. Nasza praca ma służyć osiąganiu tych celów – na to kładę nacisk w zespole. Warto pozbyć się emocji, przywiązania do tego, co stworzyliśmy. Oczywiście nie oznacza to obniżania standardów ani jakości, a jedynie chłodne podejście w ocenie sytuacji, które czasami jest niezbędne, a zawsze wartościowe.

Karol Kozłowski: Zbyt osobiste podejście do narzędzi pracy. Wielu programistów traktuje swój ulubiony język programowania czy framework jak jakąś integralną część siebie, którą trzeba bronić przed wszelką krytyką. Prowadzi to do zamykania się na nowe możliwości i do toksycznego podejścia do ludzi, którzy preferują inne narzędzia. W internecie można zobaczyć masę memów, które zostały stworzone do żartów z programistów i jest to jak najbardziej w porządku, dopóki są one traktowane jako żarty. Niestety, nieraz można spotkać programistę, który traktuje innych ludzi z góry, bo pisze w “bardziej elitarnym języku” czy coś w tym stylu. Nie są to ludzie, z którymi chciałbym pracować. Język programowania to tylko narzędzie.

Jakub Matusiak: Wpadnięcie w pułapkę wiecznego Regular/Mid Developera, czyli pozorna eksperckość, a w rzeczywistości zamknięcie w ograniczonej ramie powtarzanych samodzielnie czynności programistycznych. Programowanie to nie zajęcie dla samotnego strzelca, a tzw. “piwnica” to nie jest miejsce dla seniority. Istotnym problemem programistów jest niewielkie zaangażowanie w komunikację. Patrzenie przez pryzmat tylko swojej części systemu. Ograniczone zrozumienie wartości klienckiej i biznesowej rozwijanego oprogramowania, przy zbytnim przywiązaniu do aspektu technologicznego. Brak profesjonalnej świadomości szans i ograniczeń wynikających z własnej osobowości, motywatorów i demotywatorów.

Na grupach dyskusyjnych łatwo dostrzec postawę “Rockstar Developera”. Senior Developer tym odróżnia się od “gwiazdy programowania”, że pamięta o zespołowym charakterze zawodu programisty, nie jest “wyznawcą” technologii i dąży do dzielenia się swoją wiedzą.

baner

Zdjęcie główne pochodzi z unsplash.com.

Od ponad ośmiu lat pracuje jako redaktorka, dziennikarka i copywriterka, a od niedawna dba o treści oraz rozwój portalu poświęconego branży IT. Autorka wywiadów, tekstów eksperckich, newsów.

Podobne artykuły