Witam,
Często aplikując, zauważam ciągły wzrost oczekiwań technicznych. Tyle, ile wymagano rok-dwa temu na stanowisko juniorskie, obecnie z trudem wystarcza na stanowisko testerskie. Ostatnio zaskakujące okazały się pytanie - które algorytmy sortujące mają daną złożoność oraz impleentacja od zera kilku wzorców projektowych bardziej zaawansowanych, z czego wiedzę poszerzyłem i ciągle poszerzam. Jednak nie poddaję się i wciąż aplikuję gdzie racjonalnie mniej więcej spełniam wymagania-w Krakowie wychodzi z 20-30 aplikacji dziennie z samych portali: pracuj.pl, justjoin.it, nofluffjobs.com oraz glassdoor.
O ile nigdy nie otrzymałem feedbacku, iż część "umiejętności miękkie" w którymś etapie przebiegła niezadowalająco, o tyle zazwyczaj dostaję informację, iż część techniczna poszła niewystarczająco. W danym momencie pierwszą rzeczą po wyjściu z budynku, w któym była rozmowa, jest zapisanie w telefonie wszystkich zagadnień, z których nie umiałem lub też odpowiedziałem niewystarczająco, by później z nich się douczać.
Z tych rzeczy powstał dłuższy plik tekstowy, liczący już ponad 20 stron, ciągle o nowe zagadnienie aktualizowany, który staram się choć raz dziennie przeczytać
Natomiast jako codzienna anuka, dokszałcam się z wykonywania zadań na następujących portalach:
-codewars
-hackerrank
-ostatnio także na leetcode(część darmowa)
- w wolnych chwilach także czyywanie "Top interview questions", choć bardzo pobieżnie opisane
Często uczę się wielu nowych zagadnień, jednak zauważam, że wiele z nich na marne i tylko marnuję czas, bo nigdy o nie nie zostanę zapytany podczas interview a do czasu pracy zawodowej i tak będę musiał się nauczyć ich od nowa.
Stąd moje pytanie - jak zorganizować naukę na rzecz przejśćia interview technicznego? Czego najbardziej się uczyć a co byłoby stratą czasu?
Wiem, że po zatrudnieniu jako developer będzie i tak nauka nieustanna, jednak chciałbym zapytać - na czym skupiać się w nauce w danym etapie?