Junior -> Mid

0

Cześć, słowem wstępu, czy tam tl:dr, mam nieco ponad pół roku doświadczenia w Javie i zastanawiam się w jakim kierunku się doszkalać w wolnym czasie.

Co potrafię?
-dobrze znam podstawy samego języka, trochę gorzej z niektórymi nowościami z JDK8, niektóre umiem a na innych jestem na etapie: "wiem, że mogę to zrobić lepiej z pomocą JDK8 i stacka", temat concurrency jest mi jednak obcy, tutaj ogarniam może podstawy podstaw
-nieźle ogarniam teoretyczne zasady Clean Code, jednak czasami, pod presją czasu chociażby, zdarza mi się napisać jakąś chorą ifologię, zamiast zastosować się do lepszych rozwiązań. Jeżeli jest czas to przed pushowaniem kodu wracam do niego i refaktoruję co niektóre babole.
-na podstawowym poziomie rozumiem zagadnienia niższego poziomu, model pamięci, GC
-potrafię zrobić podstawowe rzeczy w Springu, jakieś REST API, jakiś CRUD z zabezpieczeniami (Security)
-pracowałem z relacyjnymi i nierelacyjnymi bazami danych
-posiadam podstawową (teoretyczną i praktyczną) wiedzę na temat SOA i mikroserwisów
-co do narzędzi, podstawowa obsługa Mavena, Jenkinsa, GITa, terminala Linuxowego
-z pokrewnych technologii, HTML/CSS/JS, trochę Angulara

Jak widać wspólne mianowniki tego wszystkiego to "podstawowy", "nieźle", o żadnym temacie z powyższych nie mogę powiedzieć że faktycznie coś dobrze umiem. Zastanawiam się więc, co przede wszystkim podszkolić najpierw? Załóżmy że za pół roku będę chciał zmienić pracę, co potencjalny pracodawca będzie chciał zobaczyć w moim repo? O co głównie będę pytany na rozmowie? Po głowie chodził mi np. pomysł stworzenia większego serwisu Internetowego opartego o mikroserwisy, z przodu Angular, z tyłu SpringBoot, wszystko oczywiście pokryte testami i pisane / projektowane wg. zasad Wujka Boba, no i oczywiście z CI/CD. Obawiam się jednak, że może to być porwanie się z motyką na słońce i lepiej byłoby zacząć od czegoś bardziej realnego.

0
Emdzej93 napisał(a):

Cześć, słowem wstępu, czy tam tl:dr, mam nieco ponad pół roku doświadczenia w Javie i zastanawiam się w jakim kierunku się doszkalać w wolnym czasie.

Co potrafię?
Załóżmy że za pół roku będę chciał zmienić pracę, co potencjalny pracodawca będzie chciał zobaczyć w moim repo? O co głównie będę pytany na rozmowie?

Na rozmowie będziesz pytany głównie z tego co robiłeś w pracy do tej pory i ewentualnie z tego, co akurat w danej firmie będzie im jeszcze potrzebne. Jak ktoś cię zaprosi na rozmowę widząc, że masz doświadczenie w X, Y, Z to zwykle dlatego, że potrzebuje osoby do X,Y,Z. Jest to broń obosieczna. Jeśli pracujesz z fajnym stackiem i gdzie są dobre praktyki, to działa to na twoją korzyść. A jeśli pracujesz w czymś słabej jakości i technologami sprzed wielu lat, to żaden projekt na githubie w czymś nowoczesnym i fajnym ci zwykle nie pomoże, to chyba że jest o jakaś totalna nowość i nie ma jeszcze na rynku ludzi z doświadczeniem komercyjnym w tym temacie, a ta firma tego właśnie szuka.

Ja nie pracuję w javie akurat, ale kolegów mam pracujących w Springu. Ci którzy się załapali do dobrych firm na starcie, w wolnym czasie zajmują się życiem, a w pracy pracą i na brak kolejnych ofert z coraz wyższą stawką nie narzekają.

0
sqlka napisał(a):

Na rozmowie będziesz pytany głównie z tego co robiłeś w pracy do tej pory i ewentualnie z tego, co akurat w danej firmie będzie im jeszcze potrzebne. Jak ktoś cię zaprosi na rozmowę widząc, że masz doświadczenie w X, Y, Z to zwykle dlatego, że potrzebuje osoby do X,Y,Z. Jest to broń obosieczna. Jeśli pracujesz z fajnym stackiem i gdzie są dobre praktyki, to działa to na twoją korzyść. A jeśli pracujesz w czymś słabej jakości i technologami sprzed wielu lat, to żaden projekt na githubie w czymś nowoczesnym i fajnym ci zwykle nie pomoże, to chyba że jest o jakaś totalna nowość i nie ma jeszcze na rynku ludzi z doświadczeniem komercyjnym w tym temacie, a ta firma tego właśnie szuka.

