256 day challenge / przebranżowienie

0

Witajcie,
od dłuższego czasu bije się z myślami o odejściu z helpdesk`a jako, że chyba doszedłem do sufitu jeśli chodzi o wysokość zarobków (obecnie 3k netto) a wszelkie perspektywy awansu mogę sobie wybić z głowy. Nasz guru pracuje w dziale ponad 12 lat i zarobki ma niewiele większe od moich a jest kierownikiem całej grupy. Stąd wiadomo, że nie chce się kisić w tej pracy do końca moich marnych dni żywota. Stąd ustaliłem sobie jasno termin w którym pragnę złożyć wypowiedzenie i do czasu którego chcę znaleźć pracę w obszarze programowania. Licząc od początku przyszłego roku nową pracę chcę znaleźć do 256 dni. Zakładając naukę 4h dziennie plus weekendy wyjdzie mi jakoś spokojnie 600h spędzonych nad kodem i książkami. Nie chcę się jednak pakować w jakieś smutne techniki stąd przedstawiam ogólny zarys co mam zamiar zrobić i wystawić się na wszelką krytykę tudzież jakieś dobre rady.

Języki
C++ / Python / Java
HTML 5 / CSS / JS
PHP / SQL
*Assembly x86 / COBOLT / FORTRAN

Książki
'Opus Magnum C++' Jerzy Grębosz, 'Thinking in Java' Eckel - to dwa takie kloce must have jak dla mnie.
'Algorytmy' Sedgewick, Wayne - następne must have.
Coś do webowych technik, typowo pod front-end.
I coś do bazy danych, wczytywania, modyfikowania, pobierania i nadpisywania danych ze źródła
Do tego w wolnych chwilach drobnostki typu Podręcznik czystego kodu / Zrozumieć programowanie czy coś lekkiego do czytania w trasie do / z pracy.
*Co do Assemblerów i samego COBOLTA to nie wiem czemu ale mnie pociągają same maszynowe języki albo raczej podstawy jak to wszystko jest zrobione. Mam ochotę do końca tygodnia zejść głębiej niż demo scena Amigi :)

Do tego wszystkiego w przyszłości jakieś upublicznianie kodów musi dojść więc chyba muszę się zaprzyjaźnić z githubem.
A na końcu sam pomysł na CV - myślałem o stworzeniu animacji w konsoli (coś a`la BB demo ACII) plus normalny film na youtubie i prezentacja kodów.

