Nuda w pisaniu biznsowych aplikacji Java

1

Cześć,
Pracuję ponad rok w javie i piszę biznesowy shit oparty o Spring boota, hibernate itd typowy stack. Ostatnio dopadł mnie kryzys egzystencjalny jakie to jest cholernie nudne.. Tyle tylko że kasa całkiem dobra. Zacząlem się zastanawiać nad zmianą pracy, i wróciła myśl z przed lat - praca przy grach. Jeśli ktoś ma trochę doświadczenia w temacie i może był w takiej sytuacji jak ja obecnie to prośba o kilka słow czy warto, czy jest ciekawiej, czy przerzutka na C#/C++ jest ciężką i sprawą no i jak wygląda rynek pracy jalo game developer.

8

Bedziesz robil 2x wiecej godzin i zarabiał dwa razy mniej pieniedzy.
Sam marzyłem o robieniu gier, ale nie warto.
Jak Ci się nudzi to staraj się zmienić domene, np łaziki marsjanskie są tutaj popularne na forum.

7

Już po roku chcesz się przebranżowić? ;-) Oj!
Przypomnij sobie swoje początki - czy podobało Ci się klepanie tego, co teraz robisz? Jeśli tak, to z klepaniem gier może być podobnie - znudzi Ci się prędzej czy później. Ale tym się nie przejmuj, bo chyba wszyscy tak mamy...
Co do ilości ofert: w Javie jest więcej i będzie więcej. Nikt nie wie czy "na zawsze", ale z pewnością "na długo". O C# moje pojęcie jest znikome, dlatego się nie wypowiem. Ale co do C++, to... No cóż, wśród programistów tego języka krąży taki żarcik, że nikt go nie zna... Sam twórca na pytanie o znajomość C++ odpowiada, że zna go dobrze. Nie wyśmienicie, ani nie bardzo dobrze, lecz "tylko" dobrze. Oczywiście wypowiedź ta miała konkretny kontekst, ale to obrazuje, jak wysoki jest poziom skomplikowania tego tworu. W tym języku napotyka się zagwozdki, których nie doświadczy się w innych i nie chodzi tu bynajmniej wyłącznie o przypadki UB. Opanowanie C++ na poziomie, który będzie mógł zapewnić Ci przyzwoity dochód jako game developerowi, zajmie prawdopodobnie któryś rok, jeśli do tej pory się w nim nie specjalizowałeś, pomimo przyzwoitej znajomości Javy.
A jeśli irytuje Cię robienie softu dla biznesu, to przemyśl do jakiego projektu musiałbyś trafić, by zacząć dostrzegać sens w tym, co będziesz robił? Cyberpunk 2099 czy Wiedźmin 5 (bo na '77 i na czwórkę to się już chyba nie załapiesz...)?
Poza tym w dłuższej perspektywie tworzenie oprogramowania dla biznesu generuje i będzie generować większe przychody po stronie programisty, niż klepanie kodu dla cudzej rozrywki. Choćby nie wiem jak wypasione byłyby to gry.
Nic nie stoi na przeszkodzie, by zacząć rozwijać się w tym kierunku i zasmakować nieco game devu. Ale mostów za sobą nie pal. Nie żyjemy po to, żeby pracować, ale pracujemy po to, żeby żyć. A klepanie kodu to tylko praca. Prędzej czy później i tak większość dzisiejszych pasjonatów się tym znudzi. Dla wielu osób ze środowiska IT ważne są "ciekawe projekty", "super atmosfera", "samorealizacja" itp. A ja pytam: w robocie? W której na dodatek praktycznie nie masz wpływu na to, co robisz? Ciekawe projekty (byle nie programistyczne) i super atmosferę to mamy mieć po pracy. Żeby się realizować, mając wpływ na to, co się robi. Ale na tę genialną myśl często się wpada po przekroczeniu magicznego wieku lat 0x28...

2
Nerkowiec napisał(a):

Pracuję ponad rok w javie i piszę biznesowy shit oparty o Spring boota, hibernate itd typowy stack. Ostatnio dopadł mnie kryzys egzystencjalny jakie to jest cholernie nudne..

Nie jesteś jedyny. Ba nie jesteś nawet w mniejszości.

Nerkowiec napisał(a):

Tyle tylko że kasa całkiem dobra.

Im gorsza robota tym kasa musi być lepsza.
Im większy FUN tym kasa mniejsza.

Do korpo klepania najlepiej iść dopiero kiedy żona i małe dziecko skutecznie wytłumaczą, że sorry misiu, fun time się skończył, masz rodzinę, obowiązki, wydatki.. Zaciskasz zęby i klepiesz "nine to five".

Zbyt wczesne pójście do korpo grozi taki właśnie wypaleniem po roku.

4

możesz zrobić to co ja - robić jakieś projekty poboczne. W Twoim przypadku może to być gra w Unity.
Co do samej pracy, to podejściem może być spróbowanie robienie tych samych rzeczy inaczej. Np spróbuj napisać test jednostkowy tak, aby można było wywalić 2-3 inne. Albo spróbuj wprowadzić testy bdd. Stawiaj sobie wyzwania, bo widocznie teraz już przestajesz się rozwijać.

5

Znajdż sobie firmę, ewentualnie projekt po godzinach który:

  • będzie miał nie trywialną logikę,
  • można będzie wdrożyć w chmurze,
  • można i warto będzie zoptymalizować,
  • nie będzie napisany w Spring i Hibernate, a np w Javalin lub Micronaut.
  • do którego dodasz sobie gui np. w React
  • będziesz na bieżąco aktualizował wersje bibliotek i wybierzesz non LTS wersje Javy
  • napiszesz solidne testy w tym performance w JMH.

Dalej się nudzisz?

8

Nie żyjemy po to, żeby pracować, ale pracujemy po to, żeby żyć. 8h pracy, 8h snu, godzina na dojazdy, dołóż do tego jakieś zakupy, jedzenie, ogarnianie sie do pracy itp. Wtedy na to 'życie' zostaną Ci ze dwie godziny dziennie. To ja już jednak wolę się postarać, żeby do pracy chodzić z przyjemnością ;)

