Jak wygląda praca programisty Javy na codzień?

0

Podajcie przykłady zadań np. przez ostatni tydzień czy miesiąc.

O ile jestem w sobie w stanie wyobrazić wiele zawodów np. co robi taki data scientist, BI developer czy Webowiec o tyle ciężko mi sobie wyobrazić co faktycznie robią Javowcy.

0

Czyli javy nie używa się w webie i Data Science? Ogólnie praca programisty javy polega na rozwiązywaniu problemów za pomocą javy...

0

chodzi mi o pospolitego klepacza Java developer w korporacji. Podajcie przykładowe zadania jakie mieliście w ostatnim czasie.

5

Napisz serwis, którego zadaniem jest autentykacja i autoryzacja użytkownika we wszystkich skomunikowanych serwisach.
Coś na zasadzie np googlowego single sign on. Logujesz się raz w google np w trakcie przeglądania gmail i możesz być od razu zalogowany w youtube czy google drive.

0

No nadal nie rozumiem. Java w korpo to najczęściej webówki i andoid.

0

"co robi taki data scientist, BI developer czy Webowie"
To też robi Java'owiec

3

Miałem różne, np.
1)przetwarzanie plików z bazą miejscowości ulic itp przez Spring Batch. Trzeba było to robić sensownie żeby dane były dostępne, spójne a danych było kilkaset tysięcy wierszy przynajmniej :)
2)Tworzenie różnych funkcjonalności do REST API, np. zapis czegoś tam od klienta.
3)Tworzenie testów JUntowych, w tym ednpointowych
4)Ogarnianie bugów
Najbardziej podobało mi się zadanie z wygenerowaniem raportu CVS albo Excel (chyba to 1) gdzie było z 20 albo 30 opcjonalnych kolumn w samym pliku, w bazie danych to było z 6 czy więcej tabel i do tego jeszcze szło przez REST API. WIęc zadanie bardzo ciekawe. No ale rozumiem że dla dużej ilości osób to życie Java developera jest nudne :D

Chociaż w sumie najbardziej ciekawi mnie co robią @Shalom i @katelx :)

0

pisząc webowiec miałem na myśli webmastera lub webdevelopera czyli gościa co robi strony internetowe a nie aplikacje webowe

acha..., bo na wizytówce mam Web Developer, a to znaczy,że robie strony..za 6k miesiąc..., bo przecież Web development to nie aplikacje webowe...hehehhe

12

Java developer zajmuje liczeniem hajsu na koncie, kiedy R'owcy wypisuja smuty na forum.

1

Mnostwo zadan.

  1. Tworzenie REST api

  2. Projektowanie struktury aplikacji, pakietow itp.

  3. Persistence, bazy danych relacyjne i nierelacyjne, projektowanie schematu bazy itp.

  4. Security, logowanie, rejestracja itp.

  5. Continous deployment, joby na jenkins itp.

  6. Logika biznesowa, warstwy serwisowe, jesli maja byc takowe a moze bardziej DDD

  7. Optymalizacje wydajnosciowe, wielowatkowosc itp.

  8. Zarzadzanie kontenerami czy serwerami aplikacji

  9. Budowanie aplikacji

  10. Skryptowanie np w bash

  11. bugi

  12. Testy

  13. jakis apache czy nginx, statics

  14. Wsparcie produkcji

  15. czasem front

  16. Czasem devops

  17. Refaktoryzacja

  18. Code reviews

  19. praca na wirtualkach itp.

...

0

To wszystko o czym piszesz już wcześniej ktoś przed tobą wymyślił i nawet gdzieś opublikował, więć praca Javovca polega na wzorowanii się na już gotowych rozwiązaniach. Na modyfikowaniu gotowych rozwiązań i przystosowywaniu ich do własnych potrzeb.., potrzeb javovej kobyły..etc.

1
Waleczny Osioł napisał(a):

To wszystko o czym piszesz już wcześniej ktoś przed tobą wymyślił i nawet gdzieś opublikował, więć praca Javovca polega na wzorowanii się na już gotowych rozwiązaniach. Na modyfikowaniu gotowych rozwiązań i przystosowywaniu ich do własnych potrzeb.., potrzeb javovej kobyły..etc.

Czylj wszystko o czym pisze moze byc wykonane na conajmniej kilka sposobow. I programista musi uzyc mozliwie najlepszych opcji.

Tak, uzywamy narzedzi do np. Logowania, nie piszemy ich od zera. To bylby kretynizm.

Ale nie wszystko moze leciec na pale przez basic auth po zwyklym http.

0
Waleczny Osioł napisał(a):

To wszystko o czym piszesz już wcześniej ktoś przed tobą wymyślił i nawet gdzieś opublikował, więć praca Javovca polega na wzorowanii się na już gotowych rozwiązaniach. Na modyfikowaniu gotowych rozwiązań i przystosowywaniu ich do własnych potrzeb.., potrzeb javovej kobyły..etc.

Co ty nie powiesz? Hmm ja myslałem że po to jest OOP, biblioteki/frameworki żeby człowiek nie musiał odkrywac koła na nowo.
Tak praca jakiekolwiek sensownego programisty korzystającego z języka obiektowego polega na korzystaniu z gotowych rozwiązań w dużej częsci. Ale:
1)Trzeba wiedzieć z jakich trzeba korzystać
2)Dalej logikę aplikacji, schemat bazodanowy,ednpointy RESTowe itd. trzeba samemu oprocować.

7

