Rozmowa i opinie po prezentacji „How to make it as a junior developer and stay sane”



Dima Boyko (Software Engineer, inFakt.pl): Słuchaliśmy teraz prezentacji „How to make it as a junior dev and stay sane” i widzę, że też masz napisane Junior Developer, czyli to samo.

Agnieszka Abgaro Zachariasiewicz (Ruby developer, inFakt.pl): Dokładnie.

Dima: Czy historia tej prezentacji jest podobna do Twojej?

Agnieszka: Nie wiem, czy podobna, ale na pewno było tam dużo ważnych wskazówek właśnie z perspektywy pozycji juniorskiej według mnie. Dziewczyna opowiadała o bardzo ciekawych rzeczach. O takich, żeby na przykład nie bać się zadawać pytania, nawet jeżeli są one trywialne dla osób, które siedzą koło Ciebie.

Powiedzmy jesteś sobie juniorem, a koło Ciebie siedzą sami seniorzy. Masz zrobić jakieś zadanie, z którym masz problem i nie wiesz jak to zrobić. Wydaje Ci się, że głupio jest podejść i zapytać, a właśnie ona zachęcała do tego, że nie ma głupich pytań i trzeba próbować.

I nie chodzi o to, żeby postępować według jakichś schematów, tylko trzeba po prostu próbować i właśnie „failować” (że tak powiem - tak jak było to tam ujęte) i tak możesz dojść do perfekcji.

Dima: No właśnie było takie hasło, że nie ma głupich pytań. Czy zgadzasz się z tym? Czy jednak widziałaś sytuacje, że pytania mogą być głupie?

Agnieszka: Czasem się tak wydaje. Myślę, że bardzo często się tak wydaje, że pytania, które przychodzą do głowy są głupie i trywialne i głupio jest z nimi pójść, ale raczej staram się chodzić i pytać, bo faktycznie to pomaga, a developerzy są bardzo otwarci i zawsze pomagają.

Także to też na tym polega, że jeden drugiemu pomaga. Każdy był w tej sytuacji na początku, także wie jak to było i wie, że czasem trafia się na ścianę, że ma się jakiś problem, z którym nie można sobie poradzić i fajnie jest pójść do kogoś kto Ci to.. kto Ci pokaże inną perspektywę. Być może naprowadzi Cię na coś. Niekoniecznie da od razu jakąś gotową odpowiedź, ale wskazówki, które pozwolą zrobić zadanie do końca i zrobić je dobrze.

Dima: Ona właśnie wspominała, że bardzo dobrze jak junior ma mentora, do którego zawsze może pójść i zapytać się o cokolwiek. Czy Ty masz taką osobę i czy pytasz konkretnie tę osobę, czy każdego developera w firmie?

Agnieszka: Mam mentora, a raczej mentorkę, która zawsze mi pomaga, kiedy natrafiam na jakikolwiek problem i zawsze znajdzie dla mnie chwilę. Co jest dla mnie bardzo ważne i jest dla mnie wielkim wsparciem, bo faktycznie mogę przyjść do niej z każdym problemem. Nie odeśle mnie z kwitkiem i zawsze mi wytłumaczy bardzo przystępnie lub podeśle jakieś materiały, z których mogę sobie coś poczytać. Także naprawdę uważam, że jest to bardzo ważne.

Oczywiście też jest tak, że moja mentorka ma swoje zadania i pracuje w osobnym teamie, także nie zawsze jest tak, że ma czas dla mnie i powiedzmy kiedy czuję, że ona właśnie ma nawał pracy i jest powiedzmy jakiś intensywny czas to też nie mam problemu z tym, żeby podejść do kogokolwiek innego. Wszyscy naokoło mi mówią, że jeżeli mam jakikolwiek problem to żeby do nich przychodzić i żeby pytać, bo jeżeli tylko dadzą radę to mi pomogą, a w większości wypadków jednak dadzą radę.

Dima: Ok. Właśnie, jeżeli chodzi o czas, też było wspominane w prezentacji, że dla juniora jest bardzo ważna jest rzecz taka rzecz jak time management. Warto nie spędzać za dużo czasu nad rozwiązaniem problemów, które są za trudne dla juniora i generalnie bardzo zarządzać swoim czasem i bardzo mądrze. To jest bardzo ważne.

Czy używasz jakichś narzędzi do zarządzania czasem oprócz tego co używamy wszyscy do zadań? Prezenterka mówiła o kalendarzu Google.