Co do samej zmiany branży - mogę sobie pozwolić zejść na niższe progi finansowe (zwłaszcza jako aspirujący junior / stażysta ) - mieszkam w Krakowie i wystarczy mi spokojnie 2k netto. Nie mam żadnego turbo kredytu czy dwójki dzieci i chorej curki. A perspektywa wyzwań i rozwoju jest o niebo większa niż na helpdesk`u. Jak w ogóle widzicie taki pomysł?

6

mieszkam w Krakowie i wystarczy mi spokojnie 2k netto

Kraków to najbardziej przesycone juniorami miasto w Polsce. Zaraz potem jest Wrocław i Warszawa. Drodzy przebranżawiacze, zrozumcie jedną rzecz: za późno na magiczną zmianę zawodu na programistę. Takich jak wy na rynku jest już za dużo. Rynek jest przesycony. Dlaczego dalej w to brniecie?

3
Daerato napisał(a):

(...) i wystawić się na wszelką krytykę tudzież jakieś dobre rady.

Języki
C++ / Python / Java
HTML 5 / CSS / JS
PHP / SQL
*Assembly x86 / COBOLT / FORTRAN

Wybierz sobie technologie tylko z jednego punktu, przy czym pierwszy (C++ / Python / Java) rozbij na trzy osobne. Nauczenie się dobrze tylko technologii z jednego punktu zajmie Ci kilka lat. Naukę FORTRAN-a zamieniłbym na Pythona. Zresztą nie chcę Ci podcinać skrzydeł, ale chyba nie zdajesz sobie sprawy, ile nauki Cię czeka. A nawet mając zacięcie do kodowania, algorytmów, wertowania dokumentacji i tak czasem ogląda się filmiki z kotami. Tak więc te 600 h to trochę mało.

2

Jak będziesz uczył się tylu rzeczy na raz, a chcesz to zrobić w 256 dni, to żadnej rzeczy dobrze się nie nauczysz, tzn. najprawdopodobniej niczego się za bardzo nie nauczysz. Gdybym miał teraz uczyć się od podstaw, to wziąłbym na wstęp jakieś w miarę ogólne wprowadzenie do programowania np. to https://www.edx.org/course/introduction-to-computer-science-and-programming-using-python potem wziąłbym jeden język i po w miarę wstępnym opanowaniu składni próbowałbym stworzyć coś w tym języku. A potem jeszcze coś innego i jeszcze coś innego.

Co z tego, że w jednym miesiącu będziesz uczył się składni w c++, a w następnym będziesz bawił się javascriptem, a w jeszcze następnym co innego, skoro po tych 8 miesiącach pewnie już nic z tego c++ nie bedziesz pamiętać...

6

Ehh... Zostanie programistą to nie czytanie książek, siedzenie na wykładzie ani zabawa w bootkamp. Jeżeli chcesz być programistą to :

  1. Naucz się podstaw języka
  2. Wymyśl sobie projekt i go zrób samodzielnie od początku do końca
  3. Wymyśl sobie projekt i ...
  4. ...
    ...

Tylko tak nabywasz wiedzy i doświadczenia. Przeczytanie całej Symfoni C++ nie zrobi z ciebie nawet stażysty. Nie spędzaj 256 dni na nauce bez praktyki. Poczytaj o roadmapach https://github.com/kamranahmedse/developer-roadmap wybierz jedną drogę i jedź powyższym schematem

3
Języki
C++ / Python / Java
HTML 5 / CSS / JS
PHP / SQL
*Assembly x86 / COBOLT / FORTRAN

Ty chcesz przeczytac ksiazki o nich i rozumiec teorie czy rzeczywiscie chcesz potrafic cos zrobic?

Wez HTML + CSS + JS bo samo to zajmie Ci pewnie z pol roku zeby opanowac w jakims sensownym stopniu

HTML5 => tydzien, dwa (nie ze tylko przeczytasz, ale zrobisz z 1-2 projekty w samym HTML)
CSS + SASS + Bootstrap (tutaj spokojnie dalbym 2 miesiace nauki, a raczej 2 tygodnie teorii i 6 tygodni pisania)
JS + React/Angular + node (spokojnie 3 miesiace a moze i pol roku, teorie w miesiac ogarniesz a reszta to pisanie pisanie i jeszcze raz pisanie)

teraz tak

C++? Rok, moze ogarniesz w jakims sensownym stopniu (jest duzy prog wejscia i zrozumienia podstaw). Bo przeciez samym C++ nie zyje wiec musisz jakis framework ogarnac: Qt / Boost
Python? Sam jezyk jest prosty, wiec pewnie z miesiac na teorie. Ale pozniej zrozumienie PIP, do tego frameworki jak np Django. Z pol roku lekko
Java? sam jezyk miesiac dwa? Na temat frameworkow ciezko mi sie wypowiedziec, bo nigdy nie mialem z zadnym stycznosci
Php? nie wiem
SQL => z 3 miesiace na ogarniecie podstaw SQL
pomine gwiazdke

Zamiast isc z motyka na slonce wybierz co chcesz zrobic. Zobacz w jakim jezyku to sie robi i wtedy zacznij sie tej jednej technologii uczyc

ogarniecie teorii a zastosowanie w praktyce to dwie rozne rzeczy

7

Ale dobrałeś sobie stack... i jeszcze 256 dni, dorzuć miesiąc to wyrobisz się jeszcze z doktoratem z astrofizyki...
Jak nie umiesz into programowanie, to pierw naucz się dobrze składni jednego języka, a później dopiero doklejaj kolejne technologie robiąc już jakieś projekty.
Wypowiedzenie radzę złożyć jak dostaniesz ofertę pracy, a nie jak będzie dzień x miesiąca y.

5

Bierz cobolta i jazda z tematem. Za 3 miesiące minimum 5k netto

0
Daerato napisał(a):

Co do samej zmiany branży - mogę sobie pozwolić zejść na niższe progi finansowe (zwłaszcza jako aspirujący junior / stażysta ) - mieszkam w Krakowie i wystarczy mi spokojnie 2k netto. Nie mam żadnego turbo kredytu czy dwójki dzieci i chorej curki.

Hehe. Ale na rynku juniorów są same takie osoby. Ty zejdziesz na 2k, ktoś na 1,5, ... .

0

Sama teoria to chyba za mało, bo ważne aby to umieć użyć i móc wykorzystać w jakimś sensownym projekcie. Ewentualnie dołączyć na jakiś projekt jako stażysta i móc się w tym połapać. Na starcie techniki webowe i c++. Po nauczeniu się dobrze składni, budowy języka i pierwszych prób stworzenia czegoś będę myślał co dalej. Dojście do poziomu zbudowania jakiegoś prostego CRUD`a i przekształcenia go na mobile z dodaniem jakiejś funkcjonalności i tak mi zajmie sporo czasu. Nic tylko siedzieć i kodować.

