Wpis z mikrobloga

Cześć Mirki.

Czy programowanie rzeczywiście jest takie trudne na początku?

Chodzi mi głównie o technologie związane z frontendem. Czy na prawdę trzeba być tak dobrym, aby zacząć myśleć o szukaniu pierwszej pracy? Nie jestem jeszcze juniorem, na studiach nie byłem ale wymyślając sobie nowe projekty nie oglądam poradników tylko szukam tego co mi potrzebne w dokumentacji języka czy na stackoverflow. Rozbijam dany problem na kilka pomniejszych w głowie i rozwiązuje je etapami i tak idę do przodu.

Staż ok. 3-4 miesiące i wszystko wydaje mi się logiczne w tym programowaniu.

Czy uważacie, że żeby zostać dobrym programistą, trzeba posiadać jakieś nadzwyczajne umiejętności czy to zawód jak każdy inny i jak tylko załapiesz się do pracy to wszystko ogarniesz łatwiutko?

#programowanie #pytanie #programista15k #developer #it #praca #pracbaza
  • 40
via Wykop Mobilny (Android)
  • 0
@przygnieciony: fajnie ze robisz to sam ale ważne jest yez czytanie kodu innych i sprawdzanie jak inni rozwiązali dany problem. Są też różnego rodzaju standaryzację pisania aby wygladalo to składniej i czytelniej dla innych. No i front jest o wiele łatwiejszy niż back end. Spróbuj klepnac logikę serwera z palca skoro to dla ciebie takie łatwe
Nie wiem co z frontendem ale ogólnie programowanie nie jest trudne tylko trzeba mieć do niego predyspozycje (czytaj, mieć pewne schematy myślenia, radzenia sobie z problemami, planowania). Wszystkich nazw funkcji/metod z danego frameworku nikt na pamięć się nie uczy. Dobrze jest mieć doświadczenie i wiedzę z najpowszechniejszych funkcjonalności i umieć dobrze szukać/korzystać z różnych źródeł wiedzy (choćby zadać odpowiednie pytanie na stacku).

Poza ogólnym, najprostszym kursem programowania proponowałbym też:
* Przeczytanie jednej
@Canova czytam również kod innych szczególnie znajomych, śledzę ich githuby i lubię sobie przejrzeć ich commity. Wtedy googluje np. wykorzystane przez nich metody i sprawdzam co one robią.

Czytałem trochę o zasadach SOLID, wzorcach projektowych oraz architekturze tworzenia aplikacji. Wszystko wydaje się dosyć łatwe, a przede wszystkim logiczne, choć za mało mam doświadczenia, żeby wiedzieć jak i kiedy z tego wszystkiego skorzystać. Moje projekty nie są tak rozbudowane, żeby wgl zauważyć różnice
@przygnieciony: Programowanie nie jest aż tak trudne, a zwłaszcza FE, ale które zawody w takim razie są trudne? Mówiąc o pracy umysłowej, chyba wszędzie tak jest, że najtrudniej to się nauczyć i dostać pierwszą pracę, a potem to już z górki.
Nie wiem jakie masz doświadczenie zawodowe, ale w pracy zazwyczaj to wygląda zupełnie inaczej, niż takie kodowanie dla samego siebie. W pracy skupiasz się bardziej na rozwiązywaniu problemów, które powstały
@przygnieciony: dostajesz buga ze klikając przycisk „wstecz” w przeglądarce lądujesz na niepoprawnej stronie, debugujesz i nie widzisz błędu, spędzasz pół dnia w google szukając co może być błędem, na koniec dnia (albo za dwa dni) orientujesz się ze używasz złej wersji paczki obsługującej nawigację na stronę, super udało Ci się rozwiązać jeden z 40 bugow z backlogu, teraz następny task to sprawdzenie dlaczego w safari logo się krzywo wyświetla podczas gdy
@ly000 faktycznie rozwiązywanie problemów w kodzie, który nie został "czysto" napisany przez Ciebie tylko innego człowieka może spędzać sen z powiek. Pomijając architekturę języka dochodzi przeciez jeszcze abstrakcja ludzkiego myślenia.

Trudny zawód to taki, który nie opiera się na logice tylko na emocjach drugiego człowieka. Ja np. większość swojej obecnej kariery zawodowej 4 lata byłem handlowcem. Początkowo było ciężko ale jak tylko zacząłem współpracować z profesjonalistami w branży ich emocje przestały mieć
@bb89 brzmi ciekawie. Czyli tworzenie oprogramowania to ta przyjemniejsza część ale jego optymalizacja i sprawienie, żeby działał poprawnie to jest ta rzecz trudna w programowaniu.

