Backend - co powinienem znać poza językiem

0

Elo. Niedługo mam wystartować na stanowisko juniorskie na backendzie, zanim jednak to zrobię minie jeszcze 1.5 miesiąca, więc poza oczywistym projektem żeby zwiększyć swoje szanse i nauka języka, co warto.znać lub porady i na co zwrocic uwage w dziedzinie backendu ?

Jestem już programista około roku (front) więc wiem już o niektórych rzeczach, ale jak wiadomo front się różni od backendu, wiec poza wspólnymi umiejętnościami (np. Git ) są też wyspecjalizowane (np. na froncie dobra praktyka jest stylowanie w konsoli Google chrome, albo na przykład narzędzia typu webpack).

Dzięki i pozdrawiam wszystkich forumowiczów.

1
  • Musisz umieć googlować, żeby nie zawracać gitary seniorom o byle pierdołe
  • Musisz umieć debugować - również po to, żeby nie zawracać gitary seniorom. Proponuję zapoznać się z debugerem, który oferuje Twoje ulubione IDE, czyli jakieś od JetBrains.
  • Poczytaj troche o bezpieczeństwie aplikacji webowych, żebyś nie narobił dziur (SQL Injection, XSS).
  • Poczytaj o formatach wymiany danych, typu XML, JSON. Ogarnij co to REST (bo jest spora szansa, że backend, przy którym będziesz pracował jest REST'owy).

A poza tym wyluzuj i witamy w elicie ;)

0

Backend w NodeJS czy inny? (skoro wychodzisz od frontendu i nie wspominasz o innym języku, w zasadzie o żadnym nie wspominasz, ale można się domyślać, że jak frontend to JavaScript)

Musisz umieć debugować - również po to, żeby nie zawracać gitary seniorom. Proponuję zapoznać się z debugerem, który oferuje Twoje ulubione IDE, czyli jakieś od JetBrains.

Skrypty Node można też debugować w Chrome.
node --debug-brk --inspect NAZWA_PLIKU.js, i niepotrzebne IDE do tego celu. Wystarczy chrome. Wchodzisz na about:inspect i możesz debugować w dev toolsach, tak samo jak to robiłeś z frontem (nie trzeba sie uczyć nowego narzędzia).

No i kwestia gustu, ale ja tam i tak najczęściej debuguję JS za pomocą console.log XD (chyba, że chodzi o optymalizację, wtedy profiler z Dev Toolsów się przydaje).

(np. na froncie dobra praktyka jest stylowanie w konsoli Google chrome, albo na przykład narzędzia typu webpack).