0
baant napisał(a):

Bierz cobolta i jazda z tematem. Za 3 miesiące minimum 5k netto

Cobolt dalej w cenie i popularny tylko wśród dinozaurów? Czy idzie na tym konkretnie zarobić tylko z opcją 'dla zagranicznego klienta z sektora bankowości'?

1

Bez pisania kodu nic ci sama teoria nie da, moim zdaniem wejście w Javę jest teraz bardzo ciężkie obecnie.
Dlatego też nauki programowania na studiach nie zaczyna się od Javy. Java upraszcza dużo, ale trzeba pewne rzeczy już umieć i z tych rzeczy na studiach są dziesiątki godzin zajęć.
Ja na Twoim miejscu celowałbym we front albo coś jak tester automatyczny.

0
itsme napisał(a):
Daerato napisał(a):

Co do samej zmiany branży - mogę sobie pozwolić zejść na niższe progi finansowe (zwłaszcza jako aspirujący junior / stażysta ) - mieszkam w Krakowie i wystarczy mi spokojnie 2k netto. Nie mam żadnego turbo kredytu czy dwójki dzieci i chorej curki.

Hehe. Ale na rynku juniorów są same takie osoby. Ty zejdziesz na 2k, ktoś na 1,5, ... .

Nie dawno był podobny przebranżowujący się, meiszkał z rodzicami, chciał 1200 brutto w pierwszym roku ale nawet 800 brutto by go satysfakcjonowało na początek.
Na oeliksie i regionalnym facebooku są ogłoszenia dla juniorów web, wymagają tylko przesłania cv i podania oczekiwanego wynagrodzenia. Doświadczenie nie jest wymagane.

2

Jeszcze wypadało by dodać wpis na facebooku nowy rok, nowy ty.
Potem na insta też coś, niech ludzie wiedzą, że działasz.

3

