I dlaczego są to algorytmy i struktura danych?
Nie ma jednej reguły na rekrutację
Każdego roku firmy Big Tech zatrudniają setki tysięcy 1) programistów. Facebook, Amazon, Apple, Netflix i Google to największe i najbardziej dominujące firmy. Określa się je nierzadko akronimem FAANG, od pierwszych liter ich nazw. Firmy FAANG otrzymują miliony CV z całego świata. Zarówno duża liczba kandydatów jak i stanowisk pracy spowodowała, że proces rekrutacji to teraz samodzielna, duża branża. Znalezienie wysokiej jakości deweloperów oprogramowania jest dużym wyzwaniem a ponieważ nie ma żadnego standardowego procesu rekrutacji, każda firma tworzy własny.
Co jest ważne?
Czego więc rekruterzy z firm FAANG oczekują od programisty wysokiej jakości i co chcą sprawdzić?
- Logika i rozumowanie
- Kreatywność
- Rozwiązywanie problemów w praktyce
- Znajomość języków
- Sposób myślenia podczas pisania kodu
- Rozwiązywanie problemu, który wydaje się niepraktyczny
- Jakość kodu
- Strategia wybierania podczas wyszukiwania błędu
- Praca zespołowa
- Opanowanie stresu
W jaki sposób odkrywają te cechy u rozmówcy? Odpowiedź brzmi: Struktury danych i algorytmy.
Ale czemu akurat to?
Na całym świecie istnieją tysiące instytucji, które uczą informatyki i przedmiotów pokrewnych. Każda z nich ma inny program i sposób nauczania. Kiedy kandydat ma dyplom z mniej renomowanej instytucji, trudno jest zmierzyć jego jakość i porównać ją z innymi kandydatami wyłącznie na podstawie certyfikatów – a to ze względu właśnie na ten zróżnicowany program nauczania. Ale jest taka jedna wspólna cecha wszystkich programów nauczania i są to struktury danych i algorytmy. Dlatego firmy wybrały testowanie kandydatów z tego zakresu jako dobry standard. Skoncentrowanie się na tych dwóch kwestiach zapewnia porównywalność i jest sprawiedliwe dla samych kandydatów bo traktuje ich równo, niezależnie od toku ich dotychczasowej edukacji.
Przede wszystkim jednak struktury danych i algorytmy są podstawą tworzenia oprogramowania. Pozostają one takie same bez względu na zastosowaną nową technologię, koncentrując się na problemie, a nie na technologii stosowanej w procesie rozmowy kwalifikacyjnej. Ujawniają umiejętności rozwiązywania problemów przez rozmówcę. Tu się nie da kombinować: albo rozmówca umie rozwiązać problem, albo nie.
Analityka i logika
Testy oparte na strukturach danych i algorytmach można łatwo skalować w górę lub w dół w zależności od poziomu wiedzy rozmówcy. Oznacza to, że różnych ankietowanych można przetestować przy użyciu mniej więcej tych samych problemów.
Sprawdź oferty pracy na TeamQuest
Struktury danych i algorytmy są używane do testowania umiejętności analitycznych kandydatów także dlatego, że są użytecznym narzędziem do rozwiązywania rzeczywistych problemów. A ponieważ struktury danych i algorytmy opierają się na logice, rekruterzy mogą testować logikę i zdolność rozumowania kandydata.
Także trafność wyboru odpowiedniego rozwiązania przez kandydata można sprawdzić z użyciem testów struktur danych i algorytmów. Wreszcie prawie każde oprogramowanie oddziałuje z danymi i je przetwarza. Jeśli więc kandydat nie wie, jak radzić sobie z dużą ilością danych, nie będzie pasował do procesu tworzenia oprogramowania. Praca ze złożonymi danymi jest niemożliwa bez głębokiej wiedzy o strukturach danych i algorytmach.
A czego jeszcze można się spodziewać na rozmowie rekrutacyjnej?