Słabo wypadam na rozmowach kwalifikacyjnych

6

Cześć,
Może ktoś miał taki problem i powie mi jaką najkrótszą ścieżkę obrać do osiągnięcia swojego celu.
Byłem na dwóch rozmowach kwalifikacyjnych dla sportu ostatnio, tak żeby nie odwyknąć i sprawdzić co jest teraz wymagane, o co się pyta.
Rozmowy były spoko, nawet łatwe bym powiedział, ale ... wykładałem się na podstawach.
Dlaczego?
Bo klepałem w pracy przez ostatnie 2 lata kod często nie zastanawiając się nad mechanizmami pod spodem, a nie uczyłem się bieżąco.

  • Używałem Spring JPA Data zamiast Hibernate, a pytania były z Hibernate właśnie, o którym dawno nawet nie myślałem.
  • JVM parę nietrudnych pytań, ale też jak klepiesz CRUDa to się nie zastanawiasz czy jest tak czy inaczej
  • GC - a na co to komu? Działa to działa. (żartuję oczywiście, ale chodzi o to, że nie potrzebowałem tego wiedzieć do klepania ticketów)
  • Algorytmy - no tutaj to już serio, quick sort to implementowałem z 3 lata temu jak się Javy uczyłem. Teraz to już nawet zapomniałem czym się różnią algorytmy sortujące.

Generalnie mam wrażenie, że do przypomnienia mam niemal WSZYSTKO.

  • Jak zacznę czytać książki o Javie, JVM, Springu, Hibernate, SQL od nowa to z rok chyba będę siedział.
  • Jak pouczę się pod rekrutację to wszystko tylko po łebkach obskoczę.

Jakieś propozycje mają drodzy współforumowicze?

10

@NeutrinoSpinZero: to jest prawdziwa bolączka tego zawodu
klepanie w pracy, bez uczenia się nowych rzeczy
rozmowy kwalifikacyjne które nijak się mają do późniejszych zadań, pracy

Sam tego doświadczyłem, że na rekrutacji cuda jakieś, algo, asynchroniczność, planowanie architektury systemu, kolejki itd
a potem taski w pracy to zgłoszenia głownie bugów od klienta, gdzie się męczyłem ze starym kodem

Przechodzenie rekrutacji to umiejętność sama w sobie - po tych 2 wiesz czego nie wiesz i po prostu zacznij od pójścia tą drogą

0

Jest taki kurs, żeby dobrze wypadać na rozmowach :]
https://www.techseries.dev/

4

Tak niestety jest. Na rozmowie potrafił pytać z niewiadoma czego. Pół biedy jak uparcie odpytują z czegoś czego używają w projekcie. Ale mam wrażenie że często te pytania mają tylko na celu zbicie stawki
Alternatywa to pójść w jakoś mniej popularną technologie gdzie brakuje programistów np jak Scala w tym momencie

2

Jeśli z jakiegoś powodu ci zależy na pracy w zblizonych do tych firm waunkach to przypominasz sobie detale tego co przedstawiłeś i tyle. Jeśli to nie wystarczy - widocznie ty i firma która prowadzi rekrutację nie pasujecie do siebie. Lub firma sama nie wie kogo szuka - wtedy tym bardziej należy ją omijać.

3

Najlepiej do rozmów kwalifikacyjnych przygotowują... rozmowy kwalifikacyjne ;) Poczytaj te 100 Java/Spring/Hibernate Interview Questions ze zrozumieniem, przećwicz algorytmy z Cracking the Coding Interview (na necie jest online pdf), w sumie możesz się ograniczyć do sekcji o arrayach, listach, system design i (opcjonalnie) behavioral questions.

Poza tym, rekrutacja rekrutacji nie równa - pamiętam jak kilka miesięcy temu, miałem w jednym tygodniu dwie rozmowy (z 2 różnych firm) - na jednej typek mnie dosłownie wyśmiał, że nie znam JVMa, a na drugiej mnie zachwalali jaki to nie jestem super :P

2

To fakt, rozmowy są niedopasowane do rzeczywistości. Chociaż np. w obecnej firmie miałem fajną rozmowę- najpierw pogadaliśmy luźno (co ja robię, co firma robi), po czym stwierdziliśmy, że "jest chemia" i dostałem zadanie do zrobienia, ale nie żadne wydumane tylko takie z jakimi mam teraz do czynienia w firmie. Potem oczywiście musiałem uzasadnić czemu coś zrobiłem tak a nie inaczej, ale nie było pytań o 254 stronę dokumentacji Spring-a i adnotację, której używa się raz na 10 lat czy o narysowanie schematu JVM. Niestety większość rozmów wygląda jak wygląda i trzeba się do nich przygotować.