Nie chcę ci podcinać skrzydeł ale mnie od pierwszego kodu napisanego w C do dostania pierwszej pracy w C++ zeszło trzy lata(były też po drodze studia) i niespecjalnie ogarniam inny stack(w C++ też nie jestem ninja), trochę umiem w Javę. Może niektórzy potrafią od zera do bohatera w 6 miesięcy, ale tak ogólnie to samych podstaw jest sporo, trzeba się przebić przez te podstawowe algorytmy, poklepać jakieś zadania z codility, ogarniać programowanie obiektowe(często jak nie zobaczysz różnych kawałków prawdziwego kodu, nie takiego z tutoriala, to nie zakumasz jak się tym posłużyć a czytanie kodu wymaga czasu), gita, uml, zrobić jakiś układ na bramkach, może coś podziałać z mikrokontrolerem, spróbować coś poprogramować w linuxie(jakieś forki, sygnały, pamięć współdzielona) itd. żeby ci się to wszystko zaczęło sklejać w całość. I nigdy nie jest tak że siadasz i 4 godziny wydajnie naparzasz, często będziesz się mocował z czymś bez sensu i 15 minut rozmowy z kolegą będzie warte tyle co tydzień twoich zmagań. Często przeczytasz sobie rozdział "czystego kodu" i dopiero jak zaczniesz się uczyć pisać testy to zrozumiesz o co gościowi chodziło. Życzę powodzenia, ale radzę zejść na ziemię i się uzbroić w cierpliwość.

6

A ja bym poszedł w wordpressa i poważnie napisałem, bo tam jest spora luka, której nikt nie chce, bo wszyscy chcą być "poważnymi programistami Java".
Naucz się robić customowe stronki, przestudiuj wp codex, dodaj jakiś bootstrap i trochę php i dwójkę netto to minimum dostaniesz.
Jak ogarniesz robienie pluginów to i piąteczka i wyżej nie jest zaskoczeniem i roboty zdalnej od groma jak i utrzymania, czy pisania nowych fliczerów.

0
vendie napisał(a):

mieszkam w Krakowie i wystarczy mi spokojnie 2k netto

Kraków to najbardziej przesycone juniorami miasto w Polsce. Zaraz potem jest Wrocław i Warszawa. Drodzy przebranżawiacze, zrozumcie jedną rzecz: za późno na magiczną zmianę zawodu na programistę. Takich jak wy na rynku jest już za dużo. Rynek jest przesycony. Dlaczego dalej w to brniecie?

Krakow to tez miasto w ktorym firma z branzy IT jest na kazdym rogu. Jak ktos jest dobry bez problemu znajdzie tutaj prace niezaleznie od komercyjnego doswiadczenia.

3

@czysteskarpety
Ale jakby ludziom w TVN powiedzieli, że po bootcampie pierwszy rok będą zarabiać 2 tysiące, po dwóch latach nauki dobiją może do pięciu to by ludzie nie szli na bootcamp za 12,000 zł.

"Media: Wysokiej klasy specjalista zarabia w banku inwestycyjnym 15k" Obok "przypadkowo" komentarze szkół programowania o "braku 250 tysięcy specjalistów" i reklamy tych szkół.
"Rekruterzy wyrywają sobie z rąk CV programistów - Money.pl"

0

Kolejny agent pomysl ze tak jak ty pomyslalo duzo osob, dolicz studentów ktorzy koncza studia aaa i nie zapomnij o brexit znam sporo osob które mysla juz o powrocie :)
Jednym slowem powodzenia

0

Przed chwilą dałeś tu jakiś kod w C++, normalnie takie coś się pisze korzystając z jakichś np. jnija template dla pythona, django też tego korzysta.

Cobol i fortran nie ma sensu uczyć, zamiast tego C lub C++ starczy.
Assembler jak umiesz coś w C zrobić, to znając te podstawowe operacje mov, add, sub, jmp, cmp, rejestry, każdą wyżej operację w C wykonasz, nawet samo mov wystarczy do wszystkiego, ale wtedy trzeba np. add operand dać w postaci liczby i wrzucić pod adres sam opcode, a pod następną instrukcję adres miejsca z tą operacją czyli takie oszustwo.

Trochę niżej to te moduły assemblerowe masz na bramkach logicznych zrobione, elektronika, algebra boola wystarczy żeby zaprojektować taki moduł, na początek jakiś multiplexer potem dodawanie może.

Jak na start bierzesz webówkę(html, css, js, sql), inne sobie daruj języki, bo poza jednym do backendu (java, python, php, ewentualnie js), reszty nie ma sensu się uczyć, bo za dużo będziesz miał, bo poza przeczytaniem książki przy implementacjach pojawiają się błędy i niuanse implementacyjne.

