Akademia Programisty Java

12 miesięczna szkoła programowania

Przygotowanie do pracy na stanowisku Młodszy Programista Java.

zapisy otwarte

Szymon Leyk

Akademia w 100% powstała z inicjatywy jednej osoby. Jako doświadczony programista, kilka lat temu rozpocząłem też uczyć programowania. Uczyłem grupowo, indywidualnie, stacjonarnie, online, studentów, osoby dorosłe, programistów, osoby niezwiązane z programowaniem, młodszych i starszych.

Ogólny feedback był mniej więcej taki: „Szymon, dobrze tłumaczysz„, „jesteś cierpliwy„, „potrafisz wytłumaczyć zagadnienie na kilka sposobów„. To zaczęło wywoływać we mnie podobną satysfakcję do tej, gdy rozwiązuję problem programistyczny 😀 Czasem nawet większą. Skoro obie strony były „win-win”, to postanowiłem pójść dalej….

Zrezygnowałem z pracy w korporacji, aby mieć więcej czasu na przekazywanie wiedzy, wypracować własne materiały, przygotować program na własnych zasadach.

Postanowiłem zebrać dobre praktyki z każdej formy nauki, którą dotychczas prowadziłem jak również z doświadczenia jako programista i połączyć je w Akademię Programisty Java.

 

Dla kogo jest Akademia?

Dla osób bez komercyjnego doświadczenia programistycznego.

nigdy nie programowałeś

ale co ważne...

dzięki Akademii...

już programowałeś

dzięki Akademii...

Akademia w liczbach

Część I

9 miesięcy

50% nauka / 50% praktyka

80 h
nagrań wideo
80 h
konsultacji z mentorem
120
prezentacji
130
zadania
i projekty
60
projektów
z kodami źródłowymi
24/7
dostęp do grupy prywatnej

Część II

3 miesiące

20% nauka / 80% praktyka

2-5
projektów
zespołowych
40 h
konsultacji z mentorem
24/7
dostęp do grupy prywatnej

Jak widzisz podzieliłem Akademię na dwie części, pierwsza na równi stawia naukę i praktykę. W tym czasie, co tydzień będziesz otrzymywać ode mnie zestaw materiałów, będziemy spotykać się na konsultacjach oraz dyskutować na grupie. 

Materiały wideo – dają swobodę wyboru miejsca i czasu nauki. Uczysz się, gdy masz do tego najlepsze warunki.
Konsultacje – to coś, czego nie dostaniesz w kursie online. Jest to nieoceniona wartość dla osoby, która rozpoczyna i na każdym kroku trafia na trudności. Każda konsultacja będzie nagrywana i publikowana na platformie szkoleniowej. Podobnie jak inne materiały.
Prezentacje – jest alternatywną form nauki, dla osób, które wolą czytać. Prezentacje przydają się do powtórek, oraz do nauki w warunkach w których nie możesz odtworzyć filmu.
Zadania – jest to kluczowy element nauki. W programowaniu od wiedzy, ważniejsza jest umiejętność użycia elementów programistycznych. Zadanie weryfikuje wiedzę, pozwala ocenić na jakim jesteś etapie.
Kody źródłowe – otrzymasz dostęp do wszystkich kodów, które napiszę.
Grupa prywatna – to pierwsza linia frontu, tutaj zadajesz KAŻDE pytanie, nie ma głupich pytań. Bardzo ważne jest, abyś otrzymał wsparcie w każdym momencie, aby nie tracić czasu na niepotrzebne poszukiwania.

Część druga, to przede wszystkim projekty grupowe, połączymy siły i stworzymy coś dużego 🙂 Jest, to doświadczenie w 80% zbliżone do pierwszej pracy, którą będziesz wykonywać po zatrudnieniu. Na tym etapie zaczynasz uczestniczyć w rekrutacjach.

Część druga jest naturalną kontynuacją części pierwszej. Nie ma możliwości przejścia do drugiej części, bez ukończenia pierwszej.

Plan szczegółowy

Miesiąc po miesiącu, tydzień po tygodniu…

Etap I - wprowadzenie

Tydzień 1 – Git
Tydzień 2 – operatory, typy proste, zmienne
Tydzień 3 – tablice
Tydzień 4 – instrukcje sterujące cz1. (if, switch)
Tydzień 5 – instrukcje sterujące cz2. (while, do-while)
Tydzień 6 – instrukcje sterujące cz3. (for, foreach, break, continue, return).

  • nauczysz się pracy z kodem, stworzysz własne repozytorium kodu
  • nauczysz się pisać pierwsze programy, dowiesz się jak działa środowisko uruchomieniowe Javy
  • nauczysz się tworzyć programy realizujące algorytmy typu: sortowanie, algorytm Euklidesa, wyszukiwanie elementów, operacje matematyczne itp.
  • napiszesz pierwszą grę lub łamigłówkę logiczną np. statki, latarnie, krzyżówka, sudoku

