Smutny Java Developer - jak przestać klepać crudy?

1

Mam pytania dotyczące ścieżki kariery.

Na początek trochę o mnie: mam prawie 4 lata doświadczenia (ale tylko na papierku, w praktyce godzinowo wyszło tak z 2,5 roku bo czasy studenckie i niepełny etat) głównie jako backendowiec w Javie, pobocznie zawsze robiłem jakieś proste taski na froncie (w każdej firmie inna technologia: vaadin, eclipse rap, jquery, react), co w sumie jakoś nie rozwijało, ale taka różnorodność dawała mi nieco większą satysfakcję z pracy od klepania crudów.

Aby się wycenić i oszacować poziom połaziłem dla sportu na rozmowy rekrutacyjne, wyceniają mnie obecnie na 90-100PLN/h, bardzo dobrze wypadam z javy core, części algorytmicznej (zawsze lubiłem algorytmikę, zagadki logiczne, szachy, sudoku + ukończyłem licencjat z matmy) i sql, ale słabo mi idą bardziej zaawansowane rzeczy typu gc czy wielowątkowość bo jej nie używam w projekcie czy spring bo nie widzę sensu pamiętania miliona adnotacji które sprawdzę w 10 sekund co robią. Rozwój na froncie mnie raczej nie interesuje. I w sumie mam dwa pomysły na dalszy rozwój:

  1. Skupić się na java advanced, obkucie się na rozmowy, wkręcić się gdzieś na mocny mid/senior i na 90% klepać crudy (czego nie lubie, ale trudno, za dobry hajs mogę to robić)

  2. Skupić się na algorytmice, może SQL i robić coś ambitniejszego (co by mnie bardziej ciekawiło), no ale gdzie w takim razie szukać pracy java + algorytmika + licencjat z matmy? Na myśl mi przychodzi jakieś data science (ale to zdominowane przez pythona), jakieś modelowanie matematyczne (gdzie ofert pracy nie widziałem chyba nigdy), a chciałbym jednak nie zaczynać kariery od nowa tylko jakoś wykorzystać doświadczenie w javie.

I w sumie teraz główne pytanie, co mogę zrobić by nie zostać smutnym klepaczem, tylko jednak podążyć drugą ścieżką? Jakie lub jak szukać stanowisk z takimi wymaganiami?

EDIT:
Wpisywać w CV rzeczy w stylu finalista Mistrzostw Polski w Grach Matematycznych i Logicznych czy członkostwo w Mensie, czy to raczej nie ma wpływu (lub ma negatywny)?

4

W ogłoszeniach opisy stanowiska mogą być szablonowe i niewiele mówiące. Szukaj lepiej nie po opisach stanowiska a po firmach o takim profilu jak Ci pasuje, a najlepiej na ich stronach. Zrób sobie swoją listę potencjalnych firm które by Cię interesowały i monitoruj ich stronki.

3

Skupić się na algorytmice

Algorytmika? A po co to komu w realnym świecie? Nie mówię, że się nie zdarza, ale sorry, nie znajdziesz pracy na stanowisku Senior Algorithm Big Brain Developer.

Na myśl mi przychodzi jakieś data science (ale to zdominowane przez pythona),

To naucz się pythona i uderzaj. To nie gryzie (tylko dusi).
Dobrze myślisz, że modelowanie AI to dzisiaj miejsce, gdzie możesz robić jakiś research w pracy. Niestety same opisy stanowisk nic nie mówią, musisz się dopytać, czego będą od ciebie wymagać.

Jak zobaczysz Java+Spring Boot+Hibernate na pierwszych miejscach w wymaganiach, to nie będzie to projekt dla ciebie.
Jak zobaczysz Scrum na wstępie opisu stanowiska, to wiedz, że nie będziesz robić żadnego prototypowania, tylko będziesz skupiał się na trzepaniu tasków.

EDIT:
Wpisywać w CV rzeczy w stylu finalista Mistrzostw Polski w Grach Matematycznych i Logicznych czy członkostwo w Mensie, czy to raczej nie ma wpływu (lub ma negatywny)?

Widzę impostor syndrome wszedł głeboko, skoro się pytasz. Ludzie wpisują straszne rzeczy do CV, a twój pomysł ma jakiś tam związek z pracą. Wklej to do rozdziału „inne”. Może zrobi wrażenie, może zostanie zignorowane. Nie zaszkodzi.

