✨️ Obserwuj #mirkoanonim
#programowanie #java #programista15 #naukaprogramowania

Jak się przygotować na rozmowę techniczną z javy, mając rok doświadczenia? Pytania będą podobno dostosowane do posiadanego doświadczenia oraz będzie sprawdzana umiejętność rozwiązywania problemów. Trzaskać zadanka na leetcod albo coś takiego? Może znacie kogoś, kto odpłatnie (lub nie :P) może przeprowadzić taką rozmowę kwalifikacyjną i pomóc się przygotować?

  • 11
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@ArcadiusK: 10+ lat w Javie i na sporą część bym odpowiadał "nie wiem, nie pamiętam, zarobiony jestem" XD. Na juniora może fajne, żeby sobie uporządkować co nieco, ale potem nie ma co sobie tym głowy zaśmiecać.

Pytanie Hibernate nr 17 to mistrz rozmów kwalifikacyjnych - tzn. wiedza do niczego nie potrzebna poza samymi interview.

@mirko_anonim: OPie, masz komercyjne doświadczenie więc powinieneś być pytany jak dorosły. Po roku powinieneś
  • Odpowiedz
@PaaD: W pełni się z tobą zgadzam, że znajomość odpowiedzi na większość z tych pytań w codziennej pracy się w ogóle nie przydaje, ale niestety sporo rekrutacji w polskich firmach wygląda właśnie w ten sposób xD
  • Odpowiedz
  • 0
@Saly: Ale co to ma do rzeczy? Abstrakcje nad bazą SQL daje mi Spring Data JPA. Wszystkie rzeczy związane z konkretną bazą np. Postgresem jest w appliction properties. Bardziej mi chodziło o to czy robić coś w stylu order/domain, product/domain itd.
  • Odpowiedz
Abstrakcje nad bazą SQL daje mi Spring Data JPA


@Nofenak: mówię o miejscu, gdzie będziesz miał implementację repozytoria czy encje bazodanowe. Czyli tam, gdzie jest kod, który "gada z bazą"
  • Odpowiedz
#java #programowanie #docker #pytanie

Jest tu jakiś spring bootowiec doświadczony? Kończę projekt do portfolio, microservicy, no i jestem na etapie dokerowania wszystkich serwisów. Skorzystałem z plugina JIB i elegancko wszystko się dockeryzuje na dockerhuba.

Problem mam z api keyami do IMDb i chatagpt, dwa z moich serwisów się łączą z nimi i pobierają dane. Jak mogę te api keys schować ale żeby przy odpalaniu
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@finalsolution77: a jak odpalasz te kontenery? użyj secrets w k8s albo jak startujesz przez docker compose to przy wstawaniu zapodaj zmienne środowiskowe

Możesz sobie lokalnie stworzyć plik .env z danymi do zaciągania

Zazwyczaj używa się pliku bash który wywołuje dockerowy entrypoint zaraz po zbudowaniu obrazu, w tym bashu pobierasz klucze i secrety np z AWS
  • Odpowiedz
Czy taki test sprawdzający czy bilet nie jest zarezerwowany przez więcej niż jednego usera jest ok? Miejsce blokuje pesymistycznie na poziomie bazy.

