Adrian Stolarski

Wypowiedzi autora zostały ukryte. Pokaż autora

konto usunięte

Temat: Java - umiejętności na pierwszą prace w Javie.

Adrian Stolarski:
Czytam ludzi po studiach i niedowierzam. Czego Was uczą szkoły? Czego się wymaga od programisty dzisiaj? 6 rzeczy:
a) dobra znajomość systemów kontroli wersji - svn lub git
b) myślenia algorytmem a nie kodem, nie jak coś napisać, ale jak coś ma działać
c) znajomości róznicy pomiędzy mock a stub
d) znajomosci SOLID, KISS, DRY
e) umiejętności pisania testów
f) znajomości architektury wielowarstwowej i podstawowej wiedzy domenowej

Pisałem w java, w większości frameworków, w C#, php, python. Nigdy mnie nigdy nie zapytał jak dobrze znam te języki. Wszystkie znam podstawowo. Jestem w stanie napisać dowolną aplikację w dowolnym języku zniewielką pomocą Google. Obecnie zajmuje sięna własną rękę outsourcing dla niemców w php i irlandczyków w java. i jakoś wolą, żeby kod powstawał w pl niż u nich, ponieważ jak dostali odpowiedź o refaktoryzacji, ile to będzie ich kosztować, to cztery duże aplikacje - 350 tys linii kodu minimum każda, po prostu kazali napisać od podstaw.

To pozwala mi płacić ludziom stawki europejskie, nie polskie. Jeśli szukam ludzi, od juniora do seniora, oferuję im zwykle od 25 tys do 50 tys euro rocznie, oczywiście po przejściu rekrutacji.

Adrianie, czy jest możliwość się załapać?

konto usunięte

Temat: Java - umiejętności na pierwszą prace w Javie.

mogę też prosić o te zadania??

Temat: Java - umiejętności na pierwszą prace w Javie.

Tomasz A.:
Swing no i JDCB do łączenia sie bazą.

trzynaście lat temu, to było all the rage ...
... czasy się zmieniają.
Sebastian S.

Sebastian S. Java Developer w
J-LABS sp. z o. o.

Temat: Java - umiejętności na pierwszą prace w Javie.

Witam serdecznie :)

Pozwolę sobie odświeżyć temat nieco. Zbliżam się do końca studiów inżynierskich (przybieram się do pisania pracy dyplomowej) i mocno się zastanawiam nad tym, jakie będę miał szanse na pracę jako programista JAVA po ukończeniu studiów.

Wiem, że trzeba coś ze sobą reprezentować, gdy się chce dostać wymarzoną pracę, ale JAVA, a także JVM to dość rozległe środowisko i nie sposób nauczyć się wszystkiego jeszcze w trakcie studiów. Coś jednak trzeba wybrać.

Ja osobiście wybrałem (oprócz samej Javy) Spring Framework (Spring MVC, Spring Security itd.), AngularJS i Hibernate.

Do tego przydałaby się znajomość jednego z DBMS (obecnie znam tylko Oracle SQL i MongoDB), HTML5, CSS3, Javasript.

Na dzień dzisiejszy znam wszystkiego po trochu. Studia niekiedy odbierają chęć i siły do samodzielnej nauki, więc różnie z tym bywa.

Jak przeglądam oferty pracy to nie napawa mnie to optymizmem. Średnio 2 lata doświadczenia, znajomość jeszcze 10 innych rzeczy itp. itd.

Zastanawiam się czy zapomnieć na razie o byciu programistą, pracować byle gdzie i szkolić się po godzinach. A może jednak są w tym kraju pracodawcy, którzy stawiają na potencjał i rozwój młodego człowieka. Kto wie? ;)

Pytania do was:

Czy idąc w kierunku Javy wybrałem dobre technologie i narzędzia?
Czy z moimi obecnymi kompetencjami mam jakieś szanse?
Czy jednak będę musiał się jeszcze sporo nauczyć zanim ktoś zechce mnie zatrudnić?Ten post został edytowany przez Autora dnia 30.06.14 o godzinie 15:15
Kamil Mikołajczyk

Kamil Mikołajczyk programista Java /
Grails

