Home

Pytania, które programista powinien zadać swojemu potencjalnemu pracodawcy, part 6 – Hardware & Software

Szósta część serii pytań, które warto zadać pracodawcom podczas rozmowy o pracę. Tym razem pytania o hardware & software, czyli coś przy czym spędzać będziemy większość naszego dnia.

Pozostałe części cyklu:

Czy możesz wybrać dowolny system operacyjny?

Teoretycznie firmie powinno zależeć tylko na efekcie — czyli dostarczonym kodzie. Reszta najlepiej żeby była personalną preferencją kandydata — w końcu sam wie na czym pracuje najlepiej.

Jednak czasami nie jest to takie oczywiste, z dwóch powodów:

1: Firma pracuje w specyficznym środowisku, np domenie Windowsów i wszystkie komputery muszą chodzić na Windowsach

2: Firma ma politykę “nie i już”

W pierwszym przypadku, zastanówmy się czy chcemy pracować właśnie w takim środowisku. Jeśli firma używa Windowsów, a my także, nie powinno to być dla nas problemem. Jeśli jednak od lat pracujemy w ekosystemie Apple, a na dodatek zainwestowaliśmy ciężkie pieniądze w rozwijanie tego ekosystemu (telefon, tablet, zegarek, prywatny komputer), przesiadka na inny system na 8 godzin dziennie może być dla nas upierdliwa.

W przypadku kwestii polityki (tutaj raczej mowa o korporacjach), zostawiam to Twojemu sumieniu. Ja sam wychodzę z założenia że liczy się efekt, a nie procedury i nie chciałbym pracować w firmie która stawia na pierwszy miejscu te drugie.

Dlaczego to jest ważne? Złe (dla nas) narzędzia będą tylko powodować nerwy i stres, będziemy pracować nieefektywnie, a na dodatek istnieje obawa że firma nie będzie skłonna na późniejsze negocjacje, skoro odmawiają nam nawet podstawowego narzędzia pracy.

Ten punkt oczywiście nie obejmuje naturalnych rozwiązań, takich jak praca w .Net na Windows czy programowanie iOS na Macu.

Zły znak: Firma ma ścisłe polityki co do środowiska i nie pozwala na odstępstwa.

Dobry znak: Firma daje wybór programiście.

Czy możesz wybrać dowolny komputer?

Kolejny istotny punt związany nieco z poprzednim. Tym razem, to kwestia konkretnego modelu.

Możliwe jest, że firma posiada określony zestaw komputerów do wyboru, zapytajmy wtedy jakie to są komputery.

Najlepiej zapytać czy możemy wybrać określony model do zakupu. Ja na przykład wiem, że software którego używam jest dość zasobożerny i potrzebuję co najmniej 16GB RAM itd. Warto zawczasu upewnić się, że komputer będzie spełniać nasze minimalne potrzeby, by uniknąć frustracji.

Pamiętaj, że komputer to raczej nie więcej niż nasza jedna pensja, a niedobory obliczeniowe wpływają na naszą efektywność — a więc firma może tracić pieniądze (to dobry argument).

Zły znak: Firma narzuca określone urządzenie (szczególnie jeśli jest budżetowe) lub daje niski budżet na komputer.

Dobry znak: Firma daje dowolność (w granicach rozsądku) w wyborze komputera lub oferuje high-endowe modele

Czy możesz wybrać dowolne akcesoria (peryferia, monitory)

O ile firmy mogą mieć standardowe komputery do wyboru, tak w przypadku akcesoriów może nie być to takie oczywiste.

Jeśli jesteś frontend developerem, zapytaj czy dostaniesz monitor 4k (najlepiej dwa, jeśli tak lubisz pracować). Jeśli pracujesz na Macu, upewnij się że Magic Mouse, Keyboard lub gładzik nie są problemem (jeśli to na nich pracujesz).

Ponadto zapytaj czy oprócz komputera i podstawowych akcesoriów firma oferuje dodatkowe (benefitowe) urządzenia jak telefon służbowy.

W skrócie — jeśli masz swoje przyzwyczajenia i sprzęt który maksymalizuje Twoje efekty, upewnij się że firma Ci je dostarczy. Oszczędzanie na tych narzędziach jest bardzo złym znakiem.

Zły znak: Firma nie oferuje niestandardowych urządzeń, jest oporna w dostarczaniu potrzebnego sprzętu.