@test
void ticket_is_booked_only_by_one_user() {
//given
var film = addFilm();
  • 10
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

jak po prostu wywołasz to bookTicket jedno po drugim.


@Nofenak: jesli tak jest to wiesz już od czego zacząć poprawki. Race condition też, ale w drugiej kolejności.

Ten test uruchamia 100 wątków, z których każdy próbuje zarezerwować ten sam bilet.


@lubaxd: dużo lepiej, ale dalej assert nie sprawdza który user zrobił rezerwację.
  • Odpowiedz
✨️ Obserwuj #mirkoanonim
Kurdła mam problem z #programowanie #programista15k a nawet i #programista25k
Ciut o mnie: #java Jeszcze nie mam tytułu senior ale stażowo (4 lata, głównie spring boot), w niektórych korpo w Polszy to napewno byłbym seniorem (w skandynawii czy niektórych stanach senior to minimum 8 lat z czym się zgadzam statystycznie (wiadomo są wyjątki i kocury a liczba lat nie może być
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@mirko_anonim: zrób sobie certy z AWS dla i K8S, w dodatku musisz miec obecnie dobrze opanową kafkę, elasticsearch, bazy no-SQL typu influx/mongo/dynamo oraz system-design by w ogóle móc być uznanym za seniora

no i jeszcze by pasowało umieć front js + react/angular i rozwiązywać zadania medium/hard z codility
  • Odpowiedz
✨️ Obserwuj #mirkoanonim
tldr od września nie mogę znalezć roboty w IT, co robić?

Siema. W sierpniu zwolniłem się z Januszexu bo szef stosował wobec mnie mobbing np. musiałem robić darmowe nadgodziny i robić nightly release o 1 w nocy. Pracowałem za 5200zł na reke. Wydawało mi się że znajdę nową robotę szybko, ale firmy nie są zainteresowane. Mam 2 lata doświadczenia w Java Spring i Angular. Wołałem 10 000 brutto. Od
  • 18
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@mirko_anonim: To się nazywa nauka życiowa

* Nigdy nie zmieniaj pracy jak nie masz nic dogadanego.
* Znacznie prościej negocjuje się jak jesteś jeszcze zatrudniony (nie masz noża na gardle i nie przyjmujesz bezczelnych ofert)
* Zawsze po dogadaniu proś o "list intencyjny" z uzgodnionymi warunkami
* Polecam zwrócić się do firm outsourcingowych - zatrudniać się przez nich - tam prościej znaleźć projekt, który
  • Odpowiedz
zainteresowałem się spring webflux oraz jego functional api i jakieś takie chu*owe to się wydaje, ale może mam do tego złe podejście? zamiast czytelnych deklaracji endpointów z jawnie zadeklarowanymi parametrami i zwrotką mam jakieś routingi i handlery bez jawnych typów. bez wczytywania się w kod nie wiadomo co jaki endpoint przyjmuje i co zwraca. to trochę tak jakby się cofnąć w czasie z typów generycznych do typów, które po prostu przechowują Object,
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@ly000: Ogólnie to bym chyba odpuścił webflux, bo wraz z nadejściem Project Loom (Java 21) mamy wirtualne wątki, które częściowo rozwiązują problemy które ma rozwiązywać webflux

  • Odpowiedz
  • 0
@Saly:

a handler nie jest mocno typowany? Nie rozumiem gdzie jest problem. Możesz podać przykład z kodem?

no nie jest w tym sensie, że masz ServerResponse i ServerRequest, które mogą przechowywać wszystko. musisz się wczytać w definicję metody, żeby sprawdzić czego oczekuje dany endpoint i co zwraca.

w podejściu z kontrolerem miałbyś coś w
  • Odpowiedz
Mam tabelki: Halls (Sale), sale mają swoje miejsca (Seats), sale mają też seanse (Screenings), ale jednocześnie każdy seans ma własne miejsca ze statusem (wolne/zajęte), czyli mam jeszcze tabelkę ScreeningSeats. Czy takie rozwiązanie jest ok czy da się to lepiej zrobić?
#programowanie #naukaprogramowania #programista15k #java
  • 9
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

  • 0
@Nofenak: Miejsca zajęte będą w bazie - wolne są ustalane pośrednio (jeśli z miejsc {1,2,3,4,5} masz zajęte {2,3} to jakie są wolne? Czy 5 jest wolne czy zajęte?). Dlatego nie jest potrzebny status (tylko ewentualnie rodzaj blokady). Jak to zrobić to twój problem do rozwiązania - na tym polega nauka.
  • Odpowiedz
Bo taka walidacja jest też zazwyczaj po stronie apki. Np. żeby dodać Screening to musi istnieć jakiś Film.


@Nofenak: W ogólności walidację warto mieć na każdej warstwie, czyli baza danych + backend + frontend. Twój przypadek oczywiście nie dotyczy tego ostatniego. Dodatkowo im więcej takich checków może za Ciebie zrobić baza danych, tym lepiej. Długoterminowo będziesz miał dzięki temu większą gwarancję spójności danych.

committed read, gdyby nie np. unikalne klucze,
  • Odpowiedz
Czy ktos z branzy #programowanie #programista15k bylby w stanie oszacowac mozliwe zarobki mid level programisty (wymagane 2 lub 3 lata doswiadczenia) w #pzu ? Jakie moga byc widelki i jak bardzo jest to negocjowalne podczas procesu rekrutacyjnego (dla dobrego kandydata)? Mam na mysli stanowisko #java lub programista baz danych #oracle #sql plsql w #warszawa . Czy takie firmy
  • 8
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@kristweety: Mi takie większe polskie firmy kojarzą się z kasą poniżej rynkowej. Może dla doświadczonych osób, które trzymają to wszystko żeby jakoś działało kasa jest bardziej pod rynkowa. Acz to tylko moje skojarzenia, nie pracowałem nigdy w PZU.
  • Odpowiedz
@Nofenak: Często wygodniej jest napisać sobie kawałek kodu który takie dane "generuje" zgodnie z zadanymi parametrami. Dzięki temu z jednej strony zrobienie kolejnych testów staje sie dużo szybsze a z drugiej strony w teście widać gołym okiem co takie dane zawierają. Jak ładujesz w teście jakieś dane z pliku to potem jak test zaczyna failować ktoś musi siedzieć i rozkminiać o co chodziło w tych danych.
  • Odpowiedz
@aczutuse: @ElderWrath ja się przesiadłem w 2017 roku. Pierwsze miesiące były ciężkie, zbyt dużo Javy mentalnej w głowie było. Trzeba odrazu wywalić Javę i zacząć od 0. Wtedy dopiero poznaje się jaki ten język ma potencjał. Teraz nie potrafię patrzeć na kod Javy, wygląda mi na jakiś prymitywny język.
  • Odpowiedz
@acpiorundc: w obronie javy: java jest barokowa, a dzięki swojemu prymityzmowi jest łatwa w czytaniu nawet przez początkujących. Do tego uczy podstaw, bebechów, nie jest tak wysoko poziomowa.
  • Odpowiedz
@nad__czlowiek: unit to pojęcie względne. Purysta mógł by powiedzieć, że twój test nie jest unit testem, bo zależy od standardowej klasy String a nie jakiejś abstrakcji.

Najlepiej mieć to w p*****e i pisać testy bez myślenia o tym podziale
  • Odpowiedz