0
no_solution_found napisał(a):

możesz zrobić to co ja - robić jakieś projekty poboczne. W Twoim przypadku może to być gra w Unity.

A co z "klauzulami o sprzedaży duszy i ciała" w przypadku takich side-projektów? Matka korporacja Cię nie dojedzie o prawa majątkowe, jeśli się okaże, że taki projekcik robiony po godzinach przynosi pieniążki? Nie wiem jak w mniejszych firmach ale w korporacjach jeszcze się nie spotkałem z sytuacją, żeby nie było zapisu mówiącego coś w stylu

wszystko, co wymyślisz i wyrzeźbisz i zrobisz będąc zatrudnionym tutaj nie będzie tak naprawdę Twoje, tylko nasze

opcjonalnie z listą rzeczy, które się pod to łapią, na której brakuje chyba tylko pomysłu na prezent dla babci :D

4
tdudzik napisał(a):

To ja już jednak wolę się postarać, żeby do pracy chodzić z przyjemnością ;)

Jaki odsetek programistów ma na to szanse? Spójrzmy na to nie z punktu widzenia jednostki, lecz ogółu. Zadania do zrealizowania są takie, a nie inne. W większości przypadków są nudne. I to nie programiści określają te zadania, tylko biznes...

1

@lamerski: no właśnie to jest ten problem. Tylko ktoś wcześniej zasugerował, żeby się z tym pogodzić bo tak ma być. Ja wolę starać się znaleźć sposób na większą satysfakcję.

1

Spójrzmy na to nie z punktu widzenia jednostki, lecz ogółu

jak mozesz patrzec od strony ogółu? Raz, że to jest glupie, dwa jest to niewykonalne

  1. głupie, bo co mnie obchodzi jak ma reszta? Tak samo kazdego innego programiste nie powinno obchodzic jak ma reszta tylko skupic sie na swojej karierze.
  2. Niewykonalne, bo nie znasz opinii wszystkich programistów, nawet nie znasz połowy wiec nie możesz sie odwłowac do większości, skoro nie możesz sie odwłować do większości odnoszenie sie do ogólu mija się z celem.

Jeżeli chodzi o 2 to patrzysz przez pryzmat swojej perspektywy (więc indywitualną), masz jakieś grono programistów + jakieś wiadomości o programistach + jak Twoim zdaniem wygląda rynek pracy