No dobrze ale jako junior zakładam, że obowiązki nie są jakoś specjalnie skaplikowane i dosyć łatwo będzie wejść do branży.

Najtrudniejszy etap to żeby ktoś otworzył twoje CV i dostać się na rozmowę.
@przygnieciony: No to jest dość ciekawa definicja trudnego zawody, aczkolwiek oczywiście jest ona subiektywna. Dla mnie typowa praca z obsługą losowych ludzi jest też jest trudniejsza, bo po prostu tego nie lubię i nigdy nie zdecydowałbym się na taką pracę, ale znam wielu ludzi w mojej firmie, którzy taką pracę preferują.

Natomiast programowanie to taka praca, że zostajesz często sam na kilka/kilkanaście godzin z danym problemem i próbujesz znaleźć jak najlepsze
@ly000 a to rozwiązanie ocenia osoba kompetentna czy losowy klient czy losowy PM?

W sensie, że dobre rozwiązanie jest doceniane czy może podejście jest takie, że "fajnie, że działa" I w sumie olewane?

A jaki masz staż w pracy?
@przygnieciony: w typowej firmie każdy kod jest sprawdzany w ramach tzw. code review. Code review jest robione przez osobę kompetentną, zazwyczaj z dużo większym doświadczeniem niż ty. Uczciwie trzeba przyznać, że ten kod jest zazwyczaj tylko przeglądany i to z lekkim przymróżeniem oka, ale oczywiście zależy na kogo się trafi. Poza tym ślad po każdej twojej zmianie zostaje na zawsze w repozytorium i jak ktoś zobaczy tego babola w kodzie to
@przygnieciony: jeszcze z takich typowych minusów, to w firmach IT zazwyczaj panuje duża rotacja i mało kiedy ktoś pracuje dłużej niż 2 lata. To negatywnie wpływa na dystrybucję wiedzy w firmie. Po jakimś czasie nikt nie wie dlaczego coś zostało tak zrobione i czy można to poprawić. W efekcie powstaje taka "śmierdząca kupa", której wszyscy boją się dotykać i potem jak coś trzeba w tej kupie zrobić, to można trochę zwariować.
@ly000 bardzo ciekawe jest to co mówisz.

Jedną z zalet bycia doświadczonym programistą jest ta dowolność jeżeli chodzi o podjęcie zatrudnienia (przynajmniej w moim mniemaniu). I istnieje przez to duża szansa, że znajdziesz pracodawcę, który ma odpowiednie dla Ciebie podejście do projektu, CR i innych spraw.

Na początku najważniejsze to skupić się na znalezieniu pracy i doświadczenia. Ja mam to szczęście, że mam znajomych, zawsze mogą mnie wziąć do swoich cichych projektów.
czyli można powiedzieć, że junior to osoba, która przez swoją niewiedzę psuje kod, a senior to osoba, która naprawia kod juniora oraz mida wykorzystując swoją wiedzę?


@przygnieciony: generalnie tak, ale zdarza się odwrotnie. Seniorzy to zwykle ludzie z bardzo wysokim ego, często mają już wywalone na te wszystkie rytuały. Nie dają swojego kodu do code review, a czasem nawet nie sprawdzają czy jakaś zmiana zadziałała lokalnie. Taki "starszy" junior sprawdzi kod
Jedną z zalet bycia doświadczonym programistą jest ta dowolność jeżeli chodzi o podjęcie zatrudnienia (przynajmniej w moim mniemaniu). I istnieje przez to duża szansa, że znajdziesz pracodawcę, który ma odpowiednie dla Ciebie podejście do projektu, CR i innych spraw.


@przygnieciony: tak, doświadczony programista dla pracodawcy jest trochę jakby klientem, któremu trzeba dogodzić. Pracę łatwo zmienić, ale nie na początku. Konkurencja wśród juniorów jest ogromna i jest coraz większa.
@przygnieciony: Juniorem i kodem zostać łatwo. Najgorzej wyjść z poziomu mida (nie mówię tutaj stricte o zarobkach czy tytule, ale o faktycznych umiejętnościach, bo to coraz mniej idzie w parze i liczy się nakłanianie w CV i zmiana pracy co kilka miesięcy) i zacząć faktycznie ogarniać architektur systemu czy projekt konkretnych modułów, biorąc zarówno pod uwagę wymagania klienta, ograniczenia (i to nie tylko budżet i czas, ale i umiejętności kolegów czy