Wpis z mikrobloga

#anonimowemirkowyznania
Czy Waszym zdaniem senior powinien wiedzieć, co na temat liczby n sprawdza taki kod:
n & (n - 1) == 0
Oczywiście tłumaczymy, co robi operator & (bitowe and), nie wymagamy, żeby każdy znał operatory typu & albo ^ na pamięć.

Mamy takie pytanie w firmie w katalogu pytań na rozmowę. Zdecydowana większość kandydatów na seniora nie umie tego kodu zrozumieć. To nasze pytanie jest dziwne, czy po prostu w Polsce ludzie są mało kumaci w logice/algorytmice?

#programista15k #praca #rekrutacja #programowanie #matematyka

Kliknij tutaj, aby odpowiedzieć w tym wątku anonimowo
Kliknij tutaj, aby wysłać OPowi anonimową wiadomość prywatną
ID: #6134e2f16ffb19000ae1bae1
Post dodany za pomocą skryptu AnonimoweMirkoWyznania ( https://mirkowyznania.eu ) Zaakceptował: LeVentLeCri
Wesprzyj projekt
  • 21
ŚwiętaDziewczyna: Po prostu to pytanie jest z serii "sztuka dla sztuki". Równie dobrze mógłbyś zapytać o to w jaki sposób zaimplementowano funkcję free() w C. Jak ktoś chce wiedzieć co jest pod spodem deeper and deeper to może się zainteresuje, ale dla 99% ludzi wystarczy sam fakt, jak tej funkcji używać.

Problem z tego typu pytaniami polega na tym, że nie ma fizycznej możliwości zapoznania się z dostatecznie dużą liczbą usecasów.
@AnonimoweMirkoWyznania senior z jakiej dziedziny? Jeśli szukacie kogoś np. od webówki czy testów na co miałaby mu się ta wiedza przydać? A jeśli kogoś kto faktycznie ma mieć w swoim zakresie obowiązków pracę z kodem wymagającym większych optymalizacji to wtedy może takie smaczki mają sens (co nie znaczy że każdy senior musi je wszyskie znać na pamięć)
@AnonimoweMirkoWyznania:

Wg. mnie pytanie bez sensu. Oczekujecie od seniora znajomości ciekawostek czy tworzenia skutecznych rozwiązań na wysokim poziomie abstrakcji?

Jesteście biznesem, więc może tak - jaka jest wartość biznesowa znajomości tego konkretnego fragmentu kodu? Powiem Ci jaka - żadna.

Dlaczego? Bo mogę wygooglować optymalny sposób sprawdzenia czy liczba jest potęgą dwójki w parę sekund:

https://www.google.com/search?q=How+to+check+if+a+number+is+a+power+of+two

Pierwszy wynik ze stackoverflow prezentuje Wasze rozwiązanie. Nie traktujcie programistów na rekrutacjach jak gówniarzy biorących udział
via Wykop Mobilny (Android)
  • 8
@AnonimoweMirkoWyznania: jeśli wymagacie wymyślenia w chwilę co to robi, to znaczy, że to jest u was potrzebne do pracy, a to znaczy, że piszecie #!$%@? kod. Takie coś powinno być w osobnej funkcji i nazwane. A nie że każdy kto czyta kod to ma się potem zastanawiać co autor miał na myśli.

Wniosek: trzymać się od was z daleka.

Chyba że jednak nie jest to u was potrzebne na co dzień,
Oczywiście tłumaczymy, co robi operator & (bitowe and), nie wymagamy, żeby każdy znał operatory typu & albo ^ na pamięć.


@AnonimoweMirkoWyznania: no akurat te rzeczy to kazdy programista powinien znac.

Czy Waszym zdaniem senior powinien wiedzieć, co na temat liczby n sprawdza taki kod:

n & (n - 1) == 0


@AnonimoweMirkoWyznania: wiedziec niekoniecznie, ale wywnioskowac po kilku mintach (czyli sprawdza czy jst potega dwojki) tak