Ja nie pracuję w javie akurat, ale kolegów mam pracujących w Springu. Ci którzy się załapali do dobrych firm na starcie, w wolnym czasie zajmują się życiem, a w pracy pracą i na brak kolejnych ofert z coraz wyższą stawką nie narzekają.

Trochę to rozumiem w ten sposób, że jeżeli nie trafiłem na fajny stack w pierwszej pracy to mam przechlapane później ;) No a pech chciał, że faktycznie korzystamy z nieco niszowych technologii, mamy głównie klientów w sferze bankowej, gdzie z tego co widzę mamy trochę związane ręce co do wyboru technologii.

0

Jeśli chcesz pracować w Springu, to według mnie powinieneś się szkolić we własnym zakresie w Springu i szukać pracy jak najwcześniej w Springu, albo przynajmniej powinieneś się liczyć z tym, że pensja przy zmianie na Springa raczej nie urośnie.

Ale może lepiej gdyby się wypowiedzieli w temacie bardziej doświadczeni koledzy jak na przykład @Wibowit albo @aurel .

4

A ja tam uważam że ludzie za bardzo się przywiązują do tych "framework-ów" zwłaszcza w Polsce. Za duży nacisk ludzie kładą na narzędzia i potem powstają np: "high skilled 5 years experienced Senior Django developerzy" co sie pocą przy napisaniu prostego dekoratora... albo tworzą modele w Django jak szaleni i w ogóle są przy tym tacy elo elo że z ich wzroku można wyczytać
"ziomusiu ja na tym zeby zjadłem" a ni kuta nie potrafią powiedzieć co to "deskryptor" i jak on "działa"
(to akurat z mojego podwórka w innych dziedzinach przypuszczam podobnie)

Rynek wymaga świetnej znajomości frameworkow ? bo nie spotkałem się z tym ? Szukałbym firmy która pisze w tym czym chce i da mi możliwość podciągnąć się z tematu.
Znajomy ostatnio "wyemigrował" z PL i jego znajomości Django była bliska "0" nie przeszkodziło to jego firmie zaproponować mu stanowiska Seniorską Backend Dev za dobrą stawkę. Wystarczyła dobra znajomość Pythona, SQL, Linuxa i clean code/unit testów.

Nie spotkałem się też z sytuacją żeby wymiatacza z języka/domeny/technologii odzrzucono z powodu braku znajomości frameworka.

Ja bym się koncentrował raczej na poszerzeniu wiedzy z: Javy (wielowątkowość, gc, SOLID), algorytmów, struktur danych, znajomości HTTP, security, bazy danych (SQL vs NoSQL) aniżeli uczenia się w domu Spring-a czy jakiegokolwiek frameworka.

Ale może ja się myle albo moje doświadczenie są dalekie od tego czego wymaga rynek i firmy ?

0
DolBo napisał(a):

A ja tam uważam że ludzie za bardzo się przywiązują do tych "framework-ów" zwłaszcza w Polsce. Za duży nacisk ludzie kładą na narzędzia i potem powstają np: "high skilled 5 years experienced Senior Django developerzy" co sie pocą przy napisaniu prostego dekoratora... albo tworzą modele w Django jak szaleni i w ogóle są przy tym tacy elo elo że z ich wzroku można wyczytać
"ziomusiu ja na tym zeby zjadłem" a ni kuta nie potrafią powiedzieć co to "deskryptor" i jak on "działa"
(to akurat z mojego podwórka w innych dziedzinach przypuszczam podobnie)

Rynek wymaga świetnej znajomości frameworkow ? bo nie spotkałem się z tym ? Szukałbym firmy która pisze w tym czym chce i da mi możliwość podciągnąć się z tematu.
Znajomy ostatnio "wyemigrował" z PL i jego znajomości Django była bliska "0" nie przeszkodziło to jego firmie zaproponować mu stanowiska Seniorską Backend Dev za dobrą stawkę. Wystarczyła dobra znajomość Pythona, SQL, Linuxa i clean code/unit testów.

Nie spotkałem się też z sytuacją żeby wymiatacza z języka/domeny/technologii odzrzucono z powodu braku znajomości frameworka.

Ja bym się koncentrował raczej na poszerzeniu wiedzy z: Javy (wielowątkowość, gc, SOLID), algorytmów, struktur danych, znajomości HTTP, security, bazy danych (SQL vs NoSQL) aniżeli uczenia się w domu Spring-a czy jakiegokolwiek frameworka.

Ale może ja się myle albo moje doświadczenie są dalekie od tego czego wymaga rynek i firmy ?