Do uczenia frontu, dobrze umieć jakiś backend zrobić na szybko, zeby można było REST'em jakieś dane przesyłać i je ładnie prezentować.

Jak ogarniesz jeden dział i ci się znudzi możesz przeimigrować.

2

@Daerato: gdybym miał posiąść wiedzę w niecały rok z tego wszystkiego co tutaj wypisałeś to bym się chyba zastrzelił. Po co chcesz iść w C++ i technologie webowe wespół z assembly? Przecież to nie ma najmniejszego sensu.

Dobra, napiszę ale pewnie wiele osób już to wie; mnie zmiana branży zajęła nie dwie trzecie roku ale... trzy lata. Trzy lata nauki, może nie tak intensywnej, bo dla mnie istnieje multum tematów dużo ciekawszych niż programowanie, ale jednak. Nie wyobrażam sobie, żebym mógł zdobyć wystarczającą ilość wiedzy ze wszystkich działek, które wypisałeś w 256 dni.

No chyba, że jesteś Neo: I know Kung-Fu!.

3

Co do samej zmiany branży - mogę sobie pozwolić zejść na niższe progi finansowe (zwłaszcza jako aspirujący junior / stażysta )

  • mieszkam w Krakowie i wystarczy mi spokojnie 2k netto. Nie mam żadnego turbo kredytu czy dwójki dzieci i chorej curki.

Hmmm....