1
benoni12 napisał(a):

słabo mi idą bardziej zaawansowane rzeczy typu gc czy wielowątkowość bo jej nie używam w projekcie czy spring bo nie widzę sensu pamiętania miliona adnotacji które sprawdzę w 10 sekund co robią.

Jeśli nie widzisz sensu uczenia się na rozmowy kwalifikacyjne, żeby zwiększyć zarobki, to ¯_(ツ)_/¯

1

Może pomyśl o zmianie obszaru w którym pracujesz? Webówka to dobry hajs jeśli się jest ogarniętym, dużo ofert pracy, natomiast często wiąże się to z klepaniem curdów, raz na jakiś czas wpadnie greenfield gdzie oprócz CRUDA masz architekturę. Może idź w tym kierunku (architektura, systemy rozproszone - strasznie dużo teorii, znajomość narzędzi itd ale hajs dobry i trzeba być dobrym, by system działał nie tylko na papierze ale i na prodzie)?

Dużo matmy i algorytmów masz również w gamedevie, wymagany głównie CPP/C# oraz znajomość Unreal/Unity, ewentualnie jako CPP dev do firmy, która rozwija własny silnik. Minusem są zarobki w gamedevie :(

Również jeśli masz potencjał to jakieś niskopoziomowe rzeczy, gdzie głównie robisz w C/CPP/Rust (jak rozwijanie języka programowania, systemy operacyjne itd)

10

