JavaDevMatt.pl – Mateusz Kupilas

Programista, przedsiębiorca, gamedev, bloger.

Tematy do poruszenia w ebooku dla junior developera + pytanie o to co chcielibyście wiedzieć

Wspomniałem w ostatnich paru wpisach, że jestem w trakcie pisania ebooka dla osoby, która chce zacząć pierwszą pracę jako programista i trochę się gubi w tym czego się uczyć, by kiedyś pracować w tej branży.

Tekst zachęcający książki kształtuje się mniej więcej tak: „Co powinieneś potrafić, by znaleźć pierwszą pracę jako programista. Czego i gdzie się uczyć.”

Chciałbym Wam przestawić tak z grubsza listę tematów, które chce poruszyć. Kolejność przypadkowa.

  • samodzielne rozbijanie zadań na wiele mniejszych -> wyrobienie takiego nawyku (najlepiej na podstawie jakiegoś narzędzia jak np. Trello, ale tez jak stosować sprawnie papier i ołówek),
  • moje ulubione zasoby/sposoby do nauki, które uważam za efektywne,
  • dlaczego moim zdaniem nie warto zaczynać jako freelancer,
  • stosunkowe proste do ogarnięcia rzeczy, które dobrze wyglądają w CV,
  • o bazach danych. Nie są takie straszne. Często wystarczą podstawy i nie musisz się przejmować i ogarniać wszystkiego (kiedyś myślałem, że jednak muszę),
  • czego unikać, na czym tracimy czas podczas nauki itp.
  • trochę o mitycznym programiście 15k – większość masy, to szaraki dla których to praca jak każda inna i nie zarabiają ekstremalnie więcej od każdego innego specjalisty (szczególnie na zachodzie),
  • trochę na temat darmowych praktyk – porównanie do płatnych studiów (ludzie płaca za studia, które ich nic praktycznego nie uczą, a nie chcą iść się pouczyć do firmy za darmo? WTF?!),
  • Programowanie obiektowo – po co to? Gdzie i jak zrobić pierwsze kroki?
  • trochę szerzej o pracy przy aplikacjach mobilnych (w końcu to mój główny mocny punkt, dlatego ten temat postaram się bardziej rozbudować, a o rzeczach, które znam słabiej będzie mniej),
  • o szukaniu pracy za granicą i dlaczego tego nie robić jako pierwszą pracę,
  • kontrola wersji, np. git. To podstawa pracy w zespole oraz prawie niezbędne narzędzie do samodzielnej pracy: niby taka podstawa, ale dowiedziałem się o tym dopiero w pracy. Na studiach o tym nie słyszałem (chociaż to chyba głównie dlatego, że byłem na gównouczelni, by dostać tylko papierek), a przy małych pierwszych projektach nie czułem potrzeby by mieć coś takiego. Odkąd zacząłem używać gita nie wyobrażam sobie pracy bez niego.
  • o tym jak wyglądał mój typowy dzień w różnych firmach: w startupie, w firmie outsorucingowej i jako samodzielny programista/freelancer,
  • o narzędziach do budowania aplikacji np. gradle, maven, czy tam inny ant (dlaczego warto je znać),
  • może ciut o branży gier, ale tutaj nie pracowałem, tylko słyszałem parę rzeczy od kolegów z takich firm, zastanowię się jeszcze czy temat wyrzucić,
  • może ciut o studiach, ale w skrócie by i tak wyszło: „albo coś solidnego, a gównostudia dla papierka można sobie darować”. 😉

 Lista będzie uzupełniana w tym wpisie lub następnym. W trakcie pisania ciąglem wpadam na tematy, o których nie pomyślałem wcześniej.

Jeśli macie propozycje tematów do poruszenia w takim ebooku, to możecie zadawać pytania w komentarzu na blogu pod tym wpisem, pod tym wpisem na FB lub na mikroblogu na Wykopie.

Bardzo chciałbym spisać te informacje w jedne miejsce i myślę, że ebook to dobry start. Nie planuje aktualnie dalszych kroków typu wydanie wersji drukowanej, czy kursu video, gdzie wszystkie tematy poruszę na filmikach. Chcę się skupić na fajnym ebooku, a wszystko innego można zawsze zrobić później. 🙂