Agnieszka: Tak. No my używamy akurat w pracy Jira’y i mamy też planowanie sprintu, na którym wyznaczamy sobie na każdy dzień zadania, planujemy sobie daną ilość wyznaczonych godzin jakie mamy przepracować. Każde zadanie sobie estymujemy na planowaniu ile może zająć i później uzupełniamy każdy dzień danego tygodnia.

Powiedzmy, jeżeli sprint jest tygodniowy, to w ciągu tygodnia rozdzielamy sobie te zadania na cały tydzień tak, żeby wypełnić sobie cały ten dostępny czas. Jeżeli pracujemy powiedzmy - 8 godzin - to efektywnego programowania jest 5. W tym są oczywiście też zawarte zadania, jeżeli mamy o czymś poczytać i czegoś się nauczyć i zagłębić jakąś wiedzę. Także te 3 godziny, które pozostają to jest czas dla mnie na jakieś jedzenie, dodatkowe spotkania i wszelkiego rodzaju rzeczy, które dzieją się w firmie.

Uważam, że to bardzo pomaga, bo faktycznie na planowaniu jestem w stanie ocenić z moją mentorką ile mniej więcej może mi zająć to zadanie i mogę je jakoś wyestymować, ona może to skontrolować i powiedzieć mi powiedzmy, że: „No jednak tutaj nie wzięłaś wszystkiego pod uwagę także daj sobie troszkę więcej czasu”.

Powiedzmy, że jeżeli robię dane zadanie, włączam sobie timer i jeżeli dochodzę do takiego momentu, kiedy wykorzystuję cały ten założony czas, a zadanie dalej nie jest rozwiązane i mam problem - bo jeżeli wiem jak rozwiązać i wiem co zrobić dalej tylko po prostu mi się rozciągneło no to powiedzmy, że staram się raczej robić je dalej i nie zawracać nikomu głowy, ale jeżeli nie wiem to to jest dla mnie sygnał kiedy idę do mojej mentorki i pytam.

Pokazuję jaka jest sytuacja, ile miałam dostępnego czasu, ile zrobiłam i czy nie może mnie jakoś wspomóc i jakoś popatrzeć na to co zrobiłam i ewentualnie dać mi jakąś radę jak mogę sobie z tym poradzić dalej, jeżeli się zablokowałam bo zdarza się tak.

Dima: A taka wycena za zadań? Czy na początku zgadzały się wyceny i realne czasy wykonania zadania? Czy to po prostu na początku było to takie trochę strzelanie i później z czasem i z doświadczeniem to poprawiasz, czy od razu było tak, że zadania były wycenione mniej więcej na tyle ile zajmowały w rzeczywistości?

Agnieszka: Na początku myślę, że to jest zawsze strzelanie, przynajmniej w moim przypadku to było strzelanie. Nie miałam wielkiego pojęcia ile może mi zająć dane zadanie, szczególnie, jeżeli zajmowałam się rzeczami, z którymi wcześniej nie miałam styczności.

Powiedzmy, wydzielenie serwisu, którego wcześniej nie wydzielałam - nie do końca wiedziałam ile może mi zająć. Posiłkowałam się właśnie też na pewno moją mentorką, która mi troszkę podpowiadała, ale to też każdy chyba musi się nauczyć sam wyceniać zadania, także były często przestrzelone. Czasem robiłam krócej, czasem robiłam dłużej.

Jeżeli krócej to zawsze są jakieś dodatkowe zadania, które można sobie dobrać, jak dłużej no to wtedy właśnie kiedy kończy mi się czas no to idę i rozmawiam z moją mentorką. Także myślę, że ciężko jest się tego nauczyć. Uczymy się tego cały czas prawdopodobnie, ale pewnie wraz z doświadczeniem przychodzi to coraz łatwiej.

Dima: Też nawet był taki cytat na jednym ze slajdów, że „Every junior developer has the burnout”. Czy miałaś coś takiego w swojej historii i jak sobie z tym poradziłaś, jeżeli tak?

Agnieszka: Szczerze mówiąc to wydaje mi się, że jeszcze nie miałam.

Dima: Jeszcze?

Agnieszka: Być może mnie to jeszcze spotka, myślę że mogło być blisko, ale trafiłam do inFakt i tak naprawdę zostałam tu bardzo fajnie przyjęta i dostałam bardzo mocne wsparcie właśnie mentorskie, gdzie pozbyłam się wszelkich wątpliwości i jest to dla mnie bardzo duża wartość.

