kilka pytań o technologie i zmiane języka

0

Hej!
Od jakiegoś czasu uczę się c#. Uznałem ze po opanowaniu podstaw front-endu (css, js, react), trzeba wziąć się za backend. Przyznam, że ciągłe ustawianie layout, dodawanie animacji i walidacja formularzy, nie jest czymś co chciałbym ciągle robić. Dlatego też skierowałem się w stronę backendu i trafiło na c#, ze względu na to, ze mam go na uczelni, łącznie z reszta technologii M$. Nie jestem jednak w 100% przekonany co do c#, tym bardziej, ze słyszę głosy, że zarobki w c#, a dokładnie w webie, są dużo niższe od kolegów w javie (nie wiem ile w tym prawdy), plus słyszę iż pracy jest dużo mniej (chociaż wydaje mi się to dziwne, biorą pod uwagę że wszyscy uczą się javym przez co rynek musi być przesycony juniorami). Dodatkowo coś mnie kusi do pracy na Macu i linuxie, niż na windowsie. Przejście na tym etapie z c# na javę, podejrzewam, że nie będzie ogromnym problemem dla mnie, kwestia paru tygodni, jednak ciągle gdzieś z tyłu głowy mam, to iż całą uczelnie mam oparta o m$. I tutaj pojawia się kilka pytań do was, jako do osób bardziej doświadczonych i podejrzewam, że pracujących w zawodzie, gdyż nie chce mieć z tyłu głowy faktu, iż to czego się uczę było złym wyborem. Otóż:
-jak faktycznie wygląda różnica zarobkowa miedzy c# i java?
-dużo ciężej znaleźć prace w .net? (mowa o webdevie)
-czy zmiana języka na jave lub inny, biorąc po uwagę uczelnie ma sens i czy ogólnie warto?
Dziękuję za każdą odpowiedz :)

1

Nie wydaje mi się żeby różnice w płacy na tym etapie Twojej nauki były aż tak znaczne że powinny rzutować nad ewentualną zmianą. Jednocześnie na pewno nie kierował bym się tym co jest na uczelni. Jednakże Java i C# są na tyle do siebie podobne że ewentualna zmiana w przyszłości nie powinna być większym problemem. Sam przeszedłem podobna drogę, tylko że na odwrót. Nauka w Javie a pierwsza praca w C#.

Pobaw się w wolnym czasie trochę Javą i sam zdecyduj co Ci bardziej odpowiada.

0

@Aventus: nie sugerować się w takim razie uczelnia i certyfikatami jakie oferuje z m$? Dodam, ze uczelnie mam zaoczna. Co do języka to, to co mnie przekonuje to fakt tego, że mam dwóch dobrych znajomych javowcow, którzy chętnie pomogą mi w nauce, jest to mocno popularna platforma i ofert pracy jest więcej. Zarobki to oczywiście kwestia drugoplanowa, bo oczywiście do tego czasu wszystko może się zmienić, jednak zawsze fajnie wiedzieć :).

1

To jest Twoja decyzja. .Net to również niezwykle popularna platforma, szczególnie po wyjściu Core. Nie wiem jak to wygląda w Twoim regionie. Z mojej perspektywy różnice w zapotrzebowaniu na programistów .Net/JVM są nieznaczne, ale ja nie mieszkam w Polsce.

Być może Twoje wątpliwości biorą się właśnie z grona znajomych którzy już robią w Java i doradzają żebyś "olał MS?". Jeśli tak to nie są to wiarygodne źródła, równie dobrze ja czy ktoś inny mogą doradzać żebyś szedł w C# tylko dla tego ze sam w tym robię i to lubię.

2

Akurat jak się spojrzy na serwisy z ofertami pracy to widać, że w UK jest porównywalna ilość pracy w .NET i w Javie (sprawdzałem na indeed.co.uk). Natomiast jak się spojrzy na polskie portale (obsługujące polski rynek) to widać mocną przewagę liczebną Javy. Co do płacy to według takich portali jak https://wynagrodzenia.pl/moja-placa Javowcy zarabiają dobre kilka procent (jakieś 7 powiedzmy) więcej niż .NETowcy. Nie widać jakie są rozbieżności w płacach względem np rodzaju i wielkości firmy, być może np w korpo płace są porównywalne, a w małych firmach już nie, ale takie szczegółowe analizy pewnie swoje kosztują. Ogółem jednak w Polsce w Javce jest pewniejszy hajs (dla kogoś o średnich umiejętnościach) niż w C# i to od długiego czasu. A jak ktoś dobrze ogarnia kodzenie to nie powinien mieć wątpliwości czy sobie poradzi. Trzeba tylko pamiętać, by zapisywać się na staże i zdobywać w ten sposób doświadczenie komercyjne jeszcze na studiach, bo w innym przypadku delikwent obudzi się po obronie magisterki z ręką w nocniku (puste CV jest nieatrakcyjne, a staże są dla studentów, a nie absolwentów).

2

Dodatkowo coś mnie kusi do pracy na Macu i linuxie, niż na windowsie.

C# nie wiąże cię z Windowsem

0