Zaznaczę tylko, że obecnie nie szukam nowej firmy, chodzi mi o rozwój i perspektywy na przyszłość, gdy za powiedzmy rok zechcę zmienić pracę. No i muszę przyznać, że podświadomie podzielam Twoje zdanie na ten temat, tak mi się przynajmniej wydaję że wejście w Springa mając mocne podstawy nie będzie problemem. Tym bardziej, że nie jestem w nim kompletnie zielony. No ale ciężko zdecydować co robić, skoro 3/4 ogłoszeń które widze to Spring + Hibernate ;)

Swoją drogą, powiedzmy że olewam Springa, w pracy robię swoje a w domu po prostu douczam się podstaw. Ma ktoś pomysł na jakiś ciekawy projekt? Wszystkie "advanced java projects" jakie znajduje to CRUDy oparte o Springa / inny framework.

3

A ja tam uważam że ludzie za bardzo się przywiązują do tych "framework-ów" zwłaszcza w Polsce.

To trochę paradoks. Bo frameworki to są rzeczy, które można ogarnąć jako tako czasem w kilka dni, czasem kilka tygodni, a maks dwa, trzy miesiące, żeby jako tako się tym sprawnie posługiwać, a firmy piszą w ogłoszeniach o pracę rzeczy typu "wymagane 2 letnie doświadczenie z React", tak jakby to była jakaś fizyka kwantowa.

W sensie kurczę, frameworki są po to, żeby ułatwiać pracę, a nie po to, żeby się ich kilka lat uczyć. Czyli w zasadzie jest tak raczej, że uczysz się frameworka przez kilka tygodni, a potem tylko pogłębiasz wiedzę oraz aktualizujesz (wraz z nowymi wersjami frameworka).

Owszem, można faktycznie być ekspertem danego frameworka, ale to już jest poziom potrzebny do rozwijania samego frameworka (czyli np. eksperci React pracują zwykle w Facebooku) ew. do bycia nauczycielem/autorem kursów/książek do danego frameworka i to już daleko wychodzi poza normalny poziom wymagany do tworzenia apek.

Pod "React" podczepcie sobie nazwę dowolnie innego hajpowego frameworka.

0

Ja to nie rozumiem aż tak ciężko Ci wejść w przykładowe oferty pracy i podejrzeć czego mniej więcej wymagają? Te technologie za pół roku nie znikną, a da Ci jakąś podstawę do tego nad czym mógłbyś ewentualnie popracować. Naprawdę zadziwia mnie fakt że przychodzisz na forum i pytasz jakiś randomów nt. kariery zawodowej. A najlepiej to od razu idź na rozmowę kwalifikacyjną i zrób konfrontację na temat tego co wiesz faktycznie, a tego czego wymagają.

1
DolBo napisał(a):

A ja tam uważam że ludzie za bardzo się przywiązują do tych "framework-ów" zwłaszcza w Polsce. Za duży nacisk ludzie kładą na narzędzia i potem powstają np: "high skilled 5 years experienced Senior Django developerzy"

To ma przełożenie na agencje pośredniczące i rekruterów. Śledziłem nie tak dawno dyskusje na grupach rekruterów w akcji poszukiwania developerów z wyraźnym wymaganiem klienta "3 lata doświadczenia komercyjnego z tym frameworkiem". Zadanie ciężkie bo framework zaistniał komercyjnie dopiero 2 lata wcześniej.

Wymaganie lat komercyjnego doświadczenia z konkretnym frameworkiem powinno zapalić w głowie czerwone światło. Firmę omijać daleka.

Jak znasz się dobrze na tym co i jak żeby system i produkt działał to nauczysz się szybko framaworka który ułatwia pracę.

Jak jest wymagana perfekcja w wymiataniu we frameworku to firma nie robi nic ponad szybko naklepane gotowce, szybkość klepania gwarantuje wymiatanie we wrameworku. Stawiasz pięćdziesiątą kopię rawie tego samego serwisu webowego dla restauracji albo warsztatu samochodowego to musisz wymiatać we frameworku żeby oddać produkt nie tracąc na nim więcej jak 4 godziny twojej pracy, resztę zrobi grafik.

Jak już osiągniesz stopień wymiatacza frameworka to wejdzie nowy framework na którego będą szukali ludzi z dwoma latami komercyjnego doświadczenia z nim, a ty będziesz znał się tylko na starym frameworku, W stopniu perfekcyjnym ale nic więcej jak stary framework to tak za bardzo nie znasz.

Informatyka to więcej jak programowanie.
Programowanie to więcej jak biegłość we frameworku.

1 użytkowników online, w tym zalogowanych: 0, gości: 1