Java - jak się przygotować do testów rekrutacyjnych?

0

Witam,

czeka mnie rozmowa o pracę, na której testowane będą moje umiejętności z Javy, pod kątem algorytmów (tyle wiem). Tutaj prośba do Was o radę, co powinienem umieć na taką rozmowę. Jestem studentem po II roku, miałem podstawy javy, programowanie obiektowe + tworzenie prostej aplikacji w Swingu.

Co powinienem sobie przypomnieć, czego się nauczyć? Mam jeszcze trochę czasu. Proszę o rady.

0

HackerRank + Codility

No i ogarnij algorytmy w stylu sortowanie bąbelkowe itp.

1

Nie przygotowywać się. Jeśli pytają o rzeczy których nie umiesz to znaczy że tam nie pasujesz, albo że pytają o rzeczy "z d**y" i nie warto u nich pracować.

0

Nie tyle nie umiem, co po prostu muszę sobie przypomnieć pewne rzeczy, albo np. pewnych rzeczy mnie nie nauczono na studiach, a są łatwe do ogarnięcia samemu. Więc jak najbardziej muszę się przygotować :)

Kixe52, Krawiec - dzięki wielkie, postaram się ogarnąć te rzeczy.

Jakby ktoś jeszcze chciał podzielić się swoimi przemyśleniami z perspektywy kandydat/rekruter, to te informacje są bardzo pomocne dla mnie.

0
Pijany Krawiec napisał(a):

Błędy, które często robią juniorzy na rozmowach:

  • Wymyślanie koła od nowa. Zapoznaj się z TreeSet, LinkedHashMap, PriorityQueue, Arrays.binarySearch.
  • Strach przed klasami i metodami pomocniczymi. To, że na laptopie masz otwartą klasę Interview.java z metodą main() nie znaczy, że masz zakaz dodawania własnych klas i utilsów.
  • Klepanie kodu bez dyskusji wstępnej.

Nie tylko juniorzy ;)

Shalom napisał(a):

Nie przygotowywać się. Jeśli pytają o rzeczy których nie umiesz to znaczy że tam nie pasujesz, albo że pytają o rzeczy "z d**y" i nie warto u nich pracować.

Z jednej strony tak, z drugiej... przechodzenie rozmów kwalifikacyjnych to też swego rodzaju sport - warto umieć się sprzedać, bo jednak to gra pozorów.

0
Shalom napisał(a):

Nie przygotowywać się. Jeśli pytają o rzeczy których nie umiesz to znaczy że tam nie pasujesz, albo że pytają o rzeczy "z d**y" i nie warto u nich pracować.

Z tym jest taki problem, że często też dają do rozwiązania zadania algorytmiczne. Nie wiem czy to można zaliczyć do tych 'z d**y' ale z pewnością nie jest to coś, co przychodzi samo-z-siebie programując typowy soft (który w tych firmach i tak się potem pisze).

Sporo (zaskakująco dobrych) firm też pyta o konstrukty z języka, które bardzo rzadko występują - takie o których zazwyczaj się nie myśli bo albo IDE to rozwiązuje on-the-fly albo w razie wątpliwości można w 3 minuty zweryfikować zachowanie języka np. w jakimś shellu czy przy pomocy kawałka kodu z kompilatorem na boku.

0

A jak powinienem się zachować, jeżeli dostanę do napisania algorytm a tu pustka w głowie? Co zrobić w takiej sytuacji, jak się wybronić? Mieliście takie sytuacje na swoich rozmowach?

2

Z tym jest taki problem, że często też dają do rozwiązania zadania algorytmiczne. Nie wiem czy to można zaliczyć do tych 'z d**y' ale z pewnością nie jest to coś, co przychodzi samo-z-siebie programując typowy soft (który w tych firmach i tak się potem pisze).

Jeśli ta wiedza jest potrzebna do wykonywania danej pracy, bo faktycznie rozwiązuje sie tam na porządku dziennym takie algorytmy, to oczywiście jest to dobre pytanie, Ale znów jeśli tego nie umiesz, to znaczy że cię to osobiście nie interesuje / nie masz z tym doświadczenia i ta praca nie jest dla ciebie.
Z drugiej strony jeśli każą ci robić jakieś cieżkie algorytmy mimo że firma klepie CRUDy i formatki to znaczy że pytanie jest z d**y i nie warto się tam rekrutować. Bo potem do zespołu dostaniesz ludzi tak samo zrekrutowanych na podstawie skilli innych niż te potrzebne.