5

Niestety tak to wygada. Zatrudnienie nieodpowiedniego pracownika jest drogie. Więc zawyża się wymagania. Jeżeli firmy, do których się rekrutujesz mają takie podejście, to możesz albo to zaakceptować albo szukać innych firm, z niższymi wymaganiami, ewentualnie rozwinąć własną działalność. Polecam:

  1. Uczyć się na bieżąco. Utrwalać raz zdobytą wiedzę, aktualizować widzę o kluczowych narzędziach i eksplorować nowe obszary. Blogi techniczne, śledzenie profili na twiterze liderów w danej dziedzinie, książki, artykuły, czytanie for internetowych, oglądanie nagrań z konferencji. Często jest okazja by zabłysnąć taką wiedzą podczas rekrutacji.

  2. Przed rekrutacją przyjrzeć typowe pytania rekrutacyjne. Skoro już raz się czegoś nauczyłeś, to wystarczy drobne przypomnienie. Dużo łatwiej przypomnieć sobie mętne obszary wiedzy lub nauczyć się czegoś nowego mając już odpowiedni punkt zaczepienia, to jest wiedzę praktyczną lub raz już przerobioną teorię.

  3. Ćwiczyć zadania algorytmiczne jeżeli firmy, w których chcesz się zatrudnić, mają je procesie rekrutacyjnym To jest najmniej przydatna wiedza w codziennych obowiązkach dla 90+% programistów. Pytania zazwyczaj są bardzo szablonowe ale wymagają biegłości w rozwiązywaniu. Tego można się nauczyć na portalach jak leetcode czy hackerrank, ale ilość czasu jest naprawdę znaczna. W korpo wraz z wyższymi stanowiskami pojawia się mniej algorytmów, a więcej projektowania i wiedzy technicznej. Szczerze, to mam wrażenie, że teraz prawie każdy próbuje naśladować wielkie firmy technologicznie i na start męczy kandydatów pytaniami algorytmicznymi, nawet mając świadomość, że ma się to nijak do obowiązków na danej pozycji.

  4. Zaznajomić się z projektowaniem systemów. Jeszcze pewnie nie dotarłeś do tego etapu, ale w pewnym momencie niektóre firmy mogą zacząć od Ciebie wymagać takiej wiedzy. Bez odpowiedniej wiedzy technicznej, umiejętności zebrania wymagań, umiejętności zrozumienia i rozłożenia na czynniki pierwsze kompletnie nowego problemu przejście tego etapu może okazać się bardzo problematyczne.

Generalnie to możesz omijać szerokim łukiem firmy, które prowadzą w ten sposób rekrutację albo nauczyć się je przechodzić. Opcja opcja piersza zapewni Ci święty spokój, druga w pewnym stopniu rozwinie Cię jako programistę, ale przełożenie na realne obowiązki w pracy będzie nikłe.

16

A ja sugeruje w ogóle się tym nie przejmować. Trik polega na tym, ze umiesz to czego używasz/co cię interesuje więc takiej pracy powinieneś szukać. Jesli na interview pytają o rzeczy których nie wiesz, to widocznie firma nie jest dla ciebie, bo robią rzeczy które cię nie kręcą i tyle. Skillowanie "pod interview" uważam za bardzo dziwne. Jasne, dostaniesz może pracę ale co później? Skoro nie interesuje cię algorytmika, to będziesz potem narzekać że w robocie non stop algorytmy a ty chciałeś crudy od metra. Albo wręcz przeciwnie nie chcesz crudować, ale na interview doskillowałeś sobie hibernate na szybko i zaraz będziesz narzekać że gówniana robota :)

1

Ostatnio brałem udział w rekrutacji i nie przygotowałem się do niej specjalnie. Przez to nie znałem odpowiedzi na parę pytań, które na kiedyś bym spokojnie odpowiedział, a pewnie każdy student od razu zna odpowiedź. Jednak staram się być na bieżąco z technologią z którą pracuje i do której aplikuje. Generalnie odpowiedziałem na te pytania, że nie wiem albo nie pamiętam, nie starałem się dukać. Ofertę dostałem. Także to sporo zależy od rekrutera, akurat osoba która mnie rekrutowała wydawała się rozsądna :)

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