_

Inżynier mechanik zostaje programistą

Forum ogólne, ale nie do zadawania "prostych pytań". Wszystko o CAD, czego nie da się bezpośrednio połączyć z tematyką jednego z poniższych forów tematycznych.

Inżynier mechanik zostaje programistą

Postprzez gouda » wrz 23, 2021 19:37

Założyłem ten wątek, żeby nie zaśmiecać głównego tematu tego forum: "Zarobki inż. mechaników".

Nizej kontynuacja wątku dotyczącego przerbanżowienia się na programistę.

Jeśli chcesz wejść do świata cloud i aplikacji webowych czy to w javie czy .necie, czy javascript (backend .node js czy frontend anular/react/vue) to warto ogarnąć następujące rzeczy:
1. Jezyk (java, c#, javascript/typescript itp.) na jak najlepszym poziomie od podstaw po nowe wersje języka i nowe sposoby kodzenia. Jeśli idziesz we frontend lub fulstack to tzreba ogarnąć html i css. Jeśli backend to można to sobie odpuścić.
2. Framework (w przypadku javy np. Spring Boot)
3. Baza danych (minimum SQL na przyzwoitym poziomie + opcjonalnie jakies NoSQL.
4. Git (obowiązkowo w podstawowym zakresie)
5. Podstawy REST API
6. No i coś co powinno być w zasadzie na początku - podstawy informatyki i algorytmów i struktur danych -> trzeba wiedziec jak działają algorytmy sortowania i jakie są rodzaje, jakie są struktury danych w tym struktury dynamiczne (tablice, listy, stosy, kolejki). To są rzeczy niezależne od języka. Podstawy działania systemów cyfrowych ( najbardziej podstawowym zakresie), jak działa procesor, jak działają języki kompilowane a jak hybrydowe, logika Boola itp. Generalnie wiedze ogólno informatyczną polecam zdobywać równocześnie z nauką programowania. Bez znajomości podstaw języka nie zaimplementujesz sobie żadnej kolejki czy stosu, czy drzewa binarnego i nie zrozmiesz jak to działa.

I to by było na tyle. Jak to ogarniesz i zbudujesz pierwszą apkę, możesz aplikować do pierwszej pracy. Na rekrutacji możesz się spotkać z zadaniami które wymagają myślenia algorytmicznego, jak różnego rodzaju operacje na dynamicznych strukturach danych, operacje na stringach. Zdarza się że dostaniesz zadanie w którym musisz zaimplementować jakiś endpoint, pobrać coś lub zapisać w bazie danych. Wszystko będziesz musiał zrobić z wykorzystaniem określonego frameworka i dedykowanych bibliotek. Z tych właśnie powodów znajomośc samego języka nie daje Ci przepustki do świata IT.

Wszystkiego nauczyć się można samemu, z kursów w internecie i z książek. Jeśli na dodatek masz jakiegoś znajomego w IT którego możesz pytać o różne szczegóły (np. czego warto się uczyć, czy ten poziom który osiągnąłeś jest wystarczający żeby wejść w branże itp.) to nie potrzeba Ci bootcampu, ani żadnej sformalizowanej ścieżki.
Oczywiście możesz też wybrać dobry bootcamp lub studia informatyczne. Tą ostatnią opcje polecam wszystkim tym którzy mają na to czas.
gouda
 
Posty: 917
Dołączył(a): lip 30, 2008 00:02

Re: Inżynier mechanik zostaje programistą

Postprzez pawel694 » wrz 24, 2021 10:01

Jak to jest z wejściem do branży w nadchodzących latach, jaki jest trend? Z jednej strony bombardowany jestem różnorakimi ogłoszeniami o pracę w IT, z drugiej czytam/słyszę, że próg wejścia jest bardzo wysoki i rynek nie jest już tak chłonny dla nowicjuszy. Ciekawy jestem Twojej opinii jako osoby ze środowiska.
Druga sprawa, czy wejście do IT od strony testowania jest jakimkolwiek ułatwieniem w późniejszym ewentualnym rozwoju kariery w kierunku programowania?
pawel694
 
Posty: 3
Dołączył(a): lis 12, 2020 12:08

Re: Inżynier mechanik zostaje programistą

Postprzez gouda » wrz 24, 2021 19:14

Jeśli chodzi o trendy na rynku pracy IT, to mogę tylko powołać się na źródła w internecie, ewentualnie skomentować je subiektywnie:
https://zielonalinia.gov.pl/-/boom-na-p ... -ekspertow

Moim subiektywnym zdaniem deficyt na rynku programistów wciąż się powiększa i trend przez najbliższe lata się nie odwróci. Co będzie za 15-20 lat? Tak naprawdę nikt tego nie wie. Ja sądzę że nowe technologie wciąż się będą rozwijały i Ci co ida z duchem czasu na pewno się odnajdą. Z kolei obecnie powstaje ogromną ilość oprogramowania które wymaga utrzymania - do tego też potrzeba ludzi.

Obecna sytuacja na rynku IT jest najlepsza od lat. To typowy rynek pracownika. Oczywiście początki zawsze są trudne.

W kontrze do sytuacji na rynku pracy IT mamy rynek pracy inżynierów mechaników, który jest typowym rynkiem pracodawcy, a zarobki rosną relatywnie wolno, na tyle że faktycznie zjada je inflacja, przez co ta grupa inżynierów systematycznie od około 10 lat ubożeje.

Można zacząć jako tester automatyzujący i przejść na developera po jakimś czasie. Przy czym praca takiego testera jest całkiem podobna do developera. Trochę inaczej wygląda w przypadku testerów manualnych, aczkolwiek można się też rozwijać w kierunku testera automatyzującego.
gouda
 
Posty: 917
Dołączył(a): lip 30, 2008 00:02

Re: Inżynier mechanik zostaje programistą

Postprzez Gorthin » wrz 25, 2021 14:08

Widać, że ten rynek jest chłonny i cały czas jest zapotrzebowanie. Tym bardziej polska wygląda tutaj dobrze. Mimo iż wypłaty wydają się wysokie, mam wrażenie, że i tak zaliczają nas do tych, których można mniej płacić, a jesteśmy lepiej wyedukowani niż np Hindusi.

Osobiście jako konstruktor jestem wypalony, zmęczony i sfrustrowany. Lubię czytać po pracy książki techniczne, cały czas się dokształcać, ćwiczyć nowe przypadki w Ansys, ale w tym kraju nie bardzo się to przekłada na satysfakcję i wypłatę. Polacy to mentalnie Janusze, bez różnicy czy to korpo czy Januszex. Liczy się chęć wydymania. Tak to widzę.

Dlatego rozważam po świętach Bożego Narodzenia, albo bezrobocie albo urlop bezpłatny. Planuję wziąć 2,3 lub 4 miesiące wolnego, gdzie cały dzień poświęcę na naukę programowania. 8-10h dziennie z przerwami rzecz jasna. Do tego weekend. Łącznie liczę na 55h tygodniowo nauki. Więc albo przez 3 miesiące okołoo 700h, albo przez 4 miesiące 1000h nauki.

Póki co przez rok uczyłem się po pracy, ale to średnio wychodzi, bo żeby coś ruszyć do przodu to trzeba poświęcić ze 4h dziennie, z przerwą w tygodniu i cały weekend. Starałem się uczyć ile mogłem, ale i tak przez rok nabiłem może do 300h max.

Uczyłem się Pythona, i podstawy ogarnąłem dość nieźle. Do tego GIT oczywiście.
Dlatego planuję wziąć jednak wolne aby zobaczyć czy jestem w stanie się przebranżowić. Spróbować, bo w razie czego do konstrukcji nie problem wrócić jak się nie uda. A wypłatę mam tak niską ok 4tyś netto (8 lat zawodu), że jeden pies czy będę chodził do pracy czy nie. A może uda mi się przebranżowić. Jak nie to powrót do zawodu ale raczej wyjazd do Niemiec w okolicach maja w razie czego.

Na wolnym planuję uczyć się HTML+CSS i JavaScript oraz jakiś freamework Spring raczej. Do tego podstawy informatyki. I nie zapomnę o Pythonie.

Jak Wam się wydaje mój pomysł, warto zaryzykować czy bez sensu?
Gorthin
 
Posty: 195
Dołączył(a): wrz 16, 2012 19:25

Re: Inżynier mechanik zostaje programistą

Postprzez gouda » wrz 25, 2021 14:30

Tylko sprawdź sobie czy Python jest najlepsza opcją. Bo moim zdaniem jednak nie. ML jest raczej dla ludzi po matematyce i to nie jest takie typowe programowanie. Z kolei frameworki webowe oparte o Pythona nie są tak popularne jak te oparte o Javę czy c#.
Przeanalizuj oferty z najpopularniejszych portali z ofertami dla specjalistów IT i znajdziesz odpowiedź.
gouda
 
Posty: 917
Dołączył(a): lip 30, 2008 00:02

Re: Inżynier mechanik zostaje programistą

Postprzez Gorthin » wrz 25, 2021 14:46

Tak wiem i zdaję sobie sprawę z tego, że Python nie jest u nas popularny, chociaż ogólnie na świecie plasuje się wysoko.

Wybrałem ten język, bo faktycznie jest prosty. I na jego podstawie chciałem złapać jakieś pierwsze doświadczenie w nauce, o co w ogóle chodzi i jak to wygląda.

Dlatego planuję wziąć urlop i zabrać się za HTML+ CSS i do tego JavaScript ze Spring. I oczywiście GIT. Informatyka (algorytmy właśnie). I chociaż podstawy SQL. Takie mam wrażenie, że warto spróbować. Kredytów nie mam, dzieci nie mam. Wydaje mi się, że mogę na luzie poświęcić te parę miesięcy bez pracy, bo z wypłaty i tak gówno mam, i niewiele da się odłożyć.

Taki mam plan, jak Wam się wydaje osobiście, warto zaryzykować?
W sensie również czy faktycznie jest szansa nauczyć się, już coś umiejąc Pythona i troszkę HTML/CSS i potem szukać praktyk/stażu pierwszej pracy. A może od razu już coś dla juniora? Jak to wg Was wygląda, jest sens?
Gorthin
 
Posty: 195
Dołączył(a): wrz 16, 2012 19:25

Re: Inżynier mechanik zostaje programistą

Postprzez gouda » wrz 25, 2021 16:30

Może rozważ jeszcze JavaScript, to też język dynamicznie typowany, podobno łatwiejszy niż stycznie typowana Java. Ewentualnie coś z nowych języków jak np. Go Lang. To dość prosty do nauki języka ze stajni Googla - ofert nie jest może wiele jeszcze ale programistów też mało, więc pracę znalwC łatwiej.
Ja tam uważam że Java wcale nie jest trudna w porównaniu np do C++.
Co z tego że język jest łatwy do nauki skoro o robote ciężko.
gouda
 
Posty: 917
Dołączył(a): lip 30, 2008 00:02

Re: Inżynier mechanik zostaje programistą

Postprzez Gorthin » wrz 25, 2021 16:46

C++ miałem na studiach, ale po przeglądaniu JavyScript to jednak JavaScript trochę łatwiejsza. Dlatego będę celował w HTML+CSS i JS na początek właśnie. Najwięcej pracy można znaleźć widząc po ogłoszeniach. Generalnie HTML +CSS czyli sam frontend byłby łatwiejszy, ale jednak backend bardziej mnie interesuje.

Jeszcze rozważam taką ścieżkę, czyli to całe Salesforce:
https://www.salesforce.com/eu/?ir=1

Co o tym myślisz, lub słyszałeś? To jest w zasadzie CRM.
A docelowy developer używa Apex (czyli coś w składni bardzo podobnego do JS). I mam firmę u siebie w mieście, nawet z akademią. Kwestia czy to dobry początek i kierunek. Żeby w razie czego przejść na coś innego?
Gorthin
 
Posty: 195
Dołączył(a): wrz 16, 2012 19:25

Re: Inżynier mechanik zostaje programistą

Postprzez gouda » wrz 25, 2021 17:03

Polecam się skupić na jednym narazie czyli np na frontendzie. Możesz się uczyć czystego JS a później włączyć w to naukę frameworku np Reacta albo Vue no i oczywiście ogarnąć HTML, CSS, różnej maści bootstrapy itd.

W JS też może a pisać backend przy pomocy NodeJS. Wtedy możesz zostać fullstackowcem.

Oczywiście trochę inaczej się pisze backend w Javie czy #C niż w nodeJs. Te pierwsze dwa języki są po 1 bardziej popularne w backendzie, po drugie są lepsze do systemów klasy enterprise i do dużych systemów webowych i mikroserwisow, m.in. dlatego że to języki hybrydowe (kompilowane do kodu pośredniego wykonywanego przez maszynę wirtualną) a nie języki skryptowe jak JS czy Python które są po prostu wolniejsze.

Salesforce to duża korporacja IT ich flagowy produkt to właśnie potężny CRM.
Ja Ci polecam się skupić na tym co popularne, czyli na językach które wymieniłem, a właściwie na jednym z nich i na jednym kierunku na początek (czyli jeśli frontent to już odpuść sobie backend, pomyślisz o tym jak już dostaniesz się do IT). Z kolei jeśli chcesz iść w backend to raczej odpuść JS i wybierz język statycznie typowany najlepiej Javę lub C# które dominują na backendzie. A zamiast HTML i CSS opanuj podstawy SQLa i jakiejś nierelacyinej bazy danych jak np. MongoDb.
To że liznales już Pythona w niczym Ci nie przeszkadza. Jeśli czujesz się dobrze w języku z dynamicznym typowanien to JS będzie ok. Ale to nie jest taki typowy język obiektowy (C++ like / wzorowany na składni C++) jak Java czy C#.
Chociaż jak byś przebrnął przez podstawy Javy i doszedł do bardziej zaawansowaej nowoczesnej Javy czyli 8+/11+ to też byś zauważył że ucieka to zarówno od typowego języka proceduralnego jaki był C jak i od typowej obiektówki jaka była w C++, w kierunku języka funkcyjnego czyli zupełnie nowego paradygmatu programowania. Co jest bardzo fajne właśnie, bo takie podejście jest bliższe temu jak musli człowiek. Zwykle operacje jak while, for w programowaniu funkcyjnym wyglądają już zupełnie inaczej (kod pisze się w formie streamów).
Kod napisany w Javie 5 lat temu, a kod napisany dzisiaj to są dwa różne światy. Wygląda to całkiem inaczej. Języki i sposoby probramowania bardzo mocno ewoluują.
gouda
 
Posty: 917
Dołączył(a): lip 30, 2008 00:02

Re: Inżynier mechanik zostaje programistą

Postprzez Gorthin » wrz 26, 2021 08:27

Jak pójdę na to 3,4 miesięczne wolne to na pewno ruszam HTML+CSS na początek. Ale przez to wolne nie chce się tylko i wyłącznie skupić na frontend, bo nawet jak znajdę pracę jako junior frontend z myślą o backend, to znowu czekałoby mnie dużo nauki po pracy, a tego trochę chcę uniknąć. Rozumiem się uczyć po pracy jeszcze, ale nie w wymiarze 4-5h.

Dlatego chcę ogarnąć w wolne HTML+CSS na dobrym początkowym poziomie. To chyba jest realnie najłatwiejsze. Mówię o solidnym poziomie początkującym. Fajnie było by na pewno umieć Rest Api.
Do tego na pewno SQL. Podstawy zapytań itd. Tego też na solidnym początkowym poziomie myślę, że można szybko załapać.
No i algorytmy na pewno. Jest kilka stron i pozycji książkowych.

No i na koniec JS na pewno. Chciałbym zdążyć na pewno właśnie z jakimś React/Angular.
Docelowo fajnie by było umieć Javę po prostu.

Chyba, że lepiej odpuścić JS a zająć sie od razu Javą? Nauczyć się HTML+CSS (ewentualnie do tego RestApi podstawy) znaleźć pracę w IT, i przerzucać się na SQL + Java?

Oczywiście na planowanym wolnym ruszę JS lub Javę, bo będę miał dużo czasu, to chciałbym już coś ruszyć.
Gorthin
 
Posty: 195
Dołączył(a): wrz 16, 2012 19:25

Następna strona

Powrót do Forum CAD

Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników