Wpis z mikrobloga

Rekrutowałem dziś juniora i serio, zaczynam się zastanawiać, gdzie ci wszyscy kandydaci się uczą... Zadaję proste pytania, a oni patrzą na mnie, jakbym pytał o teorię strun. Przykład? Pytam: Jak działa algorytm quicksort?. W odpowiedzi – pustka.

No to próbuję coś łatwiejszego: Opowiedz mi, jakbyś zarządzał stanem aplikacji. Zamiast konkretów, słyszę: „Korzystam z gotowych paczek”. Ok.

Próbuję dalej: Jakie są sposoby na uniknięcie memory leaków w aplikacjach mobilnych? Cisza. Jakby temat zarządzania pamięcią był jakąś czarną magią.

Może coś mniej abstrakcyjnego? Jak byś zaimplementował strategię cache’owania w aplikacji rozproszonej, żeby zminimalizować opóźnienia i synchronizację danych?. No i tu już kompletny brak odpowiedzi.

Myślę sobie, może coś praktycznego: Jak zoptymalizowałbyś działanie aplikacji, która ma dużo operacji I/O, np. zapisywanie danych do bazy? Odpowiedź: „Użyłbym async/await”. No super, tylko nie wspomniał, jak by to działało pod maską ani jakby uniknął bottlenecków.

Na koniec, żeby już nie katować: Jak byś zarządzał transakcjami w systemie rozproszonym z użyciem mechanizmu two-phase commit? Patrzy na mnie, jakby to była rozmowa o fizyce kwantowej.

Ja rozumiem, że to junior, ale jakieś podstawy by się przydały, prawda?

#programowanie #programista15k #naukaprogramowania #it #pracbaza
  • 93
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Pytam: Jak działa algorytm quicksort?


@kuba181797: Widzę że uciekłeś z okolic 2014 roku. Jak wrócisz do swoich to wrzuć całą kasę w bitcoina i postaraj się przekonać pisowców żeby nie robili kampanii we wsiach i miasteczkach. Powodzenia
  • Odpowiedz
@kuba181797:

To są podstawy, które kazdy developer powinien znać


typowe gadanie gościa, który akurat w tym projekcie albo którymś poprzednim miał dokładnie te problemy o które pyta, i ekstrapoluje to na doświadczenie rekrutowanego*

* Chyba że w ogłoszeniu było wyraźnie napisane do jakiego rodzaju projektu jest rekrutacja i w jakich obszarach wymagane doświadczenie
  • Odpowiedz
@bzyku95:

typowe gadanie gościa, który akurat w tym projekcie albo którymś poprzednim miał dokładnie te problemy o które pyta, i ekstrapoluje to na doświadczenie rekrutowanego*


Albo przeczytał przynajmniej jedną książkę ze swojej dziedziny
  • Odpowiedz
Super a potem klasycznie podczas pracy => zrób CRUDa, jakieś zapytania do AWS, jakieś relacje porobić, formularze, integracje,, proste implementacje kolejek, protokołów, coś tam ostylować, tam jakieś lambdy itp., a na rekrutacji wiedza z NASA jakby przetwarzali miliardy danych i wydajność zależała czy świat się jutro nie skończy. Jak widzę takie pytania to od razu pytam o projekty żeby typków przytemperować i się pytam po co pytają o takie rzeczy jak nie
  • Odpowiedz
@kuba181797: No dokładnie, ja nie wiem, znajomy pracuje w firmie od elektryki i przychodzą tacy co nie potrafią podać warunków i oczekiwanych parametrów pomiaru impedancji pętli zwarcia dla danych obwodów ani nie wiedzą które harmoniczne powodują największe problemy w przesyle energii na duże odległości, ja rozumiem że można nie wiedzieć ale jakieś podstawy trzeba znać? Przecież będą kopali doły i kładli kable w ziemi XD
  • Odpowiedz
@ern99: albo pytania o mikroserwisy, polyglot db, żeby obsługiwać w peaku 50 transakcji na sekundę, które obsłuży MySQL na raspberry pi

Znacznie bardziej z perspektywy zespołu i utrzymania/rozwoju projektu liczy się to czy ktoś umie pisać czytelny kod, dobrze pisze commit message, robi dokładnie code review
  • Odpowiedz
@kuba181797: a to nie jest tak że po prostu nie miał na studiach algorytmów i struktur danych, a tylko wiesz uczył się podstaw jak programować, w sensie składni języka? wydaje mi się że juniorzy dzisiaj po prostu znają składnie języka i trzeba ich pytać o wypointowanie stringi po jednej literze, albo o posortowanie tablicy, albo po wykonanie zapytania do dowolnego api i wyświetlenia odpowiedzi w jakieś fajnej formie. nie wiem
  • Odpowiedz