Aktywne Wpisy
balticporter +1080
Ten remiks „The Sound Of Silence” co puszczają ostatnio w radiu, to powinien zostać zakazany, a autor i rozgłośnie postawione przed Trybunałem w Hadze za zbrodnie przeciwko ludzkości ლ(ಠ_ಠ ლ)
#zalesie
#zalesie
Mrbimbek +357
Dwa lata temu pomagałem uchodźcom z Ukrainy którzy z jedną walizką uciekali przed wojną, była w tym rodzina z którą kontakt miałem chwilę dłużej, trzy dziewczyny z matką i dwójka dzieci, pomagałem im szukać pracy, tłumaczyć dokumenty, pomagałem w urzędach. Jedna z dziewczyn dziś się odezwała, wrócili na Ukrainę a kilka dni temu urodziła syna, przez to jak im pomogłem w najcięższym dla nich czasie nazwała syna moim imieniem, taka drobnostka a
Moja wstępna lista wygląda tak:
- Podstawy pracy z GIT
- Ogarnianie środowiska programistycznego pod linuksem
- angielski
- C++/boost/SQL/Qt
Mam kilka pytań, może ktoś mógłby na nie odpowiedzieć?
1. Jak dobrze trzeba znać C++?
a) Czy trzeba ogarniać wszystkie standardy C++11/C++17/C++20? Jeśli tak, to w jakim stopniu? Trzeba znać wszystkie nowe funkcjonalności czy skupić się na najbardziej przydatnych rzeczach?
b) Czy boost to must have, czy można aplikować bez tego (wiem, że niektóre oferty mają napisane wprost o boost, ale czasem jest rzucone ogólne hasło "C++" i weź się człowieku domyśl co autor miał na myśli)
c) Czy junior powinien ogarniać programowanie generyczne?
2. Czy własne projekty na GH są ważne? Ostatnio spotkałem się z opinią, że i tak nikt nie ma zbytnio czasu, żeby przeglądać te projekty, a jeśli są źle napisane, to mogą nawet zaszkodzić, i że lepiej skupić się na doszlifowaniu podstaw.
Wiem, że przygotowywanie się pod sama rozmowę rekrutacyjną może być głupie, ale jakoś trzeba się załapać.
Z drugiej strony też nie chce stresować się cały czas w pracy, gdy nie będę czegoś umiał.
3. Czy warto znać Qt albo SQL? Niektóre firmy w ogóle nie używają Qt (albo częściej występuje w konfiguracji z C), SQL też nie wszędzie widać. Czy warto poświęcić na to czas, jeśli nie ma tego w ofercie?
4. W jakim stopniu trzeba ogarniać struktury danych? Czy trzeba potrafić np. zaimplementować listę, drzewo binarne w czystym C++? Czy raczej chodzi o zastosowanie, np. kiedy lepiej użyć tablicy, a kiedy listy?
5. Wzorce projektowe - co trzeba umieć w tym zakresie?
Wiem, że dużo tych pytań, ale może ktoś z doświadczeniem będzie mógł mniej więcej określić, czego oczekiwałby od swojego nowego kolegi juniora w pracy przy projekcje.
Zapraszam do dyskusji.
#cpp #naukaprogramowania #programowanie #programista15k
Będziesz wiedział konkretnie, a tak to Ci tu można wymienić wszystkie działy informatyki jakie należy znać.
- Ogarnij Conan lub inny menadżer. Znajomość cmake też się przyda.
- 1 a) te standardy ułatwiają programowanie w c++ np. praca że wskaźnikami. Dobrze by było poznać temat.
b) chociaż testy jednostkowe imao
2. Rekruter nie rozumie projektów na GH ale mi to więcej mówi niż rozmowa kwalifikacyjna. Imo warto. To nie musi być nie wiadomo co ale
Zapomniałem o cmake, ale widzę, że ktoś już tutaj o tym wspomniał :)
Nikt ci nie powie w jakim stopniu ogarniać standardy albo które rzeczy z tych standardów są ważne a które nie. Często jest tak, że trzeba po prostu wiedzieć, że coś istnieje i można tego użyć a nie wynajdywać koło na nowo. Na początek skup się na najważniejszych rzeczach. Zresztą nie wiem czy zdajesz sobie sprawę ile tego jest
1. Nikt nie oczekuje że junior będzie znał dobrze C++
1a. Musisz biegle poruszać się po https://en.cppreference.com/w/ Wszędzie mogą być jacyś entuzjaści wyszukujący jakimi to sztuczkami można coś zaprogramować, ale w firmie nie o to chodzi - kod ma być zwięzły prosty i czytelny, żeby każdy kto na niego się natknie rozumiał o co chodzi. Numer standardu ma drugorzędne znaczenie
1b. Boost traci na znaczeniu. My w firmie (a robię
1a) standardy trzeba znać, na tyle by się orientować w jakim standardzie jest napisany dany kod (żebyś się potem nie dziwił, że ci np.
@SredniDystans: wszystko zależy od firmy. Z drugiej strony jak ktoś pisze o C++11 to najlepiej nauczyć się też póżniejszych standardów, bo zmian nie ma aż tak dużo
1.
a) wystarczy max c++11 i ewentualnie jakieś nowinki z c++14/17 dla samych rozmow kwalifikacyjnych bo i tak jak junior zostaniesz rzucony do projektu z utrzymaniowka. Tak wygląda Polski rynek c++
b) Tak, ale nie musisz wszystkiego znać na pamięć bo to duże bydle. Boost optional, filesystem, asio wystarczy.
c) Nie, nikt nie da juniorowi pisać szablonów. Ważne żebyś to rozumiał. Dodatkowo również variadic templates, constexpr,
@Saly: No, szczególnie w C++20 ( ͡° ͜ʖ ͡°)