Roadmap dla programisty

0

Czołem,
jestem w fazie nauki języka i zastanawiam czego uczyć się jednocześnie (SQL,gRPC,Mongo,Redis,K8s,Docker,Rest) żeby za jakiś czas móc aplikować na jakiegos juniora/staż ? Po ogłoszeniach o pracę widzę że wymagania pracodawców czasami wyglądają jak ciąg w nawiasie powyżej stąd moje pytanie. Jest jakiś uniwersalny zestaw skilli w Go ?

0

Widziałeś https://roadmap.sh/golang? Sam jestem javowcem więc średnio pomoge

1

przede wszystkim - dobrze naucz się samego Go, reszta przyjdzie z czasem. W różnych firmach mają różny stack technologiczny to trudno się nauczyć tak, aby trafić w większość. Na pewno przyda Ci się umiejętność pisania endpointów z HTML + dobre poznanie np jak pracować z JSONem + jakaś relacyjna baza danych na początku wystarczy. Cała reszta to będzie tylko przysparzać Ci większych problemów przy nauce podstaw.

Naucz się pracować z pakietem context, sync, time, fmt i wtedy daj znać to coś pomożemy pokierować dalej :) Żeby dobrze pisać w Go, to musisz zrozumieć zasadę działania goroutines, mutex i w ogóle wszystko co związane z asynchronicznością.

Na razie takie rzeczy jak Mongo, redis, k8s, socker i cała reszta to będzie za dużo na raz.

0

Nauki nie ma dużo. Na pewno to co napisał @no_solution_found czyli rzeczy z stdliba. Popularne i uniwersalne biblioteki są bardzo proste np. co z tego, że będzie umiał jak działa biblioteka do generowania uuidów albo obsługi decimalów jak nie ma się czego tak naprawdę uczyć. To co według mnie warto znać to bardziej technologie obok i różne podejścia:

  • SQL: ale jak nie umiesz baz relacyjnych w żaden sposób to udział nauki po stronie go to będzie może 1%, jak już umiesz to nauka golangowej libki będzie prosta, bo tak naprawdę to nic się tam ciekawego nie dzieje
  • jakaś obsługa API chmur, umiejętność klikania i ogarniania tego co tam się dzieje
  • testowanie, biblioteka testify, jak się mockuje (ja nie lubię ale trzeba pracować z innymi ludzmi), cmp.Diff, może jakieś dockertest/testcontainers
  • protobuf/gRPC (bo jest często, ale to nie jest uniwersalna umiejętność)
  • obsługa wszelakich API np. do Redisa albo RabbitMQ. Jak się nauczysz kilka z nich to inne będą ci wchodzić coraz lepiej
0

dzięki za rady !

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