Temat: Oferty pracy - ciekawe spostrzeżenie
Wojciech Soczyński:
Fakty niestety są takie, że programy na studiach są tak układane, że niestety nie uczą programisty umiejętności, które są wydawało by się podstawowe. Mam na myśli pracę z systemami kontroli wersji, czy współpracy w zespole. Z drugiej
Pierwsze jest do nauczenia w tydzień, zresztą co firma to inne zwyczaje i i tak nowy pracownik musi się wdrażać.
Drugie podobnie - jak taka nauka miałaby przebiegać? Zrobić zespół programistyczny 10 studentów i później co? Jak zweryfikować ich pracę którą w owym zespole wytworzyli, i jak oceniać ich współpracę wewnątrz?
Rzeczy takie jak wyliczanie złożoności obliczeniowej, owszem są przydatne, ale powiedzmy sobie szczerze, jeżeli nasze oprogramowanie nie rozwiązuje problemów z zakresu fizyki czy analiz ekonomicznych, to nie jest to nam do niczego potrzebne. Większość oprogramowania, które jest tworzone, ma na celu raczej usprawnienie procesów biznesowych, czy prezentację czegoś w internecie i cechuje się raczej gromadzenem danych niż obliczeniami. W tego rodzaju oprogramowaniu bardziej liczą się
No i jak łoś nie ma pojęcia o złożoności przetwarzania danych, tylko wszystko ładuje do vectora, bo tak jest w ponad połowie tutoriali które są pisane jeden od drugiego, to wydajność aplikacji siada i kwiczy.
Nietrudno jest sobie znaleźć przykład aplikacji biznesowych, gdzie wydajność ma znaczenie - systemy pracujące w czasie rzeczywistym - giełda, telefonia komórkowa, gdzie wannabe programista bez wiedzy o złożoności będzie robił gnioty.
Współczesnemu "przeciętnemu programiście" potrzebne jest raczej szerokie spojrzenie i znajomość różnych technologii, dzięki czemu może wybrać tą optymalną do danego zadania. Taka
I skończyć mając 10 systemów w 10 technologiach? Może i to jest fajne dla kogoś, kto lubi dłubać, ale biznesowo to absurd, bo do utrzymania takiego stada potworków potrzeba orkiestry. Możliwość łatwiejszego przerzucania
zasobów jest ważniejsza niż jakiś zapewne jednocyfrowy procent wydajności związany z wykorzystaniem jakiejś egzotycznej technologii kiedy rozwój narzędzia w owej technologii wiąże się z problemami alokacji zasobów.
Technologię może znać nawet jedną, jeżeli zapewnia mu to zatrudnienie, ale powinien ją znać dobrze.
wiedzę posiadają raczej programiści z zamiłowania, którzy z wrodzonej ciekawości lubią eksperymentować z nowinkami.
I którzy później przeżywają bolesne starcie z rzeczywistością podczas wdrożenia się do pracy zawodowej.