@Wibowit: Oba języki są dla mnie bardzo podobne spoglądając pobieżnie. C# był wybrany, ze względu na uczelnie i aby zwyczajnie 'nie robić sobie pod górkę', jednak cały ekosystem javy, jak i możliwość późniejszej migracji na Scale lub Kotlin dla mnie wygląda zachęcająco. Jedyne co mnie przeraża, to fakt ogromnej konkurencji juniorów w Javie (chociaż jak czasem słyszę jacy ludzie aplikują na stanowisko junior java dev, to łapie się za głowe), której w .Net podejrzewam, że jest mniejsza. Słyszałem kiedyś, ze większa ilość ofert pracy w Javie, bierze się z tego, ze jest dużo większa ilość starego oprogramowania do podtrzymania, a raczej w takim czymś nikt by nie chciał robić. Jednak to wszystko są rzeczy, które słyszałem, nie pokryte moim własnym doświadczeniem. Do Javy przekonuje mnie też, to ze zwyczajnie w niej, ma mi kto pomóc na wyciągniecie ręki, co na pewno pomogło by przy początkach w nauce.
@WeiXiao: Niby tak, jednak cała technologia core jest jeszcze świeża, a osobiście nie wiem czego spodziewać się po polityce m$.

0

A ja na tym forum wyczytałem, że sporo programistów .NET grzebie jeszcze w WinFormsach czy WebFormsach. Na pewno jest sporo projektów w Javie, które zatrzymały się w czasie dawno temu (w sensie nie nadążają za wersjami Javy), ale jest też sporo projektów, które są na czasie. Zależy też do jakiej korpo trafisz i w jakim momencie. Ja pracuję w HSBC i niedawno nastąpiła pieriestrojka - najpierw wyleciały Javy starsze niż Java 8 i weszła polityka migracji na wewnętrzną chmurę bądź stawianie VMek z obrazów (tak by całkowicie zautomatyzować stawianie środowiska produkcyjnego), a niedługo (jak najszybciej?) ma być wdrożony Nexus IQ/ Firewall/ cokolwiek, czyli komponent do repozytorium artefaktów, który będzie blokował artefakty z podatnościami (czyli głównie stare artefakty).

0

@Wibowit: Podejrzewam, ze w obu technologiach można trafić na stare technologie. Oferty pracy w .net znalazłem takie w asp.core, jak i takie w WinFormsach, wiec jest to zróżnicowane, lecz u mnie w mieście ofert pracy dla Javy jest więcej, niż dla .Net. Może, faktycznie tak jak powiedział @Aventus, aby nie sugerować się uczelnią, a zwyczajnie wybrać to co wydaję się lepsze. Jednak gdzieś z tyłu głowy jest ciągle ogrom juniorów na każde miejsce, ale podejrzewam, że odpowiednia ilość nauki, plus umiejętności i jakoś człowiek się przebije.

1

: Niby tak, jednak cała technologia core jest jeszcze świeża, a osobiście nie wiem czego spodziewać się po polityce m$.

To jest typowe błędne myślenie o współczesnym ekosystemie .Net. Taki sam stereotyp jakby mówić że Java jest wolna. Przecież przeszedł już na open source, jest .Net Foundation. MS może swoje ale community zrobi swoje. Poza tym co znaczy "nie wiem czego spodziewać się"? Przecież oni nawet wspierają archaiczne WinForms którego oficjalnie... już nie wspierają.

1

Od 2 lat nie widziałem startującego projektu, który NIE jest na .net core, a na starszym frameworku. Od wesji 2.0 jest super.

0

@Lukxxx: nie wiesz jak to się przekłada na ilość pracy, konkurencje juniorska lub płace w średnich firmach? Jestem z Krakowa i jest tu kilka dużych firm zajmujących się .net, lecz większość to i tak java. Nie chcę mieć potem sytuacji, ze musiałbym migrować do innego miasta w celu znalezienia pracy w .net.

0

Poznaj dobrze jedną technologię, później możesz marudzić, a to składnia, a to zarobki ... Dla fanu (poszerzeniu horyzontów) możesz równolegle zgłębiać F#.

2
BoomBust napisał(a):

Nie jestem jednak w 100% przekonany co do c#, tym bardziej, ze słyszę głosy, że zarobki w c#, a dokładnie w webie, są dużo niższe od kolegów w javie

Średnio pewnie tak. Pytanie, czy warto być średnim?

-dużo ciężej znaleźć prace w .net? (mowa o webdevie)

Nie wiem, czy istnieje odpowiedź na takie pytanie. Osoby doświadczone w swoich technologiach nie mają problemu ze znalezieniem pracy, a początkujący ukazują pełne spektrum odpowiedzi, od "znalazłem w kilka dni" do "500 wysłanych CV i nic".

BoomBust napisał(a):

Słyszałem kiedyś, ze większa ilość ofert pracy w Javie, bierze się z tego, ze jest dużo większa ilość starego oprogramowania do podtrzymania, a raczej w takim czymś nikt by nie chciał robić.

Tu akurat czarów nie ma. Technologia starsza, więc więcej starszego softu w niej powstało. A do tego popularniejsza, więc ogólnie softu jest więcej. Stąd też większe zapotrzebowanie na programistów Javy, ale też więcej kandydatów.

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