Etap II - obiektowość

Tydzień 7 – wprowadzenie do obiektowości (klasa, obiekt, pole, konstruktor, metoda)
Tydzień 8 – rekurencja, kontrola dostępu, składowe statyczne oraz stałe, typ tekstowy
Tydzień 9 – dziedziczenie, klasy abstrakcyjne, przesłanianie
Tydzień 10 – pakiety, interfejsy

  • poznasz najpopularniejszy paradygmat programowania (obiektowość) i nauczysz się wykorzystywać go w tworzonych projektach
  • napiszesz większą aplikację konsolową typu: biblioteka, uczelnia, sklep, salon samochodowy 

Etap III - testy jednostkowe

Tydzień 11 – testy jednostkowe

  • nauczysz się pisać testy jednostkowe, sprawdzajace poprawność napisanego kodu
  • użyjesz najpopularniejszego frameworka do testów jednostkowych dla języka Java, którym jest jUnit

Etap IV - Java zaawansowana

Tydzień 12 – wzorce projektowe
Tydzień 13 – wyjątki
Tydzień 14 – typy sparametryzowane
Tydzień 15 – typy sparametryzowane
Tydzień 16 – kolekcje
Tydzień 17 – kolekcje
Tydzień 18 – wyrażenia lambda
Tydzień 19 – stream API
Tydzień 20 – wątki
Tydzień 21 – wątki
Tydzień 22 – Java time, utils
Tydzień 23 – Java nio

  • nauczysz się pisać kod zabezpieczony przed błędami, zgodny z najlepszymi praktykami (clear code)
  • nauczysz się tworzyć metody i klasy sparametryzowane, uniwersalne dla różnych typów danych
  • poznasz alternatywny sposób przechowywania kolekcji danych, szybkie sposoby filtrowania i wyszukiwania danych
  • nauczysz się operować na plikach, czasie oraz stworzysz kod wykonywany przez wiele wątków

Etap V - bazy danych

Tydzień 24 – SQL
Tydzień 25 – SQL
Tydzień 26 – Maven, Gradle
Tydzień 27 – JPA
Tydzień 28 – Hibernate

  • zaprojektujesz i stworzysz bazę danych
    utworzysz aplikację przechowującą dane w bazie
  • nauczysz się wykonywać operacje CRUD (create, read, update, delete)

Etap VI - Spring Framework

Tydzień 29 – Spring Data
Tydzień 30 – Spring Data
Tydzień 31 – Spring Data
Tydzień 32 – Spring MVC
Tydzień 33 – Spring MVC
Tydzień 34 – Spring MVC
Tydzień 35 – Spring MVC
Tydzień 36 – Spring Security
Tydzień 37 – Spring Security
Tydzień 38 – Spring Security

  • poznasz podstawy najpopularniejszego frameworka Javy
  • stworzysz aplikację webową, działającą w przeglądarce
  • poznasz podstawy HTML i CSS
  • zabezpieczysz swoją aplikację, dodając mechanizm rejestracji i logowania

Etap VII - rekrutacja

Tydzień 39 – Przygotowanie do rekrutacji

  • przygotujesz CV oraz portfolio
  • rozpoczniesz przygotowania do rozmów rekrutacyjnych
  • rozpoczniesz aplikowanie na stanowisko Junior Java Developer

Etap VIII - projekty zespołowe

Tydzień 40 – Agile
Tydzień 41 – projekty zespołowe
Tydzień 42 – projekty zespołowe
Tydzień 43 – projekty zespołowe
Tydzień 44 – projekty zespołowe
Tydzień 45 – projekty zespołowe
Tydzień 46 – projekty zespołowe
Tydzień 47 – projekty zespołowe
Tydzień 48 – projekty zespołowe
Tydzień 49 – projekty zespołowe
Tydzień 50 – projekty zespołowe

  • weźmiesz udział w projekcie zespołowym, realizowanym z innymi kursantami przy wsparciu doświadczonego programisty
  • poznasz Agile (SCRUM) – zwinne metodyki wytwarzania oprogramowania

Jesteś zainteresowany?

Podaj swoje imię oraz email, na który otrzymasz więcej informacji.