Jeżeli ktoś chodzi do takiej pracy, gdzie nie czuje się w żaden sposób spełniony, to powinien zmienić prace lub warunki

Znam ludzi którzy jeżeli wystarczy, że im się zapłaci tyle ile oni chcą i mogą robić wszystko.

Najczęsciej z mojej perspektywy, problem nie jest taki, ze zadania sa za proste tylko pensja jest za mala

@Nerkowiec jakbyś dostawał 30k PLN miesiecznie za to co robisz, mialbys to samo uczucie? jezeli nie 30 to 50. Chodzi o to za jaka kwote bys robił tą pracę. Jeżeli ta kwota jest nieosiągalna lub jej nie ma to zmień prace, inaczej idz po podwyzke

0

@tdudzik zgadzam się z Tobą w 100%. Do tego powinniśmy dążyć. Ale miałem na myśli to, że większość z nas nie ma na to szans...
@fasadin masz rację, to jest głupie. Szczególnie z punktu widzenia kogoś, kto skupia się głównie na swojej karierze i nie obchodzi go jak mają inni. Ale mnie obchodzi jak mają inni i nie mam nic przeciwko temu, by mieli przynajmniej tak dobrze, jak ja albo lepiej. W końcu komuś musi się powodzić.

0

Zmień pracę, weź kredyt :D
A tak serio po roku to masz jeszcze mnóstwo tematów do zapoznania i jesteś dopiero na początku drogi. Także jeśli temat programowania jakkolwiek Cię interesuje poleciłbym po prostu podnosić sobie poprzeczkę poznając nowe mechanizmy, biblioteki, wnikając w to jak działa pod spodem twój framework.

Pracę przy grach zacznij sobie hobbystycznie, bo zaraz się okaże, że też jednak nudne patrzenie na ten sam lvl X razy.

0
tdudzik napisał(a):

@lamerski: no właśnie to jest ten problem. Tylko ktoś wcześniej zasugerował, żeby się z tym pogodzić bo tak ma być. Ja wolę starać się znaleźć sposób na większą satysfakcję.

Chyba każdy się stara, ale z pustego to i Salomon nie naleje :D jak w projekcie nie ma nic do robienia poza logiką biznesową i CRUDami to możesz się pociąć a i tak nic nie wymyślisz. Znaczy wymyślisz, ale może się to np. spotkać ze sprzeciwem, albo będzie zwyczajnie pozbawione sensu w danym kontekście. Na przykład - raczej nie będziesz próbował skalować utility toola używanego przez 5 osób z supportu na krzyż ;)

1

większość z nas nie ma na to szans...

Ale to przeciez nie jest tak ze każdy chce robić to samo. Jeden chciałby klepać gry, inny woli spokojne CRUDy bez spiny i dedlajnów a jeszcze inny chciałby programować łaziki marsjańskie. Trzeba znaleźć to co się lubi a potem to robić ;]
Ktoś chce coś ciekawszego niż biznesowe CRUDY?

2

@Nerkowiec: pobaw sie performance tuning, zacnzij kombinowac np. jak aplikacje przyspieszyc.

0

@Nerkowiec:
a czy myślisz że ludzie tworzący Springa czy Hazelcasta narzekaja na nudę?

1

Ja jakbym miał taką ciepłą posadkę w korpo z shitstackiem, że w większości czasu kompletnie nic się nie dzieje, a kasa spływa, do tego jeszcze z okazjonalną zdalną z domu, to bym równolegle klepał swój projekt, nie ma bata. No ale to ja, ale widzę, że teraz w modzie prędzej jest gdzie dostane więcej?, albo jakiego języka warto się uczyć? tudzież co robić panie premierze, jak żyć?. Potem dziwić się, że kołcze życia mają takie wzięcie.

5

Pamiętajcie, że na zadowolenie z pracy, oprócz technologii i projektu, bardzo dużą wagę mają ludzie w zespole ;)

1

A mi się wydaje, że na własnej skórze trzeba przejść przez różne etapy (w miarę oczywiście możliwości): praca w korpo przy nudnym/ starym dużym/ projekcie, praca przy projekcikach w software-housach/ praca przy dużych greenfieldach.

