To jest krytyczne. Nie sądzę, że kiedykolwiek znałem dobrego programistę, który nie był samoukiem na pewnym poziomie. Jako menedżer ds. Rekrutacji w dużej firmie mogę powiedzieć, że kandydat, który opisuje osobiste projekty i chęć uczenia się, za każdym razem przebije jednego z imponującym stopniem. (Chociaż najlepiej mieć oba.)
Oto kwestia na studiach: kursy informatyki uczą teorii, a nie technologii. Nauczą Cię różnic między tabelą skrótów a drzewem B oraz podstawami działania systemu operacyjnego. Zazwyczaj nie nauczą Cię języków komputerowych, systemów operacyjnych ani innych technologii poza płytkim poziomem.
Pamiętam mgliste czasy, kiedy wziąłem pierwszą lekcję struktur danych i otrzymaliśmy cienki podręcznik dla tego nowego języka o nazwie „C ++”, który postanowili rozpocząć. Mieliśmy dwa tygodnie, aby zebrać go na tyle, aby napisać kod. To była dobra lekcja sama w sobie. Tak pójdzie Twoja kariera.
Twoja szkoła prawdopodobnie nie nauczy Cię, czego potrzebujesz, aby znaleźć dobrą pracę. Szkoły często śledzą to, co jest popularne w branży od wielu lat. Wtedy dostaniesz pracę. Każda firma, do której się wybierasz, prawie na pewno nie poświęci szczególnego wysiłku, aby cię przeszkolić. Złe firmy są zbyt tanie i, szczerze mówiąc, dobre firmy będą zatrudniać ludzi na tyle inteligentnych, by mogli je podnieść.
Studia ukończyłem w 1987 roku. Poszedłem do pracy jako programista C z doświadczeniem w programach DOS, NetBIOS i „Terminate-and-Stay-Resident”. Przez te wszystkie lata nie miałem właściwie żadnego szkolenia. Spójrz na ogłoszenia o pracy ... niewiele potrzeba do tych umiejętności! Jedynym powodem, dla którego mogę dzisiaj zostać zatrudniony, jest to, że spędziłem kolejne lata na ciągłym uczeniu się. Aby odnieść sukces jako inżynier, musisz mieć nawyk uczenia się. Do diabła, wychodziłbym poza to: musisz mieć miłość do nauki. Musisz być osobą, która bawi się z WebGL, Androidem lub iOS, ponieważ wygląda fajnie. Jeśli jesteś tego rodzaju osobą i utrzymujesz nawyk uczenia się, zajdziesz daleko w branży.