Temat: Java - umiejętności na pierwszą prace w Javie.

Cześć

moim zdaniem nie masz się czego obawiać, jak sam ogarnąłeś podstawy springa i hibernate'a to o pracę nie masz się co martwić. Nie wiem jak w Twojej okolicy wygląda rynek, ale ja na Twoim miejscu próbowałbym na początek zaczepić się w jakiejś większej firmie (ComArch, Sygnity, LGBS itp), bo raz że Ty się wdrożysz w pracę zespołową - svny, jiry itd., a dwa że takie firmy chętnie przyjmują studentów, bo moga sobie pozwolić na ich zatrudnienie i wyszkolenie sobie kadry niewielkim kosztem. Po roku - dwóch zobaczysz czy Ci odpowiada praca w "korpo" i albo zostaniesz tam na wieki wieków, albo uciekniesz i więcej nie wrócisz ;) Powodzenia

konto usunięte

Temat: Java - umiejętności na pierwszą prace w Javie.

Sebastian S.:
Czy idąc w kierunku Javy wybrałem dobre technologie i narzędzia?

JAVA to nie tylko web. To także aplikacje desktopowe i mobilne. Może warto rozważyć ten segment rynku? Aplikacje webowe w tym języku są skomplikowane jakby nie było.
Czy z moimi obecnymi kompetencjami mam jakieś szanse?

Może podejdźmy do tego z takiej strony. Ubiegając się o pracę można się spodziewać albo zadanek akademickich, albo Codility, gdzie trzeba rozwiązać jedno lub dwa takie zadania (również akademickie) w określonym czasie.

Albo np. takie zadanka jak tu:
http://9fingers.pl/questions/772/Pytania-z-rozmow-kwal...

Dasz radę?

I jeszcze to:
http://scjptest.com

Jest możliwość wzięcia udziału w teście.
Czy jednak będę musiał się jeszcze sporo nauczyć zanim ktoś zechce mnie zatrudnić?

Problem tutaj jest inny. Te posty czytają także szefowie firm i rekruterzy, więc można ocenić kto i na jakim jest poziomie. To że ogłoszenia o pracę to paranoja to inna sprawa, niestety z tego co piszesz mam wrażenie że nie wierzysz za bardzo w swoje możliwości a to nie wróży dobrze. Co innego jest coś tu napisać fachowo w temacie JAVA bo wtedy to ktoś taki daje jasny komunikat, że coś potrafi.

konto usunięte

Temat: Java - umiejętności na pierwszą prace w Javie.

Sebastian S.:
mocno się zastanawiam nad tym, jakie będę miał szanse na pracę jako programista JAVA po ukończeniu studiów.

To złe podejście. Lepiej zacząć już teraz, w wakacje jako praktykant / stażysta, a po nich, jeszcze przed skończeniem studiów, na 3/4 etatu w firmach przyjaznym studentom, nawet za małe pieniądze - zdecydowanie to jest lepsze, niż skończenie studiów z zerowym doświadczeniem - poświęcanie 100% czasu na same studia + "studenckie życie" to strata czasu :), a wiem doskonale, że natężenie czasowe zajęć na ostatnich latach studiów dziennych informatyki jest minimalne.

A technologie super - dobrym pomysłem było by zrobienie pełnej aplikacji dla siebie samego, z przypadkami użycia, projektem bazy, implementacją, testami i wdrożeniem - może jakieś otwarte repo i web hosting? Moim zdaniem to był by duży plus, sama znajomość javy i technologii to nie wszystko, trzeba to jeszcze poskładać w całość, a znajomość dodatkowych narzędzi jak Maven czy systemy kontroli wersji, a również znajomość serwerów aplikacji działają tylko na Twoją korzyść - co innego jest napisać "znam javę i coś tam", a co innego pokazać kompletny produkt

Ofert pracy dla początkujących jest multum - firmy przeważnie oferując staże czy praktyki w tej branży, nie chcą wykorzystać Ciebie jako taniej siły roboczej (no dobra - to też :) ), ale doszlifować sobie świeżego studenta do własnych potrzeb - moim zdaniem jest to układ win-win

powodzenia
Sebastian S.

Sebastian S. Java Developer w
J-LABS sp. z o. o.

