Skip to main content

Jak przeprowadzić wywiad techniczny

Kariera w Finansach: Makler Papierów Wartościowych - Wywiad ZMiD z Sobiesławem Kozłowskim #2 (Kwiecień 2025)

Kariera w Finansach: Makler Papierów Wartościowych - Wywiad ZMiD z Sobiesławem Kozłowskim #2 (Kwiecień 2025)
Anonim

Niezależnie od tego, czy programujesz, odkąd Twoja piżama ma na nich stopy, czy też stawiasz czoła beczce po pierwszym szkolnym poszukiwaniu pracy, rozmowa techniczna może być przerażającą przeszkodą między tobą a twoją wymarzoną pracą.

Ale nie bój się - po prostu przygotuj się, by pochwalić się swoimi umiejętnościami. Poniżej znajdziesz wskazówki, które mogą pomóc w przeprowadzeniu wywiadu technicznego.

Przed rozmową kwalifikacyjną

Zdobądź książkę

Jak najwcześniej przed rozmową kwalifikacyjną (choć udało mi się tylko dwa tygodnie), zacznij się przygotowywać. Praca nad książką przygotowawczą nie tylko odświeży wiedzę na temat algorytmów i struktur danych, ale także wprowadzi cię w odpowiedni sposób rozwiązywania problemów.

Co najważniejsze, wybierz odpowiednią książkę przygotowawczą dla swojego poziomu i zainteresowań. Cracking the Coding Interview to świetny zasób, ale jeśli nie jesteś już wystarczająco doświadczonym programistą, nie zrekompensuje ci to doświadczenia. Jeśli dopiero zaczynasz, są inne książki, z których możesz uzyskać więcej kilometrów, takie jak Wywiady programistyczne: sekrety zdobycia następnej pracy . Istnieje również wiele bardziej specjalistycznych i zaawansowanych książek dla osób z większym doświadczeniem.

Praktyka czyni mistrza

Niewiele rzeczy pokonuje panikę, jak praktyka, więc zacznij whiteboarding, kiedy tylko możesz, nawet naprawdę małe problemy. Książki o wywiadach z kodowaniem oferują prawie niekończące się problemy z próbkami, ale możesz też użyć problemów, nad którymi już pracujesz. Zadaj problem samemu sobie (lub poproś technicznie skłonnego przyjaciela, aby go ci przedstawił, aby uzyskać bardziej realistyczną konfigurację), opracuj strategię i umieść znacznik na planszy wymazywania na sucho. Im wygodniej jest ci zaznaczyć tę pustą tablicę w domu, tym mniej wahasz się podczas rozmowy.

Jeśli masz mało czasu i chcesz szybko pokonać wstrząsy, możesz dodać presję, której nie będzie w prawdziwym wywiadzie. Jeśli wyznaczysz sobie limit czasu lub sprawisz, że ktoś, kogo szanujesz, wcieli się w rolę ankietera, prawdziwa okazja będzie bułką z masłem.

Nie przeciążaj się

Podczas planowania wywiadów pamiętaj, aby zostawić co najmniej kilka godzin między nimi. To brzmi jak problem z pierwszego świata, ale za każdym razem, gdy miałem wiele wywiadów dziennie, nie występowałem tak dobrze, jak mogłem. Albo martwiłem się dotarciem do następnego na czas, albo osiągnąłem już pełną logikę kilka godzin wcześniej.

Och, i prześpij się. To brzmi jak coś, co powiedziała ci mama, ale jest kilka rzeczy, które zrzucą cię z gry, takich jak brak snu. Jest to porównywalne z pojawieniem się pijanym.

W wywiadzie

Bądź gotowy na wszystko

Po przejściu do rozmowy kwalifikacyjnej powinieneś być przygotowany na kilka różnych rodzajów rozwiązywania problemów. Twoi ankieterzy mogą poprosić Cię o omówienie sposobu rozwiązania problemu, mogą otworzyć komputer i poprosić Cię o pomoc w tworzeniu kodu, lub mogą poprosić Cię o napisanie kodu samodzielnie na tablicy. Przygotuj się na zmiany i nie daj się zwieść szczegółom! Bez względu na to, jakiej metody używają twoi ankieterzy, naprawdę sprawdzają twoje umiejętności rozwiązywania problemów.

Zadawać pytania

Gdy pojawi się problem, przemyśl go i upewnij się, że w pełni rozumiesz, o co proszono Cię o zwrot. Nie obawiaj się zadawać pytań wcześniej, jeśli coś jest niejasne. Jeśli występują na przykład przypadki skrajne, zapytaj, w jaki sposób ankieterzy chcą, aby były traktowane. Czy powinieneś rzucić wyjątek? Złamać?

Zadaj też pytania proceduralne, aby zrozumieć, czego szukają ankieterzy i jakie są twoje ograniczenia - np. „Czy jest jakiś konkretny język, w którym chciałbym, abyś podał moje rozwiązanie?” Lub „Czy mogę założyć, że mam dostęp do dowolnej biblioteki Pythona? ”

I nie zakładaj. Nawet jeśli jesteś pewien, że jest to bezpieczne, powiedz głośno, co myślisz, aby ankieterzy poinformowali cię, jeśli coś przegapisz.

Nie spiesz się

Kiedy zrozumiesz pytanie, które Cię zadaje, nie bój się poświęcić minuty na przemyślenie i przetworzenie, zanim zaczniesz rozwiązywać problem. Tak długo, jak nie przeszkadzają ci szybkie, oparte na wiedzy pytania, pauza po zadaniu pytania jest dobrą rzeczą. Oczywiście - upewnij się, że nie poświęcasz 10 minut na rozwiązanie problemu bez słowa! Chodzi o to, aby wykorzystać swój czas z góry, aby ustrukturyzować swoje podejście, a nie próbować pisać cały kod w głowie, zanim dotkniesz znacznika na tablicy.

Pomyśl duży obraz

Najpierw pomyśl o dużym obrazie problemu. Pseudokodowanie ogólnej struktury jest w porządku, o ile mówisz ankieterom, że to, co robisz, i że zamierzasz wrócić i faktycznie kodować później. To dobry sposób na rozładowanie organizacji problemu, aby twój mózg miał więcej miejsca na przetwarzanie. Pomoże to również, jeśli zabraknie Ci czasu; ankieterzy będą przynajmniej wiedzieli, jak zaplanowaliście zakończyć zadanie, nawet jeśli nie poznaliście szczegółów.

Ponadto nie martw się na początku o znalezienie najbardziej efektywnego sposobu rozwiązania problemu, chyba że naturalnie wpadnie Ci do głowy. Stwórz mniej wydajne rozwiązanie, a następnie przedyskutuj, dlaczego nie jest ono idealne. Następnie, jeśli masz czas lub widzisz lepszy sposób na jego rozwiązanie, przejdź do algorytmu bardziej przyjaznego dla czasu lub przestrzeni. Nawet jeśli masz tylko czas, aby ukończyć mniej wydajną wersję, a następnie wyjaśnić, jak lepiej to zrobić, nie jest to zła odpowiedź.

Wypowiedzieć

Co najważniejsze: Dyskusja. Zabierz swoich ankieterów ze sobą w rozwiązywanie problemów. Może to być tak proste, jak opisanie tego, co masz zamiar zrobić, gdy to robisz („Więc potrzebuję pętli for, aby iterować wszystkie elementy na tej liście”) lub stwarzanie problemów sobie go („Oznacza to, że będę potrzebował lepszego sposobu na uzyskanie dostępu do informacji; hmm, wrócę do tego później”).

Omówienie procesu myślowego daje ankieterom okno na to, jak myślisz, i na tym ostatecznie polega rozmowa. Nawet jeśli uważasz, że Twoje rozwiązanie jest niesamowite, lepiej jest wiedzieć, jak podszedłeś do problemu i uzyskać odpowiedź, niż zobaczyć pełną odpowiedź i nie mieć pojęcia, co Cię tam zaprowadziło. Daje to również ankieterom szansę na pomoc, jeśli utkniesz lub pójdziesz ścieżką, która jest ślepą uliczką.

Przynieś umiejętności swoim ludziom, zbyt

To, że wybierasz się na pracę inżynieryjną, nie oznacza, że ​​możesz być leniwy i odpowiedzialny. Słyszałem horrory fantastycznych programistów, którzy nie zostali zatrudnieni, ponieważ nie pasowali do kultury lub mieli złe nastawienie. Jestem pewien, że ty też. Nie bądź tą osobą.

Ciekawość i entuzjazm są cenione przez każdego pracownika - a programiści niczym się nie różnią. Zapytaj o zespół inżynierów firmy, jej stos i najtrudniejsze problemy, z jakimi boryka się w związku z produktem. Oczywiście istnieje cienka granica między entuzjazmem a byciem pochlebcą, więc zachowaj to szczerze, ale każdy kocha kandydata, który jest zainteresowany produktem, nad którym będzie pracował.

Nauczyć się czegoś nowego

Wreszcie, jedną z rzeczy, której najczęściej brakuje rozmówcom, jest możliwość nauki. Mamy nadzieję, że w każdym wywiadzie nauczysz się czegoś nowego - zdobędziesz nowy pomysł lub nowe narzędzie albo uzyskasz wgląd w ciekawe produkty i technologie. Im więcej myślisz o swoich rozmowach w ten sposób, tym bardziej cenny będzie ten czas na dłuższą metę.