Tak na prawdę każdy z tych projektów czegoś uczy. Z własnego doświadczenia:

  1. Praca przy dużym projekcie procesu kredytowego (dla banku, ale nowiutkie technologie) - jak zaczyna się duży projekt, jak się współpracuje na początku z biznesem/analitykami/administratorami, przecieranie dróg o dostępy do usług i integracje z nimi...

  2. Praca w software-housach - ja akurat pracowałem przy kilku "projekcikach" (samemu można by je napisać od nowa w max rok) - tutaj jesteś one-man-army. Widzisz calutki proces i często jesteś za niego w dużej mierze odpowiedzialny.

  3. Praca przy starym dużym biznesowym projekcie - aktualnie jestem na tym etapie (trochę dla kasy +50%, trochę z nudy przy projekcikach w Software-housie). JavaEE, IBM Web Logic itd wiec technologie bez rewelacji. Ale proces ogromny (system łączy ok. 70 usług), 14+ letni. Mam nadzieje nauczyć się tutaj pracy przy takich projektach - jak odnajdywać się w kodzie którego kompletnie nie znasz i nie ma szans, abyś poznał cały proces itd. To trochę takie rozwiązywanie zagadek.. Aplikacji już dawno nie uruchamiałem bez debbugera :P

W planach mam jeszcze firmę w której na pierwszym miejscu stawia się utrzymywanie najnowszych technologii i dobrej jakości kodu (ponoć allegro?) oraz taką gdzie jest prawdziwa architektura mikroserwisów na chmurze.

Warto samemu sprawdzać. I na końcu uznajesz co Ci najbardziej odpowiada..

1
Nerkowiec napisał(a):

Pracuję ponad rok w javie i piszę biznesowy shit oparty o Spring boota, hibernate itd typowy stack. Ostatnio dopadł mnie kryzys egzystencjalny jakie to jest cholernie nudne.

Rozgraniczmy pojęcia. "Kryzys egzystencjalny" to jest dla mnie coś mocniejszego, poważniejszego niż "nuda". Czy rzeczywiście jest to taki kryzys i czy rzeczywiście jest on wynikły z nudy w pracy?


PS. Na wszelki wypadek dodam: nie neguję tego, że taki kryzys może wyniknąć z nudy.

2

Chyba nuda to taki znak, że przestajemy się rozwijać, i że warto pomyśleć o nowych zmianach, co nie?

Przynajmniej ja chciałbym tak to rozumieć, ale wtedy musiałbym zmieniać pracę co miesiąc :-)

Może to nie byłoby zbyt poprawne z mojej strony, ale sam nie wiem co gorsze. Chora praca czy chory ja?

Tak od czasu do czasu rozmyślam i wydaje mi się, że skoro programowanie można zaklasyfikować jako skill twórczy, to czemu praca na etat jest dla mnie miejcem, gdzie kreatywność znaczy tyle samo co matematyka (czyli nic)?

W pracy miałem pewną listę stałych:

  • miejsce
  • z góry dobranych ludzi nie mówiąc, że narzuconych
  • wyznaczona ilość czasu jaka mam klepać za dnia
  • wyznaczone narzędzia
  • spotkania w kalendarzu
  • zadania w jira lub trello.

I już ta rzecz powinna niepokoić, ponieważ w takich okolicznościach programista tak naprawdę rzadko coś wymyśla, czy tworzy - zwykle tu ma miejsce przyjmowanie polecenia, i realizacja odtwórczej pracy. Tak więc to, że praca w końcu Cię nudzi to normalna sprawa, dziwne byłoby to, gdyby w pracy w ogóle nie było miejsca na nudę.

Dodatkowo dodam, że parę lat temu miałem epizod, gdzie dostałem się do spoko firmy, w której dwaj programiści robili nadzwyczajną robotę (oczywiście w ramach 8h). Pierwszy raz coś takiego widziałem, oczywiście jarałem się tym, o nudzie nie było mowy, bo w końcu tyle rzeczy się tam działo.