Temat: Java - umiejętności na pierwszą prace w Javie.

Dariusz R.:
Dasz radę?
Tym pytaniom przyjrzę się jutro, bo już późna godzina, a jutro z rana na staż trzeba jechać :P Niestety mało on ma wspólnego z programowaniem, ale jest to staż organizowany przez moją uczelnię i OPTeam S.A. i w dodatku jest płatny, więc nie mam co narzekać, a każde doświadczenie jest cenne.
Dariusz R.:
To że ogłoszenia o pracę to paranoja to inna sprawa, niestety z tego co piszesz mam wrażenie że nie wierzysz za bardzo w swoje możliwości a to nie wróży dobrze.
To nie tak, że nie wierzę we własne możliwości. Wiem tylko, że nie wydłużę doby do 48 godzin i nie nauczę się wszystkiego czego oczekują osoby piszące ogłoszenia dla programistów. Staram się być realistą i mierzyć siły na zamiary. Dlatego też mogę się skupić tylko na wybranych narzędziach, które wymieniłem w swoim pierwszym poście. Jeżeli opanuję je w dostatecznym stopniu, to będę mógł przyjrzeć się innym rzeczom.

Obecnie mam na głowie napisanie pracy dyplomowej, a będzie nią aplikacja webowa w Springu i AngularJS wraz z innymi technologiami. Aplikacja będzie systemem ułatwiającym zarządzanie działalnością organizacji "non-profit", z którą nawiązałem kontakt. Prezes fundacji ma dość spore wymagania i jeszcze będę musiał uściślić, bo nie wiem czy uda mi się spełnić każde życzenie "klienta".

Wybrałem taki temat, bo chcę rozwiązać konkretny, rzeczywisty problem i żebym mógł się pochwalić przyszłemu pracodawcy, że zrobiłem aplikację, która jest komuś potrzebna i usprawnia jego działalność.

Oczywiście miałem także do czynienia z Mavenem, SVN i innymi nardzędziami używanymi przy produkcji oprogramowania. Na potrzeby projektu dyplomowego mam zamiar wykupić sobie serwer VPS i zrobić na nim repozytorium SVN.

Gdy tylko napiszę tę aplikację, to będę szukał pracy w jakiejś firmie, żeby jak najszybciej zdobyć trochę doświadczenia. Bo miesięczne praktyki w firmie programistycznej (udało mi się załapać na praktyki do PGS Software S.A.) to za mało :PTen post został edytowany przez Autora dnia 01.07.14 o godzinie 00:06
Kamil Mikołajczyk

Kamil Mikołajczyk programista Java /
Grails

Temat: Java - umiejętności na pierwszą prace w Javie.

Sebastian S.:

Wybrałem taki temat, bo chcę rozwiązać konkretny, rzeczywisty problem i żebym mógł się pochwalić przyszłemu pracodawcy, że zrobiłem aplikację, która jest komuś potrzebna i usprawnia jego działalność.

to też nie do końca tak działa, bardzo często będą Cię rekrutować head hunterzy, którzy raczej nie będą tym zainteresowani, oni patrzą na listę technologii jakiej oczekuje ich klient (Twój potencjalny pracodawca) i na to co Ty z tej listy deklarujesz że znasz
chwalenie się swoim produktem ma sens wtedy kiedy jest on naprawdę dobry, ktoś go zna, gdzieś można o nim przeczytać i kogoś to zainteresuje, a na to masz małe szanse na początku swojej drogi, moim zdaniem na początek trzeba się załapać gdziekolwiek do większego zespołu, poznać standardy i must-have javowe (czyli hibernate) i odbębnić swoje, żeby potem móc samemu stawiać warunki, ale na początku liczy się tylko licznik miesięcy przepracowanych w realnych projektach

Oczywiście miałem także do czynienia z Mavenem, SVN i innymi nardzędziami używanymi przy produkcji oprogramowania. Na potrzeby projektu dyplomowego mam zamiar wykupić sobie serwer VPS i zrobić na nim repozytorium SVN.
repozytorium SVN możesz za darmo postawić sobie na google code albo innym tego typu project hostingu (na bitbucket chyba też?)
Sebastian S.

