Niestety, gdybym był na miejscu juniorów i potrzebował przebranżowienia to mój cel do realizacji postrzegałbym z perspektywy wymagań jakie są w ofercie pracy. Widzę co jest wymagane i stąd wiem co muszę poznać.
Pracodawcom najprościej jest okreslić wymagania poprzez N lat doświadczenia i wiązankę technologii - ale ostatecznie nie tego szuka pracodawca! To jest tak samo jak z kobietą, która określa szuka faceta na jakiejś sympatii, że wymarzony facet musi mieć takie a takie kryteria. To są tylko wstępne założenia, w rzeczywistości wypadkowy facet może być zupełnie inny, o ile ma to coś.
Jak junior zauważy, że niemal na każdym ogłoszeniu potrzebna jest znajomość frameworka to z automatu traktuje jego naukę niemal za cel #1 i tutaj bootcampy przychodzą z pomocą. Bootcampom znacznie prościej jest prowadzić zajęcia opowiadające o frameworkach. Bo taka rzecz możesz tłumaczyć nawet głąbom, one mają poczucie, że coś rozumią i że idą do przodu i tak się dzieje dopóki omawia się gotowe konstrukcje, które rozwiązują problemy.
Także każdy chce dobrze, bo pracodawca informuje co potrzeba, junior chce to spełnić, a bootcamp pomaga jak może.
Nie mniej to jest mocno chybione podejście.
Przykładowo weźmy framework za cel, bo często są one wymagane w ogłoszeniach, często bootcampy uczą obsługi takiego frameworka i często też ludzie są tym wstępnie zainteresowani, bo chcą widzieć efekty z nauki.
Niestety nauka frameworka to pamięciówa, tak piszesz kod, ale autorzy frameworka wyznaczyli Ci jak masz rozwiązywać pewne problemy, jakie klasy masz stosować, jak je łączyć itp. Tu zaczyna się kopiowanie kodów ze stackoverflow, i czytanie dokumentacji (o ile ktoś jest wnikliwy). Tutaj programowanie jest pasywne, bo w znacznie większym stopniu trzeba się dopasować to tego jaki workflow oferuje wybrany framework.
Ale przecież tak pracują programiści, co nie? Trochę tak, ale takie "pasywne" programowanie (jeśli mogę to tak ująć) to jest tylko pewna część pracy i oprócz tego jest też wiele sytuacji gdzie rozwiązań niestety nie ma w internecie. To rozwiązanie trzeba nie tylko w miarę szybko wymyśleć, ale również wiedzieć jak je poprawnie wdrożyć w konkretny projekt.
Jeśli ktoś zatrzyma się na frameworkach to efekt końcowy takiej nauki zależy od celu. Nauka frameworkowa zwróci się jak zaczniesz pisać własne oprogramowanie na domowy użytek, jeśli bez obaw po tygodniu możesz usunąć kod i zacząć od nowa, ale w pracy niestety to tak nie działa. Kod jaki będziesz pisał będzie się piętrzył. Każda rzecz, której nie widzisz i której nie potrafisz uzasadnić będzie się mścić. To będzie frustrujące uczucie.
Pracodawcy nie chcą frameworkowców. Oni chcą osobę, która widzi więcej i która potrafi ocenić skutek pewnych decyzji. Taka osoba jest w znacznie lepszej sytuacji, bo to jest właśnie przykład osoby, która może włączyć myślenie w pracy, a tym samym usprawnić komunikację.
Tymczasem praca z frameworkowca po bootcampie jest trudniejsza, ponieważ im cięzej może być zrozumieć co zespół mówi gdy nakreślają listę uwag do poprawy. Ciężej zrozumieć czemu tak się dzieje, cięzej temu zapobiec jeśli nie będziesz uczył się tego na pamięć.
Oczywiście, żeby nie było frameworki są pożądane, programiści którzy nimi operują też, ale lepiej przed frameworkiem z 1-2 lata poświęcić na naukę, gdzie tworzy się coraz większe rzeczy bez frameworków. Inaczej ciężko jest zrozumieć dlaczego pewne rzeczy układają się tak, a nie inaczej.