Witam, śledząc ostatnie oferty pracy na przestrzeni czasu zauważyłem, że oferty dla developerów backendowych bardzo często zawierają również wzmianki typu: "mile widziana" znajomość JS, HTML Angular/React. O ile nie powinno mnie to dziwić dla programistów PHP, Python, RoR, ale coraz więcej jest takich ofert dla programistów Java / C#. Nie mówię tutaj o klepaniu stylów w css ale o programowaniu w JS. Jak jest u was w pracy? Jako programiści Java / C# również dostajecie zadania aby coś dopisać w JS? Myślicie że różnica między Full Backend / Full Frontend dev robi się coraz mniejsza, w związku z rozwojem web? Jak to według was będzie wyglądać w przyszłości?
Biały mleczarz
Biznes chce fullstackow.
W ofertach dla frontu tez jest mile widziany backend.
U mnie w zespoly każdy jest full-stackiem.
I w sumie spoko, bo o ile jesteś backendowcem, to naklepanie kodu w JS raczej nie będzie problemem, gorzej w odwrotnej sytuacji
Biały Mleczarz
I w sumie spoko, bo o ile jesteś backendowcem, to naklepanie kodu w JS raczej nie będzie problemem, gorzej w odwrotnej sytuacji
Nie rozumiem, czemu w odwrotnej sytuacji miało by być odwrotnie? Z mojego doświadczenia samo programowanie backendu w JS (w Node) to ten sam poziom trudności, co programowanie frontendu w JS (zakładam dla uproszczenia, że jest ten sam język po backendzie i frontendzie - jeśli jest inny to też nie rozumiem czemu np. Pythonowiec miałby się łatwiej nauczyć JavaScriptu niż JavaScriptowiec Pythona).
Z drugiej strony programowanie to nie wszystko, bo zarówno backend jak i frontend różnią się dodatkami - w backendzie trzeba napisać jakiś SQL, we frontendzie trzeba ogarniać CSS, kolory, piksely itp.. I tu widzę przeszkodę w skakaniu między tymi dwoma działkami - a nie w języku. Tylko znowu - nie rozumiem czemu backendowiec miałby łatwiej przeszkoczyć na frontend. Wydaje mi się, że obie strony barykady prezentują pewne odmienne wyzwania.
No i są rzeczy trudniejsze od technologii, np. wdrożenie się w duży projekt (i tutaj dopiero mogłoby być łatwiej backendowcom wdrożyć się we frontend pod warunkiem, że byłaby to typowa aplikacja starego typu - gdzie większość logiki jest po stronie backendu. Wtedy naklepać 10 linijek w jQuery faktycznie mogłoby być łatwiejsze niż wdrożyć się w aplikację backendową na ileś tysięcy kodu.
"mile widziana" znajomość JS, HTML Angular/React.
No ale jeśli to aplikacja, która po stronie frontendu też jest również rozbudowana (że aż musi korzystać z Angulara/Reacta) to ten argument odpada.
Nie mówię tutaj o klepaniu stylów w css
Klepanie stylów w CSS wcale nie jest takie łatwe. Jeśli ktoś twierdzi, że jest łatwe to albo mu się tylko wydaje (często backendowcy traktują z pobłażliwością CSS bo nie muszą się tym zajmować głębiej i nie wiedzą co to za piekło) albo faktycznie jest dobry w te klocki bo się tym zajmuje na codzień (czytaj: jest frontendowcem i to dobrym, solidnym frontendowcem, który opanował tę trudną sztukę klepania CSSów).
Mały Mleczarz
Ja to bardziej jestem Backend + DevOps.
Trzeba coś ustawić na aws tos spoko, trzeba napisać jakiś servis restowy też spoko, ale jakbym miał pisać coś w CSS to bym się chyba załamał.
Jak będzie trzeba to od biedy mogę naklepać coś małego i prostego w JS, ale z góry mówię, żeby się po tym nikt nie spodziewał niczego sensownej jakości.
Będzie działać, ale do utrzymania nadawać się raczej nie będzie, bo tam się wszystko za często zmienia, i nawet nie chce mi się śledzić tego jak się teraz piszew tych technologiach.
"Nie mówię tutaj o klepaniu stylów w css". Nie miałem na uwadze poziomu trudności pisania css. Chodziło mi, że zadania związane z frontendem, które dostają backendowcy są bardziej związane z js, niż z css. Bo z przypadkiem gdy backendowiec dostaje do naklepania jakieś bardziej zaawansowane style tzn. inne niż ustawienie marginesu itp., to się jeszcze nie spotkałem.
Biały Mleczarz
Brunatny Ogórek
Zimny Mleczarz
Z tym będzie trudno, bo nawet desktopowe aplikacje w Qt mogą być pisane w htmlu i JSie. Raczej skupiaj się na pozycjach gdzie te technologie są w "mile widzianych", bo to może oznaczać tyle że raz na jakiś czas frontendowcy nie będą mieli czasu i będziesz musiał tylko stworzyć jakiś formularzyk w angularze i zaaplikować style tak jak w innym kalendarzu (co jest w stanie zrobić średnio inteligentny orangutan). Im większa firma tym mniejsze prawdopodobieństwo że będziesz się dziabał we froncie, ale też tym większe że będziesz się dziabał w korporzeczach.
Frontend ma szybko wprowadzać zmiany, niekoniecznie musi być duża dbałość o jakość.
Niekoniecznie musi być duża dbałość o jakość? Powiedz to:
- grafikowi, który się przyczepia o piksele czy o odcień białego
- designerowi, który wymaga określonego zachowania formularza
- leadowi, któremu nie podoba się niezbyt opisowa nazwa zmiennej na code review
- czy PMowi, który pilnuje, żebyś usunął bugi z produkcji
Na pewno w pewnych sytuacjach można sobie pozwolić na szybkie zmiany bez troski o jakość (np. szybkie prototypowanie) ale poza tym to nie widzę powodu, dla którego frontend miałby być mniej wymagający jakościowo.