Ewakuowałem się z javowych CRUDów, a siedziałem w nich długo - 15 lat :-) (no nie wszystko to były takie faktycznie durne CRUDy - ale jednak webówka itp).
Primo - po pierwsze to trzeba wyjść z Javy, ciekawe projekty niecrudowe to miałem w Kotlinie (i TypeScript - front (o rany !!!) .
Paradoks Javy polega na tym, że zupełnie się do CRUDów nie nadaje, i to się właśnie w niej robi.

Czym można sie zająć:
Siedze w dzialce blisko blockchain i mam teaz takie problemy jak BFT, Vector clocks, smart kontrakty - ataki na to itp. Wielka matematyka to to nie jest, a do tego jestem klepaczem (inni zajmują się główkowanie - ja klepie) ale w stosunku do CRUDów postęp jest.
W mojej bańce ludzie używają Haskella, Scali, Rust, gdzieś dalej Kotlina.

IMO najciekawsze problemy to sa w gamedev - ale to C++/C# i może Rust niedługo (nie mam pojęcia).

1

IMO znajdź jakiś ciekawy startup, pewnie kasa będzie mniejsza, ale może robota ciekawsza. Szukaj jednak takiego co poza kasą od inwestorów ma płacących klientów. Dziś o VC nieco trudniej i np. startup, który jeszcze nie zarabia, może zwyczajnie nie pozyskać kolejnej rundy, choćby projekt był nie wiadomo jak bardzo interesujący.

0

Czasem na jakiś uczelniach chcą Javy jako języka programowania.
No, ale generalnie niestety trzeba się przebranżowić a tu będziesz potrzebował o wiele więcej pracy, bo oprócz pythona/c++ to trzeba będzie przyswoić wiedzę domenową, która bywa cięższa. No i bedziesz całościowo mniej zarabiał, bo najwięcej kasy ma się właśnie w webowce, Javie itd.

1

Pomyśl nad devopsowaniem, może to kolejny twój krok zainteresowań, o którym jeszcze nie wiesz.

0

w javie i nie crudy to chyba jakies hft, ale to musailbys sie pewnie do city przeniesc i miec leb jak sklep. Inna opcja to zmienic technologie. Tyle ze tu trzeba wlozyc wysilek w nauke nowego.

6
marcyse napisał(a):

Pomyśl nad devopsowaniem, może to kolejny twój krok zainteresowań, o którym jeszcze nie wiesz.

Jako okazjonalny programista YAML powiem:
To dobrze płatna działka, ale cholernie frustrująca dla programisty. Wielogodzinne wprawtrywanie się w konsolę, bo znowu coś porypałeś w parametrach startowych serwisu i trzeba powtórzyć deploy. Strasznie smutne.

Fajnie jest ogarniać narzędzia/CI/chmurki na tyle, żeby móc sobie wszystko zoptymalizować / odapalić. Ale jako praca na etat to smutne.

2

Tutaj przedmówca dobrze powiedział, miałem czasem obowiązki Devopsa i do frustracji doprowadzało mnie to że jakaś libka nie działała tak jak potrzeba bo jej maintainerzy zapomnieli o niej a podbicie wersji pluginu z której ona korzystała rozwiązywało problem xDDDD do czego czasem się dochodziło po paru dniach. Albo że jakoś tool pod spodem dodaje znak nowej linii czy inne cudawianki.

Jak piszesz swój kod to masz kontrolę i większą władzę nad tym co robisz.

3

Duże firmy / korporacje / softłer-domy to niestety miejsca gdzie w większości będzie się robić rzeczy szablonowe, masowe, nudne w tym CRUDy. Jedynie mały procent będzie miał okazję robić rzeczy ciekawe. Pozostaje pytanie jak się z tego wyrwać?

benoni12 napisał(a):

I w sumie teraz główne pytanie, co mogę zrobić by nie zostać smutnym klepaczem, tylko jednak podążyć drugą ścieżką? Jakie lub jak szukać stanowisk z takimi wymaganiami?
Wpisywać w CV rzeczy w stylu finalista Mistrzostw Polski w Grach Matematycznych i Logicznych czy członkostwo w Mensie, czy to raczej nie ma wpływu (lub ma negatywny)?

Brak nudy to umiejętność samodzielnej realizacji zadań z różnych obszarów. Jeśli wyspecjalizowałeś się w CRUD'ach na bazie JAVA to teraz spróbuj samodzielnie robić np. front-endy w JS/CSS/HTML. To pozwoli Ci tworzyć projekty w o wiele szerszym zakresie i bardziej samodzielnie.
Z doświadczenia wiem, że w małych firmach są ciekawsze projekty a stawki w zakresie 150zł - 240zł / godz. już dla większości stały się normą i mało kto z ich powodu rezygnuje ze współpracy. Mowa tu o polskich klientach - tak, często tych wyśmiewanych "Januszexach" co to Pan Adam zatrudnia tylko 10 osób i handluje np. zbiornikami na wodę. Fakt, że takie stawki osiągamy poprzez kompleksowe dostarczanie rozwiązań, czyli od rozmów wstępnych przez projekt, wykonanie, testy po dostarczenie działającego rozwiązania. Wymaga to szerokiej wiedzy ale warto wspomnieć, że 20 lat temu też wszystkiego nie wiedziałem a też w taki sposób działałem. Było trudniej bo to zmuszało mnie do nauki i zdobywania wiedzy, z której dziś korzystam i na której zarabiam.
Na początek nie musisz umieć poruszać się we wszystkich obszarach bo nigdy nie dostaniesz zlecenia, które będzie wymagało znajomości ich wszystkich. Może się trafić, że dostaniesz zlecenie na prosty system okienkowy na desktop + aplikacja na telefon. Z pierwszym prawdopodobnie poradzisz sobie już dziś a z mobilną się douczysz.
W ten sposób za kilka lat ogarniesz technologie od niezbędnego zarządzania serwerami przez projektowanie, back-end po front-end niezależnie czy będzie on mobilny, w przeglądarce czy desktop. Być może w porównaniu z profesjonalnym Analitykiem z Google będziesz "słaby" ale też nie każdy problem wymaga "rocket-science" by go rozwiązać. Stwierdzę nawet, że większość projektów wymaga minimalnej podstawowej wiedzy z:

  • prowadzenia rozmów wstępnych i analitycznego umysłu;
  • projektowania aplikacji / bazy;
  • czegoś w czym stworzymy serwer dla back-end do współpracujący z bazą;
  • znajomości technologii WEB - czyli coś o będzie gadać z back-end i ładnie wyglądać;
  • dziś fajnie jest umieć zrobić aplikację na telefon. Na szczęście mamy tu masę technologii a od biedy znając juzJS/HTML i CSS można zrobić Progressive Web App i nie wgłębiać się w nowe technologie.
  • podstawy jakiejś chmury Azure, AWS itp...

Ogarniecie podstaw powyższych zagadnień to kwesta roku może dwóch lat ćwiczeń ale warto to zrobić bo na całą resztę życia będziesz miał ogólniejsze pojęcie o tworzeniu systemów i nawet jeśli taka forma pracy Ci nie podejdzie to zamykając się w jednym z obszarów będziesz zwyczajnie lepszy niż Ci co tego nie "liznęli".

1
katakrowa napisał(a):

Brak nudy to umiejętność samodzielnej realizacji zadań z różnych obszarów. Jeśli wyspecjalizowałeś się w CRUD'ach na bazie JAVA to teraz spróbuj samodzielnie robić np. front-endy w JS/CSS/HTML. To pozwoli Ci tworzyć projekty w o wiele szerszym zakresie i bardziej samodzielnie.

No tak, gość chce uciec od frameworków i innych pobocznych rzeczy, a Ty mu polecasz wejście w to głębiej (praca we frontendzie jest chyba jeszcze bardziej odległe od programowania sensu stricto, niż klepanie beanów w springu i użeranie się z hibernate'em).

Ja bym poszukał w firmach zajmujących się ML (z ostatnio widzianych np. DeepL), albo posiadających własny, innowacyjny produkt, który coś robi (np. HERE (ta firma od map)). Jeśli jesteś dobry w klepanie zadanek, spróbowałbym też np. do firm typu google (na interview nikt nie pyta o springa, liczy się głównie sprawne rozwiązywanie zadań algorytmicznych).

1

mam prawie 4 lata doświadczenia (ale tylko na papierku, w praktyce godzinowo wyszło tak z 2,5 roku bo czasy studenckie i niepełny etat)

plus za uczciwość, wielu nie potrafi się przyznać :D

A co do tematu - znaleźć sobie jakąś fajną działkę, spróbować wejść w nią na tyle ile się da i aplikować

0
benoni12 napisał(a):

[...] I w sumie mam dwa pomysły na dalszy rozwój:

  1. Skupić się na java advanced, obkucie się na rozmowy, wkręcić się gdzieś na mocny mid/senior i na 90% klepać crudy (czego nie lubie, ale trudno, za dobry hajs mogę to robić)

  2. Skupić się na algorytmice, może SQL i robić coś ambitniejszego (co by mnie bardziej ciekawiło), no ale gdzie w takim razie szukać pracy java + algorytmika + licencjat z matmy? Na myśl mi przychodzi jakieś data science (ale to zdominowane przez pythona), jakieś modelowanie matematyczne (gdzie ofert pracy nie widziałem chyba nigdy), a chciałbym jednak nie zaczynać kariery od nowa tylko jakoś wykorzystać doświadczenie w javie.

Jeszcze możesz spróbować sił w testach automatycznych/integracyjnych. Może nie jest to bardzo rozwojowe, ale pomoże zdobyć wiedzę z różnych technologii ze środowiska Javy. Napisanie testów integracyjnych między systemami/mikroserwisami to dość przyjemna robota, bo wszystko się robi samemu. I CRUDów nie ma.

EDIT:
Wpisywać w CV rzeczy w stylu finalista Mistrzostw Polski w Grach Matematycznych i Logicznych czy członkostwo w Mensie, czy to raczej nie ma wpływu (lub ma negatywny)?

wszystko co robisz czy osiągnąłeś jest mile widziane w CV

0

Jestem w podobnej sytuacji (Java, też jestem po matmie.) Będę szedł w stronę kryptografii, blockchaina. Wydaje mi się, że dla Ciebie też to może być dobra opcja. A i jeszcze coś... ja bym Cię wycenił na 150 PLN.

1
jarekr000000 napisał(a):
marcyse napisał(a):

Pomyśl nad devopsowaniem, może to kolejny twój krok zainteresowań, o którym jeszcze nie wiesz.

Jako okazjonalny programista YAML powiem:
To dobrze płatna działka, ale cholernie frustrująca dla programisty. Wielogodzinne wprawtrywanie się w konsolę, bo znowu coś porypałeś w parametrach startowych serwisu i trzeba powtórzyć deploy. Strasznie smutne.

Fajnie jest ogarniać narzędzia/CI/chmurki na tyle, żeby móc sobie wszystko zoptymalizować / odapalić. Ale jako praca na etat to smutne.

Ja to właśnie przeżywam i to jest niesamowicie smutne. Może nie jestem full time devopsem, ale mamy w systemie Sparka który dobrze się zachowuje tylko na zdalnej maszynie. A najlepiej z taką dużą ilością danych. Wiec praca wygląda ta.

  1. Coś tam klepie lokalnie, jak kompiluje się, szczatkowe testy przechodzą i wydaje się że jest dobrze muszę zmerdzować feature brancha do developl brancha
  2. Zmiany aplikują się na środowisko developerskie gdzie są szczątkowe dane. Puszczam Joby i patrzę co się dzieje. Czasem wrzystko przechodzi od razu, ale o wiele częściej coś sie wywala. Jak jest już dobrze to przenoszę zmiany z develop brancha na integration brancha
  3. Zmiany aplikują się na środowisko integracyjne gdzie jest więcej danych. Niektóre joby trwają godzinami. Dobrze jest jak uda sie joba puścić na koniec dniówki. Czasem przeciągam dniówkę o pół h żeby jeszcze puścić i zobaczyć wyniki rano. Pół h oczywiście odbieram sobie następnego dnia

Ogólnie mało to przypomina pracę w TDD :D A historia w repo wygląda jak tragedia :D Na szczęście praca nad Jobami w Sparku to tak tylko 20-25% mojego czasu :P Inaczej bym pewnie zwariował :P

Oczywiście jak ktoś ma jakiś pomysł jak testować Sparka czy Airflowa lokalnie to chętnie przyjmę pomysł czy tutaroal jak to zrobić

1

Ja swojego czasu przeszedłem z CRUDów na szeroko rozumiane Big Data oraz przetwarzanie rozproszone. Jest to dużo ciekawsze bo jest tu trochę roboty "inżynierskiej", tj.:

  • musisz grzebać w dokumentacji żeby znaleźć rzeczy, których w Google nie znajdziesz typu "który z pięciu rodzajów joinów będzie dobry do mojego przypadku użycia i dlaczego"
  • coś robi to, co powinno robić, ale robi to zbyt wolno - i wtedy zaczynasz bawić się w pomiary wydajności, zabawę z parametrami itp.
  • dochodzą sprawy infrastrukturalne, typu "ile node'ów wystarczy"

Stack to Java, SQL i Python, przy czym Pythona uczyłem się w locie i nie mam żadnych złudzeń, że CRUDa w nim bym nie napisał.

Tak jakbym miał wskazywać - to sporo firm zaczęło transformację z architektur synchronicznych (tj. tradycyjny CRUD) na taką opartą o zdarzenia (jakieś formy publish-subscribe) więc jeśli poszukasz to na pewno znajdziesz ciekawszy projekt.

1

@KamilAdam: a jakbys zautomatyzowal stawianie srodowiska + load gena ktory wygenruje ci odpowiednia ilosc danych/ruch tak zeby sie to testowalo z automatu po kazdym commicie? Nie wiem co masz pod spodem, ale ja ostatnio cos takiego dla Kafki robilem. Po kazdym commicie buduje sie obraz dockerowy, na k8s zestawia sie tymczasowe srodowisko, ida testy i wszystko sie discarduje.

Nawet jak nie przetestujesz w pelni, to niech Ci da 80% pewnosci ze jest ok. Wtedy juz bedziesz wiedzial ze prawie gotowe, wrzucisz na integracje jak teraz i bedziesz mial pewnosc jak przejdzie.

1

Kilka lat temu myślałem podobnie z tymi crudami, dlatego raz zmieniłem pracę na Python+ML. Na pierwszy rzut oka to było coś nietypowego, coś co mnie nakręcało, powodowało chęć czytania wielu książek, myśl, że to zamieni te 8 pustych etatowych godzin na coś miarę moich pragnień i możliwości była ekscytująca.

Czy tak było? Było, ale do czasu, gdy nie zdałem sobie sprawy, że czas potrafi płynąć za szybko.

Jak każdy projekt i ten miał terminy, w rezultacie musiałem się dwoić i troić, by wywiązywać się z założeń. Oczywiście sygnalizowałem niektóre problemy i dostawałem też więcej czasu, czasem też jakieś pomocne informacje więc nie było tak koszmarnie. Z pracy się wywiązałem, a ostatecznie produkt z powodzeniem został wdrożony do oddziałów firmy klienta rozmieszczonych w terenie całego kraju.

Wydawać by się mogło, że jest git i że o to chodziło.

No jak dla mnie niezupełnie, bo jakby spojrzeć na to od strony świadczenia usługi to wziąłem na siebie nieświadomie duże ryzyko (i potencjalne kary!). Pewne problemy powodowały, że nocki zarwałem, firma też do mnie wydzwaniała w urodziny w nocy, bym łatał błędy, bo następnego dnia prezentacja. Dodatkowo finansowo to nie było moje najlepsze zagranie, także ta ekscytacja to zbytnio nie pomaga w negocjacjach. Ostatecznie biorąc pod uwagę cały mój wkład jaki wtedy był to nigdy w życiu bym tego nie chciał powtórzyć, z wyjątkiem pracy na własnych warunkach i we własnej firmie.

0

Ja kilka lat temu też szukałem zmiany jako C# dev. Rozważałem Unity, ale ostatecznie wylądowałem w krypto. Które polecam. Ale algorytmika Ci się przyda.

0

@Lukxxx: przy pierwszej pracy juz ogarniales blokczejny czy on the job dopiero?

8

Co złego w tym że jesteśmy klepaczami crudów dla Zachodu?
Ano to że :

  • można z nas łatwo zrezygnować
  • można nam stawiać warunki, zarówno pracownikom jak i politykom "panie dej zwolniernie z podatku"
  • nasi programiści sie nie rozwijają a uwsteczniają, nie mają możliwości nawet z dala podejrzeć ciekawszych bardziej skomplikowanych zadań bo te są w centrali, my dostajemy tylko zadania zdefiniowane przez kogoś może i gorszego technicznie, ale siedzącego w centrali
  • ludzie oduczają się inicjatywy, nie tylko nie rozwijają technicznie, ale i jeśli chodzi o umiejętności miękkie. Promowani są nieasertywni pokorni pracownicy. przez mikromanagement ludzie przestają umieć zarządzać własnym czasem pracy
9
Miang napisał(a):
  • można z nas łatwo zrezygnować

Tak samo jak można zrezygnować z programistów w US i Indiach.

  • można nam stawiać warunki, zarówno pracownikom jak i politykom "panie dej zwolniernie z podatku"

Nie rozumiem, o jakich warunkach mowa? Myślisz, że to prosta sprawa złapać takiego sensownego java developera?

  • nasi programiści sie nie rozwijają a uwsteczniają, nie mają możliwości nawet z dala podejrzeć ciekawszych bardziej skomplikowanych zadań bo te są w centrali, my dostajemy tylko zadania zdefiniowane przez kogoś może i gorszego technicznie, ale siedzącego w centrali

Przez całą moją przygodę z 4programmers nie dostałem odpowiedzi na pytanie czym jest ciekawe, bardziej skomplikowane zadanie. W pracy wszystko Ci działa od razu za pierwszym razem? Nie ma żadnych zagwozdek? Ja się przewinąłem przez kilka firm, w każdej były wyzwania i ciekawe rzeczy. Ale pewnie tu na forum bym został nazwany klepaczem CRUDów xd nigdy w życiu tych mitycznych CRUDów nie widziałem. Biznes nie płaci za CRUDy (czyli nakładki na baze danych, prezentującą stan bazy).

  • ludzie oduczają się inicjatywy, nie tylko nie rozwijają technicznie, ale i jeśli chodzi o umiejętności miękkie. Promowani są nieasertywni pokorni pracownicy. przez mikromanagement ludzie przestają umieć zarządzać własnym czasem pracy

Mikromanagementu również nie lubię, ale u Ciebie promowani są nieasertywni pokorni pracownicy? U mnie zawsze promowani byli ekstrawertyczni ludzie, umiejący robić dużo rozgłosu wokół siebie - pokorny, cichy i uległy Mirek programujący wszystko z palca, dostanie co najwyżej darmowe nadgodziny xd

0

Co złego w tym że jesteśmy klepaczami crudów dla Zachodu?

Proponujesz jakieś rozwiązanie?

Bo ja to widzę jako narzekanie.

Z tego co się orientuje po rozmowach z rocznikami 40/50+, to za czasów jak jeszcze nie było roboty z zachodu to było znacznie gorzej dla pracownika.

1
Pinek napisał(a):

Przez całą moją przygodę z 4programmers nie dostałem odpowiedzi na pytanie czym jest ciekawe, bardziej skomplikowane zadanie.

np.

  • sa programisci ktorzy pisza "SELECT book FROM shop", ale sa tez tacy ktorzy musza zaimplementowac kod ktory tego selecta wykona, uwzgledniajac ze to ma byc wydajne bedac czescia 3-kilometrowego zapytania korzystajacego jednoczesnie ze wszystkiego co jest w standardzie i kilku rozszezen
  • sa programisci ktorzy znaja i uzywaja kafki (czyli jesli ostatnio sie nic nie zmienilo to jakies 2 klasy z 3 metodami), ale sa tez tacy ktorzy musza ta kafke zaimplementowac zagwarantujac ze to bedzie dzialalo wydajnie na dowolnym srodowisku pod dowolnym obciazeniem. No i sa tez tacy programisci ktorzy musza napisac takie GC zeby kafka miala jakiekolwiek szanse byc uzyta w praktyce.
  • sa programisci ktorzy uzyja libki do wykrywania krawiedzi, ale sa tez tacy ktorzy musza wymyslic algorytm ktory to zrobi lepiej od istniejacych a potem zaimplementuja, i to tak zeby bylo wydajne na dowolnym liczydle

I zapewniam ze druga grupa programistow jest spotykana w przyrodzie.

0

Z tego co się zorientowałem po rynku pracy to jak chcesz i się pouczysz to prędzej czy później dostaniesz jakaś ciekawa i wymagająca pracę. Po prostu trzeba mieć tą wiedze i znajomość konkretnego języka programowania, np c++ albo pythona.

1
Pinek napisał(a):
Miang napisał(a):
  • można z nas łatwo zrezygnować
    Nie rozumiem, o jakich warunkach mowa? Myślisz, że to prosta sprawa złapać takiego sensownego java developera?>

a potrzebni są bardzo dobrzy czy zwykli?

  • nasi programiści sie nie rozwijają a uwsteczniają, nie mają możliwości nawet z dala podejrzeć ciekawszych bardziej skomplikowanych zadań bo te są w centrali, my dostajemy tylko zadania zdefiniowane przez kogoś może i gorszego technicznie, ale siedzącego w centrali

Przez całą moją przygodę z 4programmers nie dostałem odpowiedzi na pytanie czym jest ciekawe, bardziej skomplikowane zadanie. W pracy wszystko Ci działa od razu za pierwszym razem? Nie ma żadnych zagwozdek? Ja się przewinąłem przez kilka firm, w każdej były wyzwania i ciekawe rzeczy. Ale pewnie tu na forum bym został nazwany klepaczem CRUDów xd nigdy w życiu tych mitycznych CRUDów nie widziałem. Biznes nie płaci za CRUDy (czyli nakładki na baze danych, prezentującą stan bazy).

pthreads ostatnio było ciekawym wyzwaniem

  • ludzie oduczają się inicjatywy, nie tylko nie rozwijają technicznie, ale i jeśli chodzi o umiejętności miękkie. Promowani są nieasertywni pokorni pracownicy. przez mikromanagement ludzie przestają umieć zarządzać własnym czasem pracy

Mikromanagementu również nie lubię, ale u Ciebie promowani są nieasertywni pokorni pracownicy? U mnie zawsze promowani byli ekstrawertyczni ludzie, umiejący robić dużo rozgłosu wokół siebie - pokorny, cichy i uległy Mirek programujący wszystko z palca, dostanie co najwyżej darmowe nadgodziny xd

całujący szefa w d*, a czy są ekstrawertycy czy introwertycy to mniej ważne. potem owszem dla siebie coś tam potrafili wyszarpać, ale w obronie "swojefgo " zespołu stanąc nie mieli zamiaru tylko przekazywali zadanai z góry z dodatkiem chamskiego ekstrawerycznego dowcipu

2

Jeśli masz aplikację, która nie ma za dużo logiki w sobie, i tak jak mówisz "cały czas klepiesz crudy" (pewnie masz rest, controllery, serwisy, i repozytoria), to może warto zrobić krok wstecz, i przestać robić to co Cię spowalnia? Nie traktuj wartości jak osobne modele i resource'y, tylko zrób jeden endpoint do przyjmowania crudów, olej rest, olej te warstwy service/repository, i wsadź cruda do bazy najprościej jak się da.

To byłby szczyt techdebtu w normalnej aplikacji, ale jeśli w Twojej nie ma nic poza crudami, to i tak nic nie tracisz tym, a zyskasz na czasie developmentu znacznie.

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