Mieszasz rzeczy. Webpack to nie jest dobra praktyka, prędzej zło konieczne.
Stylowanie w konsoli chrome (masz na myśli pewnie coś takiego: https://stackoverflow.com/questions/7505623/colors-in-javascript-console ? ) może być fajną metodą debugowania (jest jeszcze np. console.table czy inne), ale też nie jest to żadna stricte dobra praktyka, raczej taktyka, która niektórym pomaga.

Dobre praktyki to bardziej to, co za tym stoi (np. za narzędziami typu Webpack itp. stoi filozofia, że build projektu powinien być zautomatyzowany, i to można nazwać dobrą praktyką, a nie to, że się korzysta z Webpacka, skoro za parę miesięcy będzie modne co innego). Sprawne debugowanie to też dobra praktyka, ale sposobów na debugowanie jest wiele. Wiele osób np. gardzi console.log i to ich prawo.

1

Na pewno SQL, debugowanie (chyba to się inaczej robi w Javie np. od JavaScriptu), jakieś podstawy wielowątkowoci (zakładając że backend to cywilizowany język a nie JS)

0

Dzięki za odpowiedzi. Tak może rzeczywiście źle się wyraziłem ( jeszcze za mało skilla ;p). W mojej głowie wciąż jest js więc będę szukał firmy która ciśnie w node i najlepiej też typescript ale również c# (.net ) jeżeli nie będzie takiego stacku to wybieram to drugie a node na boczku.

Gdzieś kolega napisał że będę udawał architekturę REST, no właśnie, to mógłbyś podać jakieś artykuły dotyczące dobrego resta, a nie cwaniaku :D

Aż takim zoltodziobem nie jestem, więc w sumie szukam dość profesjonalnych informacji (artykulow) bo po prostu lubię się uczyć i stawiać sobie poprzeczki.

Z frontu z pracy dość sporo się nauczyłem, backendu też poznałem (piszemy aplikację ddd podobna) i coś w tym kierunku też poznałem i czytałem aktualnie książkę o tym, swoją drogą bardzo dobra.

Ale wiem też, ze na pewno jest masa innych rzeczy, narzędzi które każdy backendowiec powinienem znać, wiedzieć co to jest.

Szukam kluczy, ale równocześnie miloby było jakbyś ktoś zarzucił jakimś arykulem, bo w sieci jest masa informacji Ale 3/4 chu* warta. A jakie powiedzmy sobie newbie na backendzie (no może bez przesady ale w porównaniu do kolegów chociażby z pracy to jestem)

Dzięki za odpowiedzi i liczę na dalszą konwersacje :D
Pozdrawiam wszystkich Polaków.

0

a co polecacie do backendu, jave czy c#?

1

Jako backendowiec dobrze jest ogarniać:

  • swoją technologię najlepiej jak możesz - czytać o nowościach, ogarniać użyteczne pluginy, samemu tworzyć open source
  • przydatne narzędzia codzinnego użytku: debugger, IDE (i skróty klawiaturowe), kilka przeglądarek, w tym jedna do pracy (masa pluginów, konsola itp. ), Postman
  • dobre wzorce projektowe i inne paradygmaty programowania, jak i inne języki - im większą masz wiedzę ogólną, tym lepiej i skuteczniej rozwiążesz różne problemy, da to Ci też odwagę, by refaktorować himalaje
  • SQL, bo zasadniczo będziesz kisił dane w bazie
  • NOSQL, gdybyś używał mongo, couchbase itp.
  • GITa - koniec kropka.
  • Google i StackOverflow - 99% problemów, na które się natkniesz związanych z programowaniem, Gitem, SQLem, a nie projektem, w którym dziergasz (specyficzna dokumentacja itp.) ktoś już miał przed tobą
  • REST, HTTP, JWT, chociaż trochę architekturę sieci + mieć jakieś pojęcie o tym na czym wasza apka stoi (AWS, Docker, Vagrant etc.)
0

Co do backendu poza Java i C#, może C++17?

0

C++ do weba? To raczej dla samotnych masochistów.

0

Co do backendu poza Java i C#, może C++17?

Ruby, Python, Scala, Elixir, Clojure, Node, Go. Większość języków stosuje się przy backendzie.

0

Wygląda na to, że nawet aplikacje desktopowe będą pisane w JavaScript i Node.
http://dziudek.pl/wp-api/electron-wprowadzenie

0

@Ktos dlaczego niestety? Wiele programistów na tym forum narzeka na zły JavaScript. To dlaczego twórcy takich świetnych środowisk graficznych jak Gnome i Cinnamon, wybrali właśnie ten język skryptowy? Nie wiem czy wykorzystują do tego Elektron, czy inny framework Node, może ktoś mi wyjaśni, gdzie to sprawdzić?
https://github.com/GNOME
https://github.com/linuxmint

0

Ja nie narzekam na JavaScript, ja narzekam na Electrona :-)

Głównym problemem dla mnie jest to, że aplikacje Electrona są powolne. Używam regularnie VS Code i szybkość jego działania - mimo wielu poprawek i udoskonaleń - nadal jest nędzna (o niebo lepiej niż Atom, całe szczęście). Podobnie np. Postman.

Co do GNOME to oni już dawno obsługiwali JavaScript i mają bindingi do ichniego GTK. Razem z C++, Pythonem i Valą są oficjalnie wspierane. Tak samo GNOME Shell jest zrobiony w sporej części w JS. Ale to nie jest Electron i chyba też nie opiera się o Node, ale o ich własny Gjs.

0

No masz rację, ten cały Atom jest jakiś taki niedopracowany, ciągle coś w nim nie działa, Visual Studio Code też. Jedynie Brackets, jest dość dobry. Tu chyba masz odpowiedź na Twoje pytanie "Wynikowy rozmiar aplikacji to co najmniej ~50MB – wynika to z wagi samego Chromium i V8 oraz kodu Electrona"

1 użytkowników online, w tym zalogowanych: 0, gości: 1