Sporo (zaskakująco dobrych) firm też pyta o konstrukty z języka, które bardzo rzadko występują - takie o których zazwyczaj się nie myśli bo albo IDE to rozwiązuje on-the-fly albo w razie wątpliwości można w 3 minuty zweryfikować zachowanie języka np. w jakimś shellu czy przy pomocy kawałka kodu z kompilatorem na boku.

Jw, jaki jest sens dla nich pracować? Dostaniesz do teamu ludzi którzy nie umieją wykonywać swojej roboty, ale za to znają kruczki jezyka :D

0
Excelowiec napisał(a):

A jak powinienem się zachować, jeżeli dostanę do napisania algorytm a tu pustka w głowie? Co zrobić w takiej sytuacji, jak się wybronić?

Improwizuj, co innego możesz zrobić?

Mieliście takie sytuacje na swoich rozmowach?

Tak, jak tylko mózg zarejestrował rozpoczęcie rozmowy kwalifikacyjnej, postanowił radośnie wyczyścić cache do zera i przełączyć i tak biedny CPU w tryb oszczędzania energii. Skończyło się to m.in. tym, że wyprowadziłem gościowi na kartce binary search, tak popatrzyliśmy na to i stwierdził "mogłeś od razu mówić, że chcesz zrobić binary search" :D

0

Raz jedyny mnie ktoś pytał o jakiś algorytm. Na co dzień z tym nie mam nic wspólnego, wiec zacząłem coś wymyślać. Oni mnie naprowadzali i sprawdzali jakie wnioski wyciągam i po kilku minutach moje tortury dobiegły końca. Jakaś ofertę mi złożyli, wiec chyba nie było tak źle.

Tak jak Shalom napisał, trudno żebyś pamiętał wszystkie algorytmy jak nie pracujesz z nimi na co dzień, wiec o ile firma nie używa ich day to day, a ludzie podczas rekrutacji zerojedynkowo oceniają, czy znasz czy nie, bez jakiejś próby sprawdzenia, czy myślisz logicznie, to ja bym się do takiej pracy nie pchał.

1
Shalom napisał(a):

Z tym jest taki problem, że często też dają do rozwiązania zadania algorytmiczne. Nie wiem czy to można zaliczyć do tych 'z d**y' ale z pewnością nie jest to coś, co przychodzi samo-z-siebie programując typowy soft (który w tych firmach i tak się potem pisze).

Jeśli ta wiedza jest potrzebna do wykonywania danej pracy, bo faktycznie rozwiązuje sie tam na porządku dziennym takie algorytmy, to oczywiście jest to dobre pytanie, Ale znów jeśli tego nie umiesz, to znaczy że cię to osobiście nie interesuje / nie masz z tym doświadczenia i ta praca nie jest dla ciebie.
Z drugiej strony jeśli każą ci robić jakieś cieżkie algorytmy mimo że firma klepie CRUDy i formatki to znaczy że pytanie jest z d**y i nie warto się tam rekrutować. Bo potem do zespołu dostaniesz ludzi tak samo zrekrutowanych na podstawie skilli innych niż te potrzebne.

Sporo (zaskakująco dobrych) firm też pyta o konstrukty z języka, które bardzo rzadko występują - takie o których zazwyczaj się nie myśli bo albo IDE to rozwiązuje on-the-fly albo w razie wątpliwości można w 3 minuty zweryfikować zachowanie języka np. w jakimś shellu czy przy pomocy kawałka kodu z kompilatorem na boku.

Jw, jaki jest sens dla nich pracować? Dostaniesz do teamu ludzi którzy nie umieją wykonywać swojej roboty, ale za to znają kruczki jezyka :D

Przecież doskonale wiemy, że właśnie tak wyglądają rekrutacje do wszystkich 'TOPowych' firm, cały FAANG pyta o algorytmy a i większość nieco mniej prestiżowych też - chociaż na starcie wysyła HackerRank / Codility. Te firmy dają najlepsze warunki zatrudnienia, nawet jeżeli domena nie jest zbyt fascynująca.

To, że istnieją książki 'pod rekrutacje' samo z siebie świadczy, że jednak jest rozstrzał pomiędzy 'skillem' w codziennej pracy a rekrutacjami.

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