Czy rok nauki Javy wystarczy aby dostać pracę na stanowisku Juniora?

Czy kodowanie przynajmniej 2h dziennie przez 1 rok wystarczy do podjęcia pracy na stanowisku Juniora? Obecnie znam podstawy C++.

Mam taki plan:

Jeśli będziesz pisał sam a nie kopiował gotowców z neta na zasadzie “zrobiłem, a jak nie działa to zapytam na forum niech dokończą” to się nauczysz. Czas jest względny, czasem przy prostym błędzie można siedzieć kilka godzin, więc ja bym się tak nie zapędzał na twoim miejscu.

Pół żartem, pół serio, ale ssanie na rynku jest takie, że wystarczy, że wpiszesz sobie znajomość Javy do CV, a następnego dnia możesz mieć pracę. Bardziej poważnie to w zależności od firmy będą bardzo różne wymagania. W części będą poważne testy kompetencji, w innych przyjmą cię na słowo. W praktyce jako junior będziesz głównie albo grzebał w czyimś kodzie i poprawiał błędy, wprowadzał drobne modyfikacje, ewentualnie robił jakieś nowe rzeczy ale wzorując się na tym co już jest. 

Moim zdaniem nie ma co czekać roku i uczyć się “dwie godzinny dziennie” (trochę to absurdalne, to nie siłownia). Przeczytaj ze zrozumieniem jakąś książkę o Javie, porób parę prostych aplikacji typu połączenie do bazy, edycja danych, itp. Poznaj najpopularniejsze frameworki typy Hibernate i do roboty. Tam nauczysz się najwięcej.

edit:

@kowgli dobrze prawi, polać mu!

 

ayakoxd : Jako samoukowi będzie trudno Ci się nauczyć od podstaw programowania.

A może są jakieś kursy, szkolenia czy jedno-dwuroczne wieczorowe zajęcia z tej dziedziny?

@zbigg47

Nie zgadzam się. Nauka programowania to jest 20% samouctwo, a w 80% praktyka.

Podczas 5 letnich studiów do kodu zajrzą Ci może kilka razy, a tak naprawdę dogłębnie to najprawdopodobniej nigdy. **ayakoxd **w pierwszym poście pokazał, że podchodzi do sprawy bardzo metodycznie. Świetny wybór lektur i zagadnień. Żaden kurs mu nie potrzebny.

Ja akurat jestem typem samouka, więc inne metody nauki(w grupie) mnie nie interesują. To nie jest tak zupełnie od podstaw, bo znam już troszkę C++.  Ogólnie to wiem, że się nauczę, bo lubię programować… ale nie wiem w jakim czasie, a bardzo zależy mi aby jak najszybciej podjąć się pracy i przenieś się na studia zaoczne… dzięki @kowgli na pewno będę się rozglądać za praktykami jak już coś tam będę umieć, bo to chyba najlepszy sposób rozwoju.

ayakoxd: To życzę Ci powodzenia i wytrwałości. Widzę, że wiesz czego chcesz w życiu…

Pozdrawiam

OK, dzięki wszystkim za pomoc.

I jeszcze raz wielkie dzięki kowgli :wink:

To w takim razie nie mam prawa umieć programować. Programowania nauczyłem się sam, w technikum nauczyciel w ogóle nie potrafił wytłumaczyć nawet czym jest zmienna bo sam nie potrafił programować. Początkowo uczyłem się na zajęciach metodą prób i błędów. Bardziej pisałem po omacku niż świadomie, spodobało mi się to po omacku więc chciałem więcej przeczytałem książkę o podstawach programowania a dalej jakoś poszło. Zajęcia miałem w nosie bo i tak to co było umiałem, studia to samo uczyli programowania, ale nie byłem zainteresowany i jakoś wszystko pozaliczałem bez nauki i w technikum i na studiach.

Ale uzależniające od jednej platformy. Poza tym Java będzie się nadawać również do pisania na Androida.

Java - aplikacje pod desktopa i androida

C# - aplikacje pod windowsa i windows phone

Różnica jest jedynie we wsparciu systemów desktopowych, ale w obu przypadkach masz do wyboru i desktop i mobilny system. Aczkolwiek w C# można też pisać pod linuksa więc też nie jest tak że jest on zupełnie ograniczony do jednego systemu.