zajmuje sie rozbudowa smart routing engine, jest to komponent ktory na wejscie dostaje od klienta zlecenie gieldowe a potem rozprowadza to po roznych gieldach (zewnetrznych lub wewnetrznych dla mojego banku) tak zeby wyrobic jak najwiekszy zysk. moimi glownymi zadaniami sa na ta chwile sa 1) implementacja wycofania zlecenia z gieldy i przerzucenia na inna w optymalny sposob (rozni sie on w zaleznosci od wspieranych przez dana gielde instrukcji) 2) uwzglednienie pauzy na gieldzie i/lub braku czesci lub calosci sesji w danym dniu.
oprocz kodowania powyzszego, duzo czasu poswiecam na analize logow, dogadywanie wymagan z traderami oraz debugowaniu istniejacego kodu zeby zrozumiec co sie wlasciwie dzieje :)

4

Ostatnio przez 3 tygodnie dodawałem jedno pole na formatkę a potem przez tydzień naprawiałem błędy z tym związane

0
caer napisał(a):

Ostatnio przez 3 tygodnie dodawałem jedno pole na formatkę a potem przez tydzień naprawiałem błędy z tym związane

Czas na zmiany? ;)

0

Wychodzi na to, że poza Androidem w web mało pisze się w Javie tylko bez rozwoju tępe klepanie formatek w frameworku Javowym?

0

W aktualnej pracy biorę udział w tworzeniu od podstaw rozproszonego systemu do zarządania i analityki elektronicznych zamków i innych kontrolerów bezpieczeństwa.

W poprzedniej pracy mobilny CRM działający w chmurze publicznej.

W połączeniu z chmurą publiczną (np. AWS) oraz w architekturze mikroserwisów w Javie można robić naprawdę fajne rzeczy.

Trzeba / wystarczy tylko znaleźć odpowiedniego pracodawcę :).

0

Siedze w Javie. I to co opisujecie to niby wszystko ladnie pieknie. Ale jakos brakuje mi specjalizacji w tym calym webie. Sporo tez zalezy od pracodawcy.

Pewnie nie tak malo osob klepie te cale JSP i inne archeologie.

A tak naprawde malo miejsc gdzie mozna caly czas sie rozwijac. Np. Osobiscie to malo mialem okazji napisac cos wielowatkowego.

4

Zapomnieliście o najważniejszym - konfiguruje IoC w XML.
(Nie w każdym projekcie i zdaniem kolegów od komentarzy ponoć tylko w legacy kodzie. W co osobiście nie wierzę, bo jeśli architekt/tech lead ma legacy brain, to i zastosowane w projekcie techniki też będą legacy nawet jeśli projekt wystartował dzisiaj rano. A, że architekci to głównie starzy ludzie...)

A poza tym jestem hejterem Javy i codziennie przed snem odinstalowuję JRE i Ideę ze swojego komputera.

0

Javę można tolerować przy pisaniu na Androida, przynajmniej całe Api jest w miarę spójne i dobrze udokumentowane, bo zaprojektowane przez Google. Java serwerowa to syf (nie w sensie języka, tylko wszystkich tych frameworków)

0

API w Androidzie jest akurat źle zaprojektowane, modelowy przykład jak tego nie robić - kombinacje starych złych API + nowych (czasem lepszych czasem równie złych). Np. nie posiadają abstrakcji na obsługe najczęstszych przypadków (takich co pokrywają 90%+ przypadków), zawsze musisz babrać się w lowlevelowych.

0

Jak mawiają Angole, trawa jest zawsze zieleńsza gdzie indziej.

Przekombinowany cykl życia komponentów (aktywności, fragmenty)... Same fragmenty, które miały rozwiązać część kłopotów, dorzuciły co najmniej drugie tyle, a już nie daj Boże użyć fragmentów zagnieżdżonych, życzę miłych wrażeń. Ułomne i nieporęczne rozwiązania jak Loader, łamanie wstecznej kompatybilności (zachowanie AsyncTask), mnóstwo, mnóstwo gnoju i ogromny dług techniczny. Oczywiście nie mogę wykluczyć, że z perspektywy Javy serwerowej i tak wygląda to jeszcze dość sympatycznie.

0

Może mi ktoś wyjaśni dlaczego programy desktopowe pisane w C#, są szybsze od tych pisanych w Java + Swing, JavaFX?

0
Rerere napisał(a):

Javę można tolerować przy pisaniu na Androida, przynajmniej całe Api jest w miarę spójne i dobrze udokumentowane, bo zaprojektowane przez Google. Java serwerowa to syf (nie w sensie języka, tylko wszystkich tych frameworków)

Nieprawda. Serwerowa Java jest całkiem miodna - ta nowoczesna.

To projekty Javowe są zazwyczaj stare. Ale to wina braku adaptacji nowosci.

0

Może stara JEE z tymi wszystkimi JSF to syf, ale praca ze Springiem to jest dla mnie czysta przyjemność. Pod warunkiem że nie jest skonfigurowany w XML :D

1

Gdy ktos pisze, że Android to dobrze zaprojektowane API to zawsze mysle czy mowimy o tym samym Androidzie...

3

Może to nieoczywiste, ale Java to nie tylko JEE.

Są także inne opcje:

https://www.upwork.com/hiring/data/big-data-science-tools/
https://www.upwork.com/hiring/data/r-vs-java-vs-python-which-is-best/
https://en.wikipedia.org/wiki/Weka_(machine_learning)

0

https://developer.android.com/topic/libraries/architecture/guide.html Chyba poszli po rozum do głowy :D

@panryz może i tak, tylko czemu Android Studio nie generuje takiego szablonu skoro tak. Pisząc to modele i view modele cały czas mam wrażenie, że robię to wbrew temu, co chce Google i musżę to robić na siłę i myśleć jakby zmienić ten "normalny" kod na mvvm, żeby dalej działało.

0

Architecture Components to nowiutka rzecz, są dopiero w preview. Nie zdziwiłbym się więc, gdyby w Android Studio pojawiła się możliwość wygenerowania fundamentów projektu opartego o AC.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.