*od dłuższego czasu bije się z myślami o odejściu z helpdesk`a (...) ustaliłem sobie jasno termin w którym pragnę złożyć wypowiedzenie i do czasu którego chcę znaleźć pracę w obszarze programowania. Licząc od początku przyszłego roku nową pracę chcę znaleźć do 256 dni.

Czytając to, wysuwam wniosek, że nie jesteś człowiekiem czynu, tylko człowiekiem, który snuje długotrwałe plany, których nie realizuje, a tylko wyznacza sobie terminy.

Jeśli nie masz większych zobowiązań, a twoja praca cię nie zadowala, to czemu się męczyć i tkwić w małorozwojowej pracy i tylko planować odejście z wyprzedzeniem na rok?

To odnośnie samego tkwienia w danej pracy, bo myślę, że naukę programowania należałoby raczej poświęcić z kilka lat, a nie kilka miesięcy. Szczególnie, że plany, które sobie postawiłeś w pierwszym poście są dość ambitne (choćby przez to, że chcesz kombinować na ileś frontów) i raczej w kilku miesiącach się i tak nie zmieścisz.

1

Za duży zakres technologii jak na to okno czasowe.
Wybierz sobie jeden stack i w nim się kształć - to wtedy jest to do zrobienia.
Chyba że chcesz robić popierdułki typu "znajdź trzeci największy element z listy wprowadzonych liczb".
To wtedy możesz i 10 języków zaliczyć.

C++ sobie odpuść. Niedawno spotkałem się z wypowiedzią drugiego z kolei (po autorze języka) specjalisty od C++ który twierdzi że im więcej o nim czyta tym mniej o nim wie.

Zestaw "HTML 5 / CSS / JS" przyda się prawie w każdej dziedzinie. Nawet jak będziesz zarabiał w COBOLu to być może będziesz chciał mieć swojego bloga o kartach perforowanych i innych antycznych technologiach - wtedy ten zestaw też się przyda.

Bazy danych to podstawa - poznaj przynajmniej jedną SQL (np. MySQL/MariaDB) i jedną NoSQL (np. popularne MongoDB).

Książek wymieniłeś bardzo mało. Do samej Javy na juniora można by przeczytać z 10. A gdzie inne wymienione technologie?
Przy tym krótkim czasie na szkolenie warto zastanowić się nad zastąpieniem książek kursami wideo (Youtube, Udemy). Najlepiej dotyczącymi konkretnych zagadnień.

O algorytmach warto przeczytać co najmniej jedną książkę. Być może nigdy tego nie wykorzystasz ale będziesz przynajmniej mógł się pośmiać jak rekruterzy w kuchni będą boki zrywać z kogoś kto nie umiał z pamięci czegoś tam (czasami takie żarty wbrew pozorom wcale nie są śmieszne).

1

Praca jak praca - na początku było fajnie, teraz to już po 3latach monotonia życia. Nie chodzi mi o to, że źle się w niej czuje ani marnuje jakiś tam swój potencjał. Ot pracuje aby kasa się w miarę zgadzała i szukam dróg rozwoju bo męczy mnie tkwienie w martwym punkcie. A termin sobie ustaliłem aby przypadkowo nie wchłonąć za głęboko. Raczej nie mam problemu z rozpoczęciem działania tylko z jego zaprzestaniem. A jak mam określony punkt kiedy mam rozpatrzyć co już zrobiłem i gdzie jestem to już mam taki wyraźny znak stopu na drodze. Nawet jeśli jest sztucznie ustawiony.

0

a w HelpDesku czym się zajmujesz ? Pomoc typu zacięcie papieru w drukarce czy problemy z wydajnością serwera Windows

2
Daerato napisał(a):

Praca jak praca - na początku było fajnie, teraz to już po 3latach monotonia życia. Nie chodzi mi o to, że źle się w niej czuje ani marnuje jakiś tam swój potencjał. Ot pracuje aby kasa się w miarę zgadzała i szukam dróg rozwoju bo męczy mnie tkwienie w martwym punkcie. A termin sobie ustaliłem aby przypadkowo nie wchłonąć za głęboko. Raczej nie mam problemu z rozpoczęciem działania tylko z jego zaprzestaniem. A jak mam określony punkt kiedy mam rozpatrzyć co już zrobiłem i gdzie jestem to już mam taki wyraźny znak stopu na drodze. Nawet jeśli jest sztucznie ustawiony.

Ale w programowaniu dopadnie cię (prawdopodobnie) taka sama monotonia. To wcale tak nie wygląda, że w pracy będziesz robił co miesiąc nowy projekt w nowym stacku technologicznym itd. Jak nie utkniesz na klepaniu kolejnego CRUD'a Kolejny CRUD niesmaczny żart czy przykra rzeczywistość? to utopią cię w utrzymaniówce Czy to jest normalne, mam pecha, czy nie nadaję się na nic innego. Sprawa inaczej wygląda w startupach ale ani to pewne zatrudnienie ani (zazwyczaj) płaca nie duża w porównaniu z korpo czy softhousem.

0

Chciałbym aby były to bardziej ambitne rzeczy ale dominujące są sprawy techniczne (drukarki, porty, monitory), czasami wpadnie tworzenie kont i reaktywacja starych plus dodawanie uprawnień do serwerów (tylko przy większych rekrutacjach), reinstalacje, konfiguracje kart sieciowych, przepisywanie uprawnień na laptopy służbowe i aktualizacje wszelakie. Czasem wpadną jakieś nowinki technologiczne przy przejściu z Windows siódemki na dziesiątkę. I tak to klepanie tego samego - myszka szwankuje, jakiś plik zapisany na dysku wspólnym nagle wyparował, konto służbowe zostało zablokowane a pracownik w delegacji itd.

0

W magazynie Programista nr 5/2018 masz artykuł o gościu z helpdesku który przebranżowił się na programistę.
Taki na zasadzie bardziej inspiracji niż technologii.

0

a może skieruj się w stronę administowania systemami lub cyberbezpieczeństwa z naciskiem na programowanie w pythonie

1

java LUB python, do tego html,css,javascript + git + sql, po ogarnięciu podstaw dokładasz ze dwa małe projekty w springu/django i masz idealnie wypełniony czasowo ten challenge

w czasie pisania tego eseju mogłeś już zainstalować i skonfigurować środowisko

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