Dobry znak: Firma zostawia możliwość wyboru programiście

Jak często komputer (i inne urządzenia) będą wymieniane na nowsze? Czy możesz wykupić stary sprzęt?

Szczególnie większe firmy cyklicznie wymieniają sprzęt pracowników. Zapytaj jak często się to odbywa oraz czy stary sprzęt można wykupić za określony procent jego wartości.

Czy możesz wybrać dowolne oprogramowanie, w tym płatne?

Podobnie jak w przypadku hardware’u, każdy ma swoje preferencje związane z oprogramowaniem. Najbardziej oczywisty jest wybór IDE, ale zależnie od branży jest cała masa narzędzi pomocnych przy pracy.

Zły znak: Firma nie daje możliwości instalowania oprogramowania open source.

Zły znak: Firma nie daje możliwości używania płatnego oprogramowania (np Jetbrains).

Dobry znak: Firma daje pełną swobodę używania wybranego przez nas oprogramowania oraz finansuje te płatne (w granicach rozsądku)

W skrócie, programista jako specjalista mający efektywnie wykonywać swoją pracę, powinien mieć pełną swobodę w dobieraniu narzędzi.

Czy będziesz posiadać prawa root/admin na swoim komputerze?

W małych firmach jest to raczej oczywiste, że mamy pełny dostęp do komputera który używamy. W korporacjach, szczególnie tych związanych z podniesionymi wymogami bezpieczeństwa (banki), możemy mieć bardzo ograniczony dostęp.

W przypadku chęci zainstalowania programu czy dokonania zmian, będziemy musieli prosić administratora czy przełożonego o wpisanie hasła… Sami odpowiedzcie sobie na pytanie czy Wam to przeszkadza czy nie.

Zły znak: Duże ograniczenia i brak dostępu na własnym komputerze

Dobry znak: Pełne prawa root/admin na naszym komputerze.

Na jakim będziesz siedzieć krześle, przy jakim biurku?

Podobnie jak komputera, akcesoriów i softu, krzesło i biurko będzie nam towarzyszyć przez większość dnia. Warto zweryfikować czy firma dba o zdrowie i ergonomie miejsc pracy, np pytając o standing deski czy alternatywne sposoby siedzenia (piłki itd).

Zły znak: Firma oszczędza na stanowiskach pracy, nie daje możliwości alternatywy

Dobry znak: Firma inwestuje w dobre jakościowo biura i fotele oraz oferuje alternatywne sposoby w razie potrzeby.

Jakiego oprogramowania używa firma?

Oprócz naszego personalnego oprogramowania jak IDE, będziemy używać wspólnych narzędzi stosowanych w firmie, takich jak:

  • Email/konta cloudowe (G-Suite, Microsoft 365)
  • Komunikator (Slack itd)
  • Dokumenty, arkusze (Google Suite, Microsoft Office)
  • Programy HRowe (urlopy, rozliczenia)
  • Dokumentacje, wiki (Confluence, Notion)
  • Repozytoria kodu (Github, Gitlub, BitBucket)
  • Zarządzanie projektami (Jira itd)
  • I inne

Będziemy z tych programów korzystać dość często, więc warto wiedzieć z czym będzie się miało do czynienia. Stare, korporacyjne programy mogą sugerować zacofanie firmy.

Warto zapytać też czy firma jest otwarta w kwestii narzędzi i eksperymentuje z nowymi.

Zły znak: Dużo narzędzi internalowych lub przestarzałych

Dobry znak: Wygodne, szybkie, współczesne narzędzia, przeważnie SaaSy, które (wg Ciebie) są przyjemne w użyciu


To tyle w temacie hardware & software. Temat zaniedbywany na etapie rekrutacji, a powoduje dużo konfliktów i stresu gdy nie zostanie ustalony z wyprzedzeniem. Sam pamiętam jak musiałem nosić do biura własną myszkę, a monitor full HD wymieniałem z grafikiem. Lepiej trzymać się od takich firm z daleka — jeśli nie są w stanie dostarczyć nam podstawowych narzędzi pracy, tym bardziej nie będą skłonni iść nam na ustępstwa w przyszłości.

Oczywiście lista wszystkich pytań dostępna jest na moim Githubie (po angielsku). Piszcie w komentarzach wasze pomysły.