Aplikacje to bardzo wąskie spojrzenie. Są wszelkiej maści systemy biznesowe, usługi, wtyczki, aplikacje webowe itp. Faktycznie głównie pod platformę Windows, ale już nie do końca. .NET Core jest wieloplatformowy. Najnowszy ASP.NET MVC z powodzeniem działa pod Linuxem, czy w kontenerach docker.

Wracajac do tematu… Gdzie mieszkasz? Może są w twoim mieście firmy które wezmą cie na staż. Nie oczekuj płatnego stażu. Każdy staż nawet miesiąc da ci więcej niż kilkukrotnie dłuższy czas spędzony samotnie ucząc się.

Java to praktycznie aplikacje na wszystko co ma jako taką wydajność, ale głównie serwery i niektóre systemy wbudowane. Desktop to nie jest najlepsze zastosowanie Javy. Jak mówimy o pisaniu na komórki to C# praktycznie nie istnieje. Jedynie można się pomęczyć Xamarinem. WP to nisza i nie zanosi się, aby opłacało się pisać na ten system. Więc Nie ma co porównywać. C# jest dobry tylko do aplikacji korporacyjnych serwerowych i budowy programów desktopowych tylko pod Windows.

Pisanie w C# pod Linuksa to masochizm. Raz, że Mono jest wybitnie wolne w porównaniu do Javy na Linuksie i .NETa na Windowsie, a dwa, że w typowych aplikacjach korporacyjnych wykorzystuje się komponenty niedostępne na Linuksa. Jest to więc alternatywa pozorna. Możesz mieć pełnosprawne narządzie jakim jest Java lub używane tylko w niektórych zastosowaniach na specyficznym systemie i w specyficznych typach oprogramowania jakim jest C#. Czasami właśnie takie wyspecjalizowane narzędzie jest lepsze, ale nie dla większości projektów.

A kto porównuje Mono? https://dotnet.github.io/

.NET jest jak jednorożec. Ponoć działa, ale jeszcze nikt tego nie stosuje. Nie widziałem jeszcze sensownych benchmarków w tym temacie. .NET nie przystosuje się magicznie do Linuksa. To wymaga sporego wysiłku deweloperów, aby osiągnąć wydajność na kernelu Linuksa zbliżoną do Windowsa.

Zdaje sobie z tego sprawę i chętnie poszłabym na staż, ale jednak najpierw chce się trochę pouczyć aby czuć się pewniej. Najwcześniej za pól roku będę się rozglądać za jakimś stażem, chociaż mogę mięć problem, ponieważ mieszkam w Szczecinie i żadna firma tu nie ogłasza się w internecie z ofertą stażu, w ogóle mało jest ofert. A i może ktoś się orientuje czy na staż/praktyki niezbędny jest status studenta?

Jeśli się nie uda ze stażem/praktykami to w wakacje w 2017 roku (za ok. 1 rok) będę szukać w Wrocławiu/Gdańsku/Warszawie pracy na stanowisko Juniora. Tak na marginesie to bardzo dziwne historie ostatnio słyszałam od znajomych z Krakowa, np. kolega ma znajomego po Liceum(nie jest studentem), który uczył się C# tylko przez 3 miesiące!, ale przeszukał wszystkie ogłoszenia w Krakowie i powysyłał swoje CV tam gdzie były małe wymagania. Odezwały się do niego 3 firmy, dwie z nich zaoferowały mu pracę(stawka 2,5 tys), ponieważ wykazał chęć nauki podczas rekrutacji. Dodam jeszcze, że oczywiście C# “umiał” na niskim poziomie, tworzył jakieś proste “aplikacje” z książki i nic poza tym. Miał po prostu farta? A może jednak w takich miastach jak Kraków i Warszawa jest o wiele łatwiej i takie sytuacje nie są nadzwyczajne? Jak to jest?

Otóż niektórzy ludzie są inteligentniejsi od innych. Co oczywiście nie znaczy, że nie da się tego zmienić.

No nie wiem czy on jest taki inteligenty skoro nie zdał kilka lat temu matury… wydaje mi się, że z takimi umiejętnościami jakie posiadał to musiał mieć po prostu farta.