Efektem ubocznym było to, że po powrocie do mieszkania już na nic nie miałem sił ani chęci. No i trzeciego dnia zwolniłem się, oczywiście to było dla nich niespodziewne, ale mi kasa zwyczajnie się nie kalkulowała, tzn nawet jakby dali mi o 2-3 patyki więcej to nadal byłoby słabo, bo ja nie mam w sobie takiej energii, by z każdym dniem rzeźbić tak zacięcie system. Nawet teraz pod dwóch długich sesjach w moim projekcie, muszę mieć zmianę np. basen, albo zadania mniej powiązane z kodem.

Oczywiście to było ciekawie doświadczenie i jestem na 100% pewien, że wiele rzeczy mogłem się tam nauczyć, ale koniec końców, jeśli nie masz udziałów, nadzwyczajnej pensji to zasuwanie pełnych 8h nie ma sensu (paradoksalnie po 3 tygodniach dostałem 2 razy lepiej płatną na UoP - więc zapierniczając u tych dwóch speców byłbym mocno z kasą do tyłu i pewnie ze zdrowiem też).

I tak podsumuje to doświadczenie: nudę ciężko jest wyrzucić z pracy na etacie, a jeśli tego dokonasz to sporo na tym stracisz.

Dodam, że mnie już ten problem nie męczy :D Nie pracuje na etacie, ale mimo to mam na boku dodatkowe źródło (oczywiście nudne :-P), ale do 30-50h w miesiącu idzie wykonać, to nie męczy jakoś tak tak bardzo, a jednocześnie pozwala mi pociągnąć miesiąc bez korzytania z odłożonej kasy. Przy takim założeniu zostaje mi 3 z 4 tygodni, które mogę przeznaczyć na rozwój własnych pomysłów. No i wtedy nuda na którą narzekasz nie jest taka zła. Gdybym nie miał dochodów to pewniej trudniej byłoby o ład w głowie, a to przecież podstawa w przypadku tworzenia i kreatywności.

8

Tu nie chodzi o nudę, moim zdaniem -> tylko o demotywujące warunki pracy.

I sami je sobie takie robimy akceptując bylejakość.