Bawcie się dobrze.

Mateusz

book

12 thoughts on “Tematy do poruszenia w ebooku dla junior developera + pytanie o to co chcielibyście wiedzieć

  • sokald pisze:

    fajny pomysł i czekam na efekty

  • Borys pisze:

    Bardzo fajny pomysł. Niedawno zacząłem działać w kierunku zostania programistą i o ile czysto technicznej wiedzy, w postaci kursów i książek, jest cała masa, o tyle wiedzy co przyda mi się tak naprawdę w pracy, szukać jak ze świecą.

    Co bym jeszcze z chęcią zobaczył w takiej książce:

    1) Jak wygląda i co zawiera dobry projekt aplikacji w firmie (czyli co przygotować zanim w ogóle usiądę do komputera). Jak dotąd napisałem parę prostych aplikacji, ale nadal łapię się na tym że „nie wiem co dalej”, „teraz muszę zrobić to od nowa, bo inaczej kolejna rzecz nie będzie działać” itp.

    2) Jak pisać kod, żeby przysłowiowo nie nasrać sobie do kieszeni, i któr potem koledzy będą mogli łatwo zrozumieć/modyfikować. Nie chodzi o czystą teorię, bo pewnie jest na ten temat wiele obszernych książek, ale o takie praktyczne wskazówki, jak znaleźć złoty środek między wydajnością a czytelnością kodu. I co zrobić żeby kod wyglądał profesjonalnie. To samo tyczy się commitowania w GIT’cie albo chociaż kiedy warto klasę przenieść do osobnego pliku a kiedy warto zostawić w Activity/Fragmencie.

    3) Czy warto walczyć z Frameworkiem, jak bardzo naginać go do swoich potrzeb a kiedy warto odpuścić i skorzystać ze standardowego rozwiązania. I od drugiej strony, jak szukać gotowych rozwiązań i nie wymyślać koła na nowo.

    4) Może o co chodzi z tym całym Agile, Scrumie itp. oraz jak to wygląda w praktyce.

    5) Kiedy można stwierdzić, że już nie jest się „początkującym programistą” i bez strachu startować na Juniora. Ja po liźnięciu podstawowej wiedzy i napisaniu jakiś prostych programów, biegam po omacku i szukam co mam dalej ze sobą zrobić. Bo mam tylko pomysły przerastające moje umiejętności o lata świetlne.

    6) Kiedy warto przeprowadzać testy narzędziami/kodem testującymi, i jak to wygląda w codziennej pracy. (Bo obecnie zwyczajnie sprawdzam na telefonie „czy działa”)

    7) Może jakieś typowe błędy które popełniają początkujący? Dekalog początkującego programisty czy coś. (Nie koniecznie w szukaniu pracy, ale w trakcie nauki albo już w trakcie pracy)

  • Albert pisze:

    Może coś o poszczególnych stanowiskach w branży IT, jak wygląda praca Project Manager’a, jak Developer’a, Tester i jakich narzędzi do tego używają etc…

  • Iskran pisze:

    Na razie przyszły mi do głowy dwie rzeczy. Pracuję jako junior i nachodzą mnie dwa pytania (może dodam później inne):
    1. Jak się szybko uczyć? W pracy często słyszę, że za wolno ucze się danej rzeczy i już ją powinienem umieć.

    2. Jak znaleźć motywacje do wykonywania nieciekawych zajęć programistycznych w pracy, gdy myślami się jest przy swoim projekcie pobocznych po godzinach? 🙂

  • inf pisze:

    Witam, od dłuższego czasu z zainteresowaniem śledzę twoją działalność 😉 Kawał dobrej roboty. Oto moje propozycje:
    – Praktyczne przykłady lub problemy, planowanie + rozwiązania technolgiczne
    – Jak pracować z dokumentacją, cudzym kodem aby coś się nauczyć ?
    – Czy rozwiązywanie problemów z takich baz jak (spoj,p.euler) uczy programowania? Czy raczej spróbować zbalansować zdobywanie wiedzy praktycznej (Poprzez realizacje jakiegoś własnego projektu), wiedzy teoretycznej (Książki, Dokumentacja, Tutoriale) , i ćwiczyć bystrość umysłu poprzez rozwiązywanie wcześniej wspomnianych problemów, matematyczno/programistycznych.

  • error91 pisze:

    Siemasz, mnie ciekawi jak wyglądają pierwsze tygodnie/miesiące pracy. Kilka dni temu dostałem pracę jako junior c# i zaczynam pracować od stycznia. W sumie to będzie moja pierwsza praca w IT więc ciekawi mnie jak to mogłoby wyglądać. Jestem osobą która dość mocno się stresuje więc chciałbym przygotować się jak najlepiej.

    Komentarz trochę nie na temat więc dodam coś od siebie z czym ja miałem problemy na studiach.

    1) Jak uczyć się od początku dobrego stylu programowania? Mi np ciężko potem było oduczyć pewnych rzeczy. np pisaniu 5 instrukcji if pod rząd zamiast przenieść coś do innej metody. Czy należy pisać zmienne/nazwy metod w języku angielskim? (p.s z ciekawości piszesz nazwy z języku niemieckim czy angielskim? :D)

    2)Kiedyś słyszałem takie powiedzenie że wykładowca nie byłby wykładowcą jeśli byłby na bieżąco z technologiami. U mnie na uczelni wykłady z Javy mają prawie 10 lat. To właśnie zraziło mnie do nauki Javy bo nie miałem ochoty uczyć się rzeczy które ją przestarzałe i do niczego mi nie potrzebne. Oczywiście podstaw OOP nauczyłem się dzięki temu ale nie miałem ochoty na więcej. Myślisz że nauka starych technologii na studiach na coś się przydaje? Czy lepiej uczyć się samemu w takim przypadku?

  • poStudiach pisze:

    Większość tematów, które poruszyłeś jest wart uwagi. Dobra robota!
    Z mojej strony chciałbym wiedzieć, jakie umiejętności powinienem posiadać jako junior np. javy.

  • localhost pisze:

    Cześć,
    studiuje kierunek niezwiązany z informatyką, jestem technikiem informatykiem i nie dostałem się na informatykę u siebie na uczelni. Jestem słaby z matematyki. Czy według Ciebie taka osoba jak ja dała by sobie radę w takiej pracy?

    Moje doświadczenie z programowania to C++ na poziomie mniej niż podstawowym (doszedłem tylko do obiektówki), trochę html i css jeśli można to nazwać programowaniem. Za każdym razem jak przestaje bawić się w programowanie (zniechęcam się) to po jakimś czasie znów instaluje IDE i powtarzam sobie podstawy + uczę się minimalnie dalej. Wiem, że w taki sposób ogarnięcie całej składni C++ zajęłoby mi wieki, ale wierzę, że któregoś dnia kiedy znów zacznę się uczyć to nie przestanę. 🙂

    Pozdrawiam

  • greg pisze:

    Matt świetna robota, oby tak dalej, twój blog bardzo mnie zainteresował/zainspirował, bardziej niż wszystkie .netowe blogi, ponieważ z .netem wiąże swoją przyszłość oraz w firmie piszemy w .necie. Do rzeczy, aktualnie pracuje jako tester, ale chciałbym zmienić stanowisko na programistę, z Twoich postów dużo się dowiedziałem. Może masz jakieś pomysły lub mógłbyś zawrzeć je w ebooku:
    1) jak przekonać/udowodnić obecnemu szefowi że podołamy na nowym stanowisku(np. programisty)?
    2) Czy praca nad projektami po godzinach, to wystarczający rozwój?
    3) Skąd brać motywację do rozwoju po pracy?
    4) Jak organizowałeś i ile poświęcałeś czasu na rozwój po pracy jak byłeś na etacie, czy stosowałeś tylko metodę „just in time learning”?

Skomentuj error91 Anuluj pisanie odpowiedzi

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *