Jak zapewne już wiesz, tradycyjnie w branży technologicznej programistów dzieli się na cztery kategorie w zależności od poziomu ich kwalifikacji: Junior, Średniozaawansowany, Senior i Lider zespołu. Lub pięć, jeśli uwzględnisz stażystów zajmujących się kodowaniem jako najniżej usytuowanych „żołnierzy” w branży programistycznej. Oczywiście klasyfikacja ta jest dość warunkowa i może być interpretowana różnie w zależności od firmy bądź kraju. Jest to często mylące dla początkujących programistów, którzy znajdują się na początku swojej kariery zawodowej w tworzeniu oprogramowania i zastanawiają się, co tak naprawdę trzeba zrobić, aby z młodszego programisty stać się starszym programistą. Junior → Senior. Ile lat potrzebujesz, aby zostać starszym programistą Java - 1Właśnie na to pytanie postaramy się dziś odpowiedzieć. Jak długo trwa stanie się Senior Java Developerem?

od 3 do 7 lat

Jak zwykle w branży technologicznej nie ma zgodnego porozumienia co do tego, ile czasu powinno zająć przejście od stanowiska Junior Developera do Senior. I najprawdopodobniej nigdy nie będzie, ponieważ odgrywa tu rolę tak wiele czynników, jak rodzaj firmy, w której się pracuje, warunki na rynku pracy, indywidualne doskonalenie się, relacje w zespole itd. Jeśli jednak z setek różnych opinii wyodrębnimy konkretną liczbę, to będzie to średnio od 3 do 7 lat. Najniższe średnie szacunki (dotyczące liczby lat potrzebnych do osiągnięcia statusu Seniora) to około 2-3 lat (w odpowiednich okolicznościach i w firmie, w której często się awansuje), a maksymalne to 10-15 lat. Jak zauważa wielu doświadczonych programistów, zależy to również od tego, co dokładnie rozumiemy przez osiągnięcie poziomu Senior: czy tylko posiadanie pracy z takim tytułem i odpowiadające jej wynagrodzenie, czy też praktyczne umiejętności, doświadczenie i kompetencje, które prawdziwi Senior Developerzy otrzymują w wyniku wielu lat ciężkiej pracy.

Opinie

„Tytuł zdecydowanie różni się w zależności od miejsca. Ogólnie rzecz biorąc, widzę starszego programistę jako osobę, która potrafi wskoczyć do złożonej bazy kodu i dobrze prosperować, potrafiąc kompleksowo wdrożyć istotne funkcje, prowadząc/pomagając młodszym programistom w rozwoju, nadążając za najnowszą i najlepszą technologią oraz ustalając, co pasuje, a co nie itp. Z tego punktu widzenia uważam, że ta podróż trwa około 5 lat. Ponownie, nie daj się zwieść tytułowi. Niektóre miejsca przesadzają z awansami, inne w ogóle rezygnują z tytułów (każdy programista jest SDE z różną skalą płac), a wiele z nich oznacza rozwój nietechniczny, który zajmuje dużo więcej czasu” - powiedział Wes Winn, doświadczony programista pracujący w Smartsheet. Andrew Sharpe, inżynier oprogramowania w firmie VMware, twierdzi, że jest to 10-15 lat: „Być może 10–15 lat doświadczenia. W VMware mamy kilka poziomów stanowisk MTS, zakończonych posadą Senior MTS, następnie kilka poziomów stanowisk Staff Engineer, zakończonych Senior Staff Engineer, a w końcu Principal Engineer. Tak więc tytuł „senior” może być używany na kilku poziomach.” Jak zauważył Rajkumar Bhaduri, kierownik ds. badań i rozwoju w TEOCO Corporation, liczba lat może również w dużym stopniu zależeć od kraju, w którym się pracuje: „1–2–3 lata w Indiach. 10-20 lat w USA”. „Według menedżera ds. rekrutacji, którego opinia jest tak naprawdę jedyną istotną: kiedy można dostać pracę z tytułem „Senior Software Developer”, nie wcześniej. Możesz spędzić dekadę na dostarczaniu komercyjnego oprogramowania i nikogo to nie obchodzi. Potrzebujesz jedynie tytułu. Tytuł ten uzyskałem dopiero po odejściu od pracodawcy, u którego kariera rozwijała się bardzo powoli (MS) i objęciu wyższego stanowiska w NoA. Jak zdobyłem tę pracę? Zwaliłem z nóg rekruterów. Jak ja to zrobiłem? Cóż, dekada doświadczenia nie zaszkodziła”, podzielił się swoim doświadczeniem w tej sprawie Tim Cowley, były starszy inżynier oprogramowania w Nintendo.

Jak zostać Senior Java Developerem szybciej? Wskazówki i zalecenia

Ponieważ liczba lat potrzebnych do uzyskania statusu Seniora może być bardzo różna, na pewno można zrobić wiele, aby to przyspieszyć. Oto kilka wskazówek i zaleceń od doświadczonych programistów, jak najszybciej osiągnąć poziom seniora.

1. Zbudowanie solidnych podstaw wiedzy z zakresu programowania.

Często dobra znajomość podstawowych zagadnień związanych z programowaniem bardzo pomaga w rozwoju kariery. Przedmioty te obejmują myślenie komputacyjne, matematykę i algebrę boole'a, struktury danych, algorytmy, wzorce projektowe, paradygmaty programowania itd. Nie musisz się oczywiście wszystkiego uczyć, ale im mocniejsze będą podstawy teoretyczne, tym łatwiej będzie później osiągnąć szybki postęp w karierze. Junior → Senior. Ile lat potrzebujesz, aby zostać starszym programistą Java - 2

2. Poświęć wystarczająco dużo czasu i wysiłku, aby naprawdę opanować swój język programowania.

Następnie, oczywiście, trzeba mocno się zaangażować, aby w znacznym stopniu opanować język programowania, w naszym przypadku Javę oraz związane z nim technologie. Istnieje wiele sposobów nauki teorii Javy, takich jak podręczniki, kursy online lub tutoriale na YouTube, a to tylko kilka z nich. Kolejnym etapem jest zdobycie wystarczającego doświadczenia praktycznego i zrozumienie, jak zastosować język. Mimo że przez całą karierę programisty nie należy przestawać się uczyć, to jednak opanowanie podstaw języka na poziomie początkującym jest ważnym czynnikiem wpływającym na szybkość pogłębiania wiedzy.

3. Poznaj dobrze najpopularniejsze frameworki Java.

Kolejnym krokiem byłoby poznanie najpopularniejszych frameworków Javy, im więcej, tym lepiej oraz sposobów ich wykorzystania. Zacznij od Spring i Hibernate, ponieważ te frameworki są najczęściej wymieniane w opisach stanowisk dla programistów Java.

4. Wybierz swoje IDE i opanuj je.

Kolejną dobrą radą doświadczonych programistów Java jest przyzwyczajenie się do korzystania z wybranego przez siebie IDE. IntelliJ IDEA i Eclipse to najpopularniejsze IDE dla programistów Java. Przy okazji, jeśli nie wiesz, CodeGym ma specjalną wtyczkę do IntelliJ IDEA, co pozwoli ci zacząć przyzwyczajać się do tego IDE podczas nauki podstaw Javy na CG.

5. Naucz się korzystać z systemów kontroli wersji.

Korzystanie z systemów kontroli wersji, z których najpopularniejszym jest GitHub, to kolejny rutynowy element pracy programisty Java, dlatego też warto poznać i dowiedzieć się wszystkich szczegółów na temat tych narzędzi.

6. Nieustannie pracuj nad ulepszaniem swojego kodu.

Istnieje wiele sposobów i podejść do poprawy jakości kodu, takich jak czytanie cudzego kodu, korzystanie z code reviews (CR) lub czytanie książek na ten temat. Jednym z najpopularniejszych będzie Czysty kod. Podręcznik dobrego programisty autorstwa Roberta C. Martina.

7. Poznaj architekturę oprogramowania.

Nauka o architekturze oprogramowania to kolejna porada dla tych, którzy czują się już pewnie z językiem i głównym stosem technologii związanych z tworzeniem Javy.

8. Programuj każdego dnia.

Oczywiście należy też jak najwięcej ćwiczyć, pisząc kod w Javie codziennie lub tak często, jak to możliwe, aby mieć pewność, że nowa wiedza i umiejętności będą zastosowane w pracy jako programista Java.