Faktycznie: Logika biznesowa jest z natury nudna.
Oczywiście bywają ciekawsze problemy do rozwiązania niż kolejny program do liczenia marchewek w warzywniaku, ale nawet w łazikach marsjańskich, grach itp. ciekawe części kodu to pewnie 10% (no może 15%). Reszta to nudne dopełnienie: walidacje, komunikaty błędów, konfiguracje itp. tony prostego (przeważnie) kodu, który też trzeba gdzieś napisać. Ba, nawet monady nie pomagają za bardzo :-(.

IMO da się przeżyć, ale ludzie dokładają sobie toksyczne dodatki:

  • brzydki kod,
  • błędogenne i cieżkie frameworki (Spring, Java EE, JPA i tony innych),
  • długi build,
  • długie czekanie na start aplikacji, rezultat (brak testów),
  • archaiczne narzędzia (np. do przeglądania logów, deploymentu),
  • zebrania,
  • bzdurne reguły kodu,
  • upierdliwe raportowanie czasu pracy/ zadań,

Przykład: jeśli mój build + restart aplikacji trwa dłużej niż 2 sekundy (bywa) to się demotywuje.
Nie mierzyłem, ale moja wydajnośc w buildzie 2 sekundowym vs 30 sekund (build + restart) to pewnie tak 4 do 1.

I w końcu ludzie się zniechęcają. A większośc z tych rzeczy da się naprawić.

6
Nerkowiec napisał(a):

Cześć,
Pracuję ponad rok w javie i piszę biznesowy shit oparty o Spring boota, hibernate itd typowy stack. Ostatnio dopadł mnie kryzys egzystencjalny jakie to jest cholernie nudne.. Tyle tylko że kasa całkiem dobra. Zacząlem się zastanawiać nad zmianą pracy

Mam dwie propozycje

  1. Zmień pracę na coś typowego dla 90% Polaków nie będących "korpo-programistami z całkiem dobrą kasą".
  2. Wyjedź do Londynu, wynajmij normalne porządne mieszkanie w mieście, nie na zadupiu, spróbuj się utrzymać na normalnym poziomie middle class (nie musi być upper middle class) z zarobków java-developera w Londynie z rocznym expem.

Pewnego razu do rabina przychodzi Żyd i płacze mu : "Rebe, ja już nie mogę wytrzymać, mam tak źle w życiu, tłoczymy się z żoną i dzieciakami w małym domku, trudno nam i w ogóle bieda." Rabin myśli, myśli i mówi "sprowadź sobie do domu teściową i wróć za tydzień".
Po tygodniu Żyd przychodzi. Rabin pyta go czy pomogło, a Żyd, że nie, że jest jeszcze gorzej, bo żona i teściowa się kłócą o to jak wychować dzieci, jak porządki robić, co gotować do jedzenia. Rabin poleca zatem Żydowi wziąć do domu kozę i wrócić za tydzień.
Mija tydzień, Żyd, niewyspany, zmęczony i zatroskany przychodzi. Okazuje się, że nie dość, że ciasno i źle i hałas, i gderanie to jeszcze smród, bród i koza wszystko nadgryza. Rabin udziela zatem ostatniej rady : "Odpraw teściową i wygoń kozę, a potem wróć po tygodniu".
Mija kolejny tydzień i Żyd przychodzi. Rabin pyta go jak tam mu się wiedzie, a ten, zadowolony odpowiada : "No Rebe, teraz, to ja mam jak w raju".

0
BraVolt napisał(a):

Pewnego razu do rabina przychodzi Żyd i płacze mu : "Rebe, ja już nie mogę wytrzymać,
...
ostatniej rady : "Odpraw teściową i wygoń kozę, a potem wróć po tygodniu".
Mija kolejny tydzień i Żyd przychodzi. Rabin pyta go jak tam mu się wiedzie, a ten, zadowolony odpowiada : "No Rebe, teraz, to ja mam jak w raju".

Znałem to z Agile kołczem. Ale z kozą też fajne.

1

A ja tam autora tematu ogólnie rozumiem. Chociaż znudzenie po 1 roku to dosyć szybko. Ja mam 12 lat doświadczenia, z czego ostatnie 4-5 to zdecydowanie głównie biznesówka. Wcześniej bywało różnie i sporo technicznych wyzwań także było. Dla kontekstu wszystko w .Net.

U mnie to wyglądało tak, że akurat miałem przestój między projektami, to zacząłem się też rozglądać. Znalazłem dwie rzeczy zdalnie. Jedna symulacje w Unity 3d. Druga to Klient + rozwiązania dookoła w Ethereum. W obu przeszedłem rekrutacje techniczne, ale dla firmy w Unity 3d okazałem się za drogi. Dla firmy od Ethereum ważniejsza była (w miarę) niskopoziomowa wiedza w .Net z uwagi na optymalizacje jakie robią w kodzie i byli w stanie dać sensowne pieniądze.

I tak od sierpnia będę implementował nowe algorytmy konsensusu, optymalizował kod i użycie pamięci, a także pracował nad adopcją Ethereum 2.0 w tym kliencie. Bardzo ciekawe rzeczy.

WIęc znajdź jakieś nisze nawet w tej Javie które Cię mogą zainteresować i... szukaj zdalnie - chyba że jest szansa też na miejscu, ale to nie wiem.

2

Co prawda nie kwalifikuję się do mówienia o związkach 12 lat ani z kobietą ani z zawodowym programowaniem, jednak teoretyzując, rozumiem, 12 lat, znudzenie i ochotę na wprowadzenie urozmaicenia ;)

Ale znudzenie i zniechęcenie już po roku oznacza, że IMO związek z Panią Javą od początku był pomyłką.

0

Ja obecnie po 2-3 latach widzę znudzenie Javą, zaczyna mi uwierać ten język. Natomiast przede wszystkim to znudzilo mi się pisanie logiki biznesowej. Na początku myślałem, że to będzie coś co lubie, ale okazało się na odwrot. To normalne, że po roku pracy cos Ci się nie podoba, to jest czas żeby próbować i sprawdzać w czym chcesz robić. Nie ciśnij na siłę tylko sprobuj czegoś nowego. Jeśli grzebałes coś we froncie wcześniej może sprobuj w tym kierunku ( ja podjałem taką decyzję), albo mobile. Niestety, ale komercyjnie jeśli chcesz mieć szeroki wybór firm to logika biznesowa cie czeka, najczęściej nudna.

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