Dima: Prezenterka wspominała, że jednym ze sposobów na uniknięcie takiej sytuacji jest ustawienie sobie celów, takich jak short term goals i long term goals. Możesz opowiedzieć o swoich? Jakie masz cele na karierę, jakie masz długoterminowe cele?

Na przykład prezenterka mówiła, że chciałaby „dorosnąć” do project managera

Agnieszka: Szczerze mówiąc, to na ten moment najbardziej chciałabym rozwijać się, tak żeby dojść do poziomu seniora w Ruby. Dalej oczywiście, że gdzieś tam z tyłu głowy myślałam o takich stanowiskach jak Scrum Master czy Product Owner, ale chciałabym się skupić.. Znaczy właśnie to tak ciężko, bo to są długoterminowe cele, ale ten długoterminowy cel tak naprawdę żeby stać się seniorem to też nie jest moment. Także na ten moment chciałabym jak najbardziej się rozwinąć w samym języku i na pewno chciałabym się też nauczyć jakiegoś innego języka programowania.

Dima: No właśnie. Jaki sposób rozwoju i trochę eskalowania bardziej Ci odpowiada? Developer, który jest dobry w jednym języku i teraz kiedy jest czas na dalszy rozwój po prostu pociąga inne technologie? Czy developer, który jest dobry w jednym języku i dalej rozwija swoje umiejętności menadżerskie? Która ścieżka Ci bardziej odpowiada? Więcej technologii, czy przejście do innego trybu?

Agnieszka: Ciężko jest mi ocenić menadżerowanie, bo nie miałam do tej pory z tym wielkiej styczności. Na pewno chciałabym spróbować i pewnie jak spróbuje to ocenię, czy chciałabym iść w to dalej. Także ciężko jest mi na ten moment to właśnie powiedzieć, bo myślę, że to przyjdzie do mnie z czasem. I troszkę jeszcze te moje cele się jakoś tam w głowie rozwijają. Mam sporo pomysłów, ale nie są one jeszcze sprecyzowane - myślę, że spokojnie do pierwszego roku pracy, kiedy będę się jeszcze uczyła to się pewnie wyklarują już silnie. Silniej na pewno, niż w tym momencie. Ale na ten moment stawiam na to, żeby się jak najbardziej rozwijać i jak najwięcej się uczyć, także nie myślę aż tak długoterminowo o menadżerowaniu, ale na pewno chciałabym spróbować.

Dima: Ok. W prezentacji było bardzo dużo takich rad dla juniorów. Którą najbardziej weźmiesz pod uwagę w swojej dalszej pracy?

Agnieszka: Którą najbardziej wezmę pod uwagę? Szczerze mówiąc uważam, że to był zbiór takich zasad, które.. z których wszystkie były ważne. Zarówno to, żeby pytać o rady, to żeby dobrze zarządzać swoim czasem. Ciężko jest mi wycenić, która jest najważniejsza.

Trzeba znaleźć chyba swój „złoty środek”. Ja raczej staram się nie bać pytać i zarządzać sobie czasem. Właśnie to tak naprawdę jest narzucone przez system Scrumowy, także dalej się go uczę i staram się z nim współpracować. Nie wiem, która jest najważniejsza. Wszystko jest ważne. Na pewno też to, żeby pamiętać o sobie. I żeby faktycznie się właśnie nie wypalić to dawać z siebie dużo, ale robić sobie też jakieś przerwy, bo to jest potrzebne do regeneracji i do tego, żeby mieć siłę dalej się rozwijać, bo to jest ciągły rozwój.

Dima: I to może być taką radą dla juniorów od Ciebie?

Agnieszka: Myślę, że tak.

Dima: A powiedz jeszcze jedno. Rada dla managerów od siebie?

Agnieszka: Dla managerów?

Dima: Mhm. Też było o tym wspomniane na prezentacji. Kilka albo nawet kilkanaście rad dla managerów. Która według Ciebie jest ciekawa? Albo zupełnie Twoja?

Agnieszka: Tak naprawdę to wszystko było związane z tym, żeby „być” dla tego juniora i żeby go wspierać, żeby powiedzieć mu „stop”, jeżeli przesadza w jakimś momencie, że się przepracowuje, żeby pomagać mu w trudnych chwilach. I myślę, że to jest najważniejsze, bo jeżeli jesteś wrażliwy na tę drugą osobę i z nim rozmawiasz to wystarczy.

Dima: Dzięki.

Agnieszka: Dzięki.