Sebastian S. Java Developer w
J-LABS sp. z o. o.

Temat: Java - umiejętności na pierwszą prace w Javie.

Zdaję sobie z tego sprawę, ale gdy zostanę zapytany, co do tej pory udało mi się napisać, to myślę, że będzie warto wspomnieć o moim projekcie dyplomowym, bo nawet pierwsza firma, do której będę się próbował zrekrutować, będzie chciała wiedzieć czy podczas studiów leżałem do góry brzuchem czy jednak coś robiłem.Ten post został edytowany przez Autora dnia 01.07.14 o godzinie 06:36
Kamil Mikołajczyk

Kamil Mikołajczyk programista Java /
Grails

Temat: Java - umiejętności na pierwszą prace w Javie.

nie mówię, że nie, ale moja pierwsza rekrutacja to był pisemny test z c, c++, sql, c# i javy i w zasadzie nie było żadnej faktycznej rozmowy kwalifikacyjnej (comarch, 5 lat temu)

konto usunięte

Temat: Java - umiejętności na pierwszą prace w Javie.

Sebastian S.:
Czy jednak będę musiał się jeszcze sporo nauczyć zanim ktoś zechce mnie zatrudnić?

Zawsze będziesz się musiał sporo uczyć, taki urok pracy programisty :)
Z tego co napisałeś, to trochę podłubałeś w sensownych technologiach, które są z tych "must have" jeżeli chodzi o javowca webowego, więc skup się na porządnym ich rozpoznaniu niż na łapanie 30 srok za ogon. I tak najwięcej się o tych technologiach nauczysz idąc do firmy i prowadząc jakiś projekt komercyjny, rozmawiając ze starszymi programistami itd. To tak trochę jak przerzut trybu grania z single player na multi :) 3 lata pracowałem i studiowałem i po prostu wiem, że w życiu tyle bym się nie nauczył, gdybym tylko studiował i robił z doskoku jakieś projekciki ucząc się springa i hibernate'a. A i tak dalej uważam, że jeszcze wiele do nauki przede mną.

powodzenia!Ten post został edytowany przez Autora dnia 01.07.14 o godzinie 10:19
Sebastian S.

Sebastian S. Java Developer w
J-LABS sp. z o. o.

Temat: Java - umiejętności na pierwszą prace w Javie.

No jako programista, to będę musiał się regularnie dokształcać, ale myślę, że życie programisty nie sprowadza się wyłącznie do pracy w firmie i nauki po godzinach w domu.
Marcin K.

Marcin K. Java Developer

Temat: Java - umiejętności na pierwszą prace w Javie.

Idź do pracy, nawet nie myśl o pracy w innej branży, bo to nie ma najmniejszego sensu. Zaczep się gdzieś, gdziekolwiek. Gdzie studenci mają szansę na rozwój i mają pewien parasol ochronny z tym związany. Spróbuj wykorzystać szansę i uczyć się od bardziej doświadczonych kolegów. W tzw. międzyczasie rób coś swojego i będzie dobrze.

Adrian Stolarski

Wypowiedzi autora zostały ukryte. Pokaż autora

konto usunięte

Temat: Java - umiejętności na pierwszą prace w Javie.

Adrian S.:
Życie programisty sprowadza się do dwóch rzeczy:
a) znalezienia właściwego rozwiązania w google
b) zastosowania metody kopiuj wklej

Zgadza się :) Tylko że przypadek a oznacza albo pójście na łatwiznę, albo po prostu wykorzystanie czegoś co już zostało stworzone przez kogoś a można (o ile licencja pozwala), zamiast wynajdować koła od nowa. Problem polega na tym, że w Google jest skończona liczba rozwiązań.

Przypadek b = prosta droga do błędów w programie w niektórych przypadkach. Zresztą copypaste jest uważane za antywzorzec, temu chyba nie zaprzeczysz :)
zamiast pytac o znajomość jezyka, powinni ci zadawać pytanie, czym się rozni budowniczy od fabryki abstrakcyjnej a czym strategia od adaptera.

To są pytania z zakresu znajomości OOP i dobrych praktyk, właściwa odpowiedź na nie nie dowodzi faktycznego doświadczenia praktycznego - definicje można wykuć na pamięć...Ten post został edytowany przez Autora dnia 02.07.14 o godzinie 16:46

Adrian Stolarski

Wypowiedzi autora zostały ukryte. Pokaż autora

konto usunięte

Temat: Java - umiejętności na pierwszą prace w Javie.

Adrian S.:
Kto mówił o definicjach? Zaprojektuj mi coś, co może się poruszać, ale nie musi, coś, co może jeść ale nie musi. Coś co może życ, ale nie musi.

Z założenia każda aplikacja konsolowa/desktopowa/webowa/mobilna ma spełniać swoje zadania i zaspokajać określone zapotrzebowanie. W tym rozumieniu jest nieistotne czy user ma za nią płacić czy nie. Jasne że jak się ma słuchawki z małym jackiem to do gniazda na dużego jacka trzeba przejściówkę (tutaj więc wzorzec adapter). Każde inne podłączenie jest po prostu nieprofesjonalne.

Jak aplikacja np. ma w przyszłości obsługiwać nie tylko MySQL ale i PostgreSQL, SQLite a nawet dane składować chociażby w XML, celowe jest zastosowanie odpowiedniego wzorca. Np. dla wszystkich wymienionych tu typów połączeń, można stworzyć jeden interfejs. Ale jest jeden problem. SQLite np. nie wymaga nazwy użytkownika i hasła, co jest normalnie w MySQL czy PostgreSQL, natomiast np. taki Firebird ma jeszcze dialekt SQL który też można ustawiać.

I teraz tak. Niech będzie jeden wspólny dla wszystkiego interfejs:


public interface IDatabaseConnection
{
void setUsername(String name);
void setPassword(String password);
void setDatabaseName(String name);
void setHostName(String name);
}


To teraz zgodnie z tym wyglądałoby na to, że SQLite np. ma trzy niepotrzebne metody bo tylko databasename odpowiadająca nazwie pliku jest potrzebna. Widać tu jak na dłoni niezgodność z zasadą segregacji interfejsów, bo zgodnie z tym podejściem SQLite powinna mieć tylko jedną metodę SetDatabaseName. Aplikacja ma dawać wybór gdzie składować dane (jak np. GnuCash). Jak według Ciebie rozwiązać ten problem, żeby nie było żadnych niezgodności z SOLID?

Nawet przeglądając fora zapewniam Cię, że opinie i to w bardzo wielu sprawach są podzielone.
Umiejętnośc operowania na wysokim poziomie abstrakcji, to ile czasu ktoś będzie musiał poświęcić na code review etc etc

I uważasz że określenie czasu jaki będzie na to wszystko potrzebne jest taką prostą sprawą? Nawet mając doświadczenie można się nieźle na tym przejechać.

Temat: Java - umiejętności na pierwszą prace w Javie.

Witam,
Ja jestem amatorem i zacząłem zabawę z Javą hobbystycznie. Studiów z informatyką nie miałem związanych.
Co do tematu to może to pomoże:
http://www.quora.com/Java-programming-language/What-ar...

Obecnie poznaje podstawy podstaw, kursy online/ videokursy, zadania, podstawowe projekty itp. itd.
Przyznam, że ogrom materiału jest tak duży, że sie gubię :)

Chciałbym prosić o zasugerowanie jakiejs drogi w nauce java'y dla laika, znajdzie się taka? jakaś kolejność materiału do opanowania na początek? Nie chcialbym tkwic dlugo w czyms prostym ani rzucic sie na zbyt gleboka wode. (ogolnie wierze, ze rzucanie sie na gleboka wode wychodzi na dobre ;) )

Ogolnie mialbym kilka pomyslow, ktore chcialbym sprobowac zrealizować. Ale moze warto dla osoby takiej jak ja zdać certyfikat? (nie mowie, ze 'papier' mialby mi cos dac cokolwiek, chodzi o nauke dla siebie)

A ogolnie to Programisci czy googlerzy? ;)Ten post został edytowany przez Autora dnia 22.07.14 o godzinie 00:38

Następna dyskusja:

Programista JAVA pilnie pos...




Wyślij zaproszenie do