Agenda szkolenia online

Zakres kursu Java Ready

Dwa etapy: najpierw Spring i praktyczne podstawy backendu, potem 3 komercyjne projekty do CV, code review i przygotowanie do rekrutacji, aż do kolejnego kroku w karierze.

30 dni na zwrotDożywotni dostępPłatność ratalna
Cena
3997zł brutto

Możesz płacić w ratach. Masz 30 dni na zwrot bez podania przyczyny.

  • 3 komercyjne projekty do CV z code review
  • 84 godziny lekcji wideo i 50 zadań domowych
  • Stały mentoring aż do znalezienia pracy
Kupuję Java Ready
Etap 1

Spring: backend od podstaw do Spring Security

Gotowy

Spring Boot, HTTP i REST API, bazy danych z Dockerem, testy jednostkowe i integracyjne oraz Spring Security. Do każdego bloku zadania domowe, których nie pomijasz.

Moduł 1: Plan gry (6 minut)4

Powitanie
Plan gry i jak studiować kurs?
Jakie rzeczy potrzebujesz
Praca Domowa

Moduł 2: Do czego służy Spring i przykłady z życia (30 minut)6

Powitanie
Po Co Ci Spring?
Przykłady użycia Springa
Adnotacje vs XML
Czego się nauczysz Springa?
Spring Boota a Spring

Moduł 3: Pierwszy projekt, Spring Boot i HTTP (104 minuty)11

Powitanie
Start implementacji w projekcie
Feign i HTTP
RestTemplate i HTTP
Webclient i HTTP
Konfiguracja URL
JSON i record w RestTemplate
JSON i record w OpenFeign
Obsługa wyjątków
Error handling dla Feigna
Logger log4j2 z Lomboka

Moduł 4: HTTP teoria (140 minut)17

Czym jest HTTP?
Metody HTTP i GET
POST i URI vs URL
Dostępne metody HTTP
Statusy HTTP
RequestParams
Serwer i Controller
POST i DELETE
Headers (nagłówki)
RestTemplate
RestTemplate GET
RestTemplate POST
RestTemplate DELETE
Spring Cloud Feign
Feign PostMapping
Feign DeleteMapping
cURL w terminalu

Moduł 5: Spring IoC, Beany, Spring Boot (256 minut)32

Refactor kodu dla RestTemplate
Projekt bez Springa w samej Javie
Dodajemy Spring Context do projektu w Javie
AnnotationConfigAppContext
Adnotacja @Configuration
Jakie beany się zarejestrowały?
Oznaczamy klasy jako beany
Autowiring i @Autowired
Łączenie beanów
Wiring pozostałych obiektów
RestTemplate i spring-web
Konfiguracja application.yml
Parsery, problem z RestTemplate
Wyjątki w Javie i Springu
Obsługa wyjątku
Poprawa metod w Serwisach
Plan działania na moduł viewer
Stworzenie song viewera
Dodanie interfejsu
Interfejs SongFetchable
Wiele implementacji 1 beana
Dodanie modułu filesongreader
Dependency Inversion Principle
Jak przejść na Spring Boota
@SpringBootApplication
Spring Boot Parent
Startery spring boota
Autokonfiguracja Spring Boota
Maven-wrapper czy warto?
Spring Cloud Feign autokonfig
WebClient autokonfig
Zadanie domowe – teoria

Zadania domowe 01 – nie zrobisz, to nie idź dalej!3

01.01. Zadanie Domowe
01.02. Zadanie Domowe
01.03. Rozwiązanie dla zadania 2

Moduł 6: API - praktyka (182 minuty)27

Powitanie
Nowy projekt w IntelliJ
Projektowanie endpointów GET
Implementacja GetMapping
PathVariable
RequestParam
Nagłówek requestId
Integracja Swaggera z projektem
Kontroler obsługujący HTML
Refaktoryzacja listy na mapę
Implementacja PostMapping
POST RequestBody i DTO
Walidacja POST
Validation Error Api Handler
Implementacja DeleteMapping
Usuwanie danych PathVariable
Obsługa wyjątków przy usuwaniu
Exception Handler
Refactor kodu
PUT vs PATCH
Implementacja PutMapping
PatchMapping
Implementacja PatchMapping
Refactor kodu
Jak zapytanie HTTP dochodzi do serwera? + wstęp do arch. warstwowej
Warstwy i mapowanie DTO na obiekty domenowe
Dodanie warstw serwisu (service) i repozytorium (repo)

Moduł 7: API – teoria (222 minuty)13

Powitanie
Tomcat kontener servletów
Autokonfiguracja dla Spring MVC
Spring MVC
RestController vs Controller (MVC)
Spring MVC konwertery
Czym jest DTO i record w Javie
Czym jest ResponseEntity
Czym jest REST i CRUD
Jak działają Controllery?
Zakresy beanów scope
Aspekty w Springu
spring-boot-starter-validation

Zadania domowe 02 – nie zrobisz, to nie idź dalej! (REST API, CRUD)2

02.01. Zadanie Domowe
02.02. Zadanie Domowe

Moduł 8: Baza danych [Spring Data, Hibernate, SQL, JPQL, PostgreSQL] (198 minut)23

Plan działania
Instalacja docker desktop
PostgreSQL
Docker i pgadmin4
Połączenie do bazy z IntelliJ
spring-boot-starter-data-jpa
Dodanie data.sql z insertami
Refactor kodu InMemory
Krótka notka (patch, put, delete)
Hibernate i encja
Wyciąganie z bazy findAll
Wyciąganie z bazy findById
Zapis do bazy song save
Delete z bazy
Put
Refactor
Patch
Dirty Checking z Transactional
@Query
Paginacja i sortowanie cz. 1
Paginacja i sortowanie cz. 2
Refactor architektury
Użycie @Transactional

Moduł 9: Spring Data, Hibernate podstawy i ORM/JPA, SQL – teoria (185 minut)18

Rysunek ogólny z lotu ptaka
Krótki wstęp do SQL
JDBC driver, JDBC API
DataSource i JdbcTemplate
@Repository, DAO i w. danych
Co to JPA i implementacje
Co to ORM (orm.jpa/hibernate)
Co to Hibernate i co musisz umieć
Co to Spring Data – wstęp
Spring Data JPA
Autogenerowanie metod
@Query
Pageable i sort
Properties dla SQL i noSQL
Przykład transakcji
BEGIN, ROLLBACK, COMMIT
Transakcje w apce webowej
Praca Domowa – teoria

Moduł 10: Baza danych na Dockerze (70 minut)7

Docker - wstęp
Docker architektura
Compose, kontener, obraz
Przekierowanie portów
Volumes
init.sql i wersjonowanie baz
Pozostała teoria

Zadania domowe 03 – nie zrobisz, to nie idź dalej! (Spring Data, Hibernate, Docker, PostgreSQL, SQL)1

03.01. Zadanie Domowe

Moduł 11: Hibernate, Bazy danych, architektura modułów (750 minut)52

Wstęp i wymagania
JPABuddy i IntelliJ nowa wersja
Diagram tabel i omówienie song
Relacja song i genre
Album i Song oraz Album i Artist, + czym jest schemat bazy?
Przekształcamy encję Song
Wizualizacja diagramów
Migracja schematu bazy danych
Sekwencja w PostgreSQL
UUID i BaseEntity
@CreationTimestamp a auditable
Architektura pod pozostałe encje
Poprawienie Controllera i fasady
Encja Genre
Encja Album
Encja Artist
BaseEntity
Jaki błąd popełniliśmy i co dalej?
Spisanie wymagań i o modułach
Spisanie happy path
Rozrysowanie modułów
Relacje czym są i po co są?
Do jednego pakietu/modułu!
Relacja @OneToOne
Notnull jako klucz obcy? Kiedy?
@OneToOne testy
@OneToOne unique
Unidirectional i bidirectional
@ManyToMany
Więcej relacji Hibernate
Inserty przykładowych danych
Jak pisać ficzery?
Zapisywanie Genre
Zapisywanie Albumu z piosenką
Zapisywanie Piosenki
Wyświetlanie artist
Wyświetlanie song i pageable
Wyświetlanie z Join Fetch
Czym jest Join?
Eager, Lazy, n+1, cache Hibernate
Usuwanie piosenki
Usuwanie artysty
Przypisywanie (inna edycja)
Edytowanie/Update
Dodawanie artysty
Kaskada - powiązane encje
Co jeszcze zostało?
Izolacje i transakcje: ACID
Czym jest i po co jest locking
Czym jest indeks na kolumnie
Relacje a moduły – jak to jest w tutorialach?
Podsumowanie i zadanie domowe

Moduł 12: Testy jednostkowe podstawy (670 minut)19

Czym jest jednostka?
Junit5, @Test, baza danych w pamięci, TDD
Przygotowanie kodu do testów
Pokrycie kodu testami (coverage)
Po co są testy? Przykład.
Czym jest asercja? (AssertJ vs Hamcrest)
Od czego zacząć pisanie testu i skrót GWT Given When Then.
Jak nazywać testy?
Można lepiej (refactor testu)
CatchThrowable
Pierwszy test
Poprawka w asercji
Drugi test
Projekcje SpringData a testy
Zadanie domowe
Rozwiązanie zadania domowego
Mockowanie z użyciem Mockito
Mockito w praktyce
Podsumowanie

Moduł 13: Testy integracyjne podstawy (290 minut)15

Wstęp
Porównanie do testów jedn.
Pakiet i konfiguracja
Testy integracyjne z lotu ptaka
Włączanie kontekstu aplikacji
Testcontainers
Debug bazy danych
MockMvc
Flyway
Struktura testu
Pierwszy test
Słówko o security
jsonpath vs objectmapper
Lekcje od 14 do 31. Implementacja testów.
Podsumowanie

Moduł 14: Spring Security (780 minut)50

Co omówimy z Security?
Jakie są wymagania?
Filtry w springu i pustej appce webowej bez security
Filtry w springu z security (dodanie do pom.xml security)
mamy kilka sposobów na zrobienie authentication
Basic Auth w Spring Security
FormLogin
Architektura Security ogólnie
Architektura AuthenticationFilter
Omówienie domyślnej implementacja basicauth i formlogin (filtry)
Własne implementacje UserDetailsService (InMem) i PasswordEncoder (NoOp)
Encja User
Wczytywanie Usera z bazy danych
Dodanie usera przez migrację i test logowania
Enkodowanie/Hashowanie/Enkrypcja
Bcrypt, encode/matches, hasła w bazie danych
HTTP vs HTTPS
Dodanie https (self-signed)
/Register endpoint
Bean SecurityFilterChain
Zabezpieczenie wszystkich zapytań
Udostępnienie rejestracji i swaggera
Udostępnienie endpointów GET
Dostęp do endpointów zależny od roli
CORS
CSRF
Podsumowanie tego co już zrobiliśmy
Trzeci sposób logowania (JWT wystawiony przez songify)
Jak wygląda token JWT non-opaque
Plan działania: JWT wystawiany przez songify
Przygotowanie SecurityConfig pod JWT
Endpoint /token
Delegowanie logowania do AuthenticationManagera
Tworzenie tokena bez podpisu cyfrowego (not digitally signed)
Podpisywanie tokena kluczem symetrycznym HS256
Podpisywanie tokena kluczem asymetrycznym RS256
Przygotowanie pustego filtra i dodanie go do łańcucha
Dodanie logiki do filtra (symetryczny klucz i asymetryczny)
Cookie http only cookie
Frontend i backend https (secure cookie)
Podsumowanie i kolejne kroki
OAuth2 ogólny zarys architektury i wstęp
Co zaimplementujemy?
Usuwamy wystawianie tokena JWT z songify
Tworzenie klienta oauth2 google
Dodanie Oauth2 Login (pom.xml) i kod
Podejrzenie JWT tokena od google
Serwer utrzymuje sesję użytkownika
Bezstanowy Spring Boot OAuth2 + React + secure cookie
Bonus: wysłanie maila z potwierdzeniem podczas rejestracji użytkownika

Moduł 15: Zakończenie i co dalej?2

Co dalej?
Praca domowa i podziękowanie

Sprawdź lekcje demo z etapu 1

Moduł 5, lekcja 24: Jak przejść ze Springa na Spring Boota?

Moduł 7, lekcja 5: [MVC] RestController vs Controller

Moduł 8, lekcja 4: PostgreSQL na Dockerze i testowe query z pgadmin4

Moduł 14, lekcja 5: Testy integracyjne w Springu z lotu ptaka

Moduł 15, lekcja 15: Spring Security – klucz prywatny/publiczny

Etap 2

Wiedza Junior Java Developera

Gotowy

Cały projekt od zera z testami, CV, rozmowy rekrutacyjne i wdrożenie na AWS. Dostajesz code review i plan działania aż do kolejnego kroku w karierze.

Moduł 1: Plan gry (11 minut)3

Powitanie
Co osiągniesz?
Zadanie domowe

Moduł 2: Sprawdzam Twoje projekty i CV oraz daję Ci plan działania (2 minuty)2

Zadanie domowe
Co jeśli kurs jest za trudny?

Moduł 3: Rozpoczęcie projektu (45 minut)10

Wprowadzenie do modułu
Temat i technologie JobOffers
Wymagania projektu JobOffers
Jak zrobić projekt od zera
Zadanie: Stwórz scenariusz
Zadanie: Moduły i procesy
Zadanie: Diagram
Rozwiązanie: Scenariusz
Rozwiązanie: Moduły i procesy
Rozwiązanie: Diagram

Moduł 4: Konfiguracja projektu i pakietowanie (29 minut)7

Wprowadzenie
IntelliJ Ultimate
Praca z Gitem w pracy
Jak zacząć projekt z Gitem, Mavenem i Githubem
Hexagon (porty i adaptery) + Fasady + pakietowanie w Javie
Zadanie: pakietowanie, fasady i testy
Rozwiązanie zadania

Moduł 5: Napisanie testów jednostkowych (172 minuty)14

Wprowadzenie
Testy dla fasady
Czym jest jednostka?
Ile pisać testów jednostkowych?
Mapowanie obiektów bazy danych na DTO
Testowanie aplikacji opartej o czas w Javie
Klasa z @Configuration i Git
Kolejny moduł NumbersGenerator oraz komunikacja między modułami
Kolejny moduł ResultChecker
Kolejny moduł ResultAnnouncer
Pokrycie aplikacji testami
Testy jednostkowe dla połączenia z serwerem HTTP
Zadanie.
Rozwiązanie.

Moduł 6: Wstępna konfiguracja testów integracyjnych (89 minuty)10

Wprowadzenie do modułu
Podepnij Spring Boota
integration i infrastructure
@SpringBootTest i profile
Checkout commitów i Docker Desktop
Połączenie z bazą MongoDB
docker-compose, spring-data, init.js
Dodajemy krok do testów integracyjnych
Zadanie.
Rozwiązanie.

Moduł 7: Baza danych MongoDB, Docker, klient HTTP i Scheduler + testy integracyjne (234 minuty)16

Wprowadzenie do modułu
RestTemplate i infrastructure
Wiremock
Zadanie
Rozwiązanie
ConfigurationProperties
Zadanie
Scheduled
Scheduler + Awaitility
cron
Zadanie
Rozwiązanie
Spring Data MongoDB i TestContainers
Zadanie
Rozwiązanie
Clock i AdjustableClock

Moduł 8: REST API + testy integracyjne (176 minuty)20

Komunikacja backend-frontend
MockMvc
@RestController, @PostMapping, @RequestBody
Ręczne vs automatyczne testowanie kontrolera REST API
Validator i Singleton
Zadanie
Rozwiązanie
Swagger/Postman vs testy integracyjne
Zadanie
Rozwiązanie
Testowanie integracyjne wyjątków
Zadanie
Rozwiązanie
@ControllerAdvice
Zadanie
Rozwiązanie
Spring Validation @Valid
Zadanie
Rozwiązanie
Zapytania HTTP z IntelliJ oraz DuplicateKeyException

Moduł 9: Security: rejestracja użytkowników i Redis cache + testy integracyjne (233 minuty)23

Poprawki w kodzie + Zadanie.
Rozwiązanie
Zadanie
Rozwiązanie
Testowanie błędów RestTemplate i HTTP
Zadanie
Rozwiązanie
Spring Security 6 – wprowadzenie (Json Web Token, Bcrypt, frontend i backend, HTTPS)
Spring Security 6 – implementacja
SecurityConfig
Testy dla zapytania bez Json Web Tokena
Rejestracja użytkownika i testy
Implementacja JWT i testy
Ręczne testowanie Security Postmanem vs testy automatyczne
Dodanie Json Web Token
@WithMockUser
Zadanie
Rozwiązanie
Redis - wstęp
Testy manualne Redisa
Testy integracyjne Redisa
Zadanie
Rozwiązanie

Masz już projekt - CodeReview, podsumowanie i kolejny etap: rekrutacje na Junior Java Developera (11 minut)2

Podsumowanie i co dalej?
Bonus: Wszystkie użyte @adnotacje w kursie + z wytłumaczeniem

Moduł 10: Podsumowanie i wsparcie w rekrutacji na Junior Java Developera (27 minut)7

Masz projekt i co dalej?
Co trzeba umieć na Juniora (bazując na ofertach pracy)
Wzorce projektowe, co wystarczy wiedzieć?
Posłuchaj wywiadów z absolwentami kursu
Historie osób którym się udało zdobyć pracę Junior Java Developera
Certyfikat i rekomendacja na LinkedIn
Zarekomenduję Cię do kilku firm (tylko po zakończonym kursie)

Moduł 11: Jak wygląda codzienny dzień pracy Junior Java Developera? (zanim wyślesz CV) (41 minut)11

Co zrobić przed wysłaniem CV?
Ta wiedza wyróżni Cię na rynku
Scrum
Sprint w Scrumie
Daily
Review
Retro
Refinement i Story Point
Planning
Zadania w systemie JIRA
Pipeline Jenkins

Moduł 12: Przygotuj i wysyłaj CV, a potem przejdź rozmowę z HR (101 minut)13

Co w tym module?
Wywiad z Senior IT Recruiter
Do ilu firm wysyłać CV i kiedy zacząć się martwić?
Jak napisać CV?
Marka osobista (jak się wyróżnić?)
Gdzie szukać ofert pracy?
Jakie oferty wybierać?
Co zrobić z listą 300+ firm do pracy jako Junior Java Developer?
Lista firm, do których dostali się absolwenci kursu
README.md na Githubie - wzorowy przykład
Zadanie: Stwórz swoje CV a ja je sprawdzę
Zadanie: Skopiuj plik rekrutacyjny!
Zadanie: Wysyłaj CV!

Moduł 13: Przejdź zadanie rekrutacyjne (27 minut)4

Co w tym module?
Zadanie
Skarbnica Wiedzy Junior Java Developera zadania z poprzednich rekrutacji
Review Twojego rozwiązania zadania rekrutacyjnego

Moduł 14: Przejdź rozmowę rekrutacyjną i live codingi (85 minut)5

Co w tym module?
Zadanie
Przerób najczęstsze (od kursantów) pytania z rozmów rekrutacyjnych
Wywiad z Senior Java Developerem
Jeśli dostaniesz zaproszenie na rozmowę kwalifikacyjną, to umów się najpierw ze mną na próbną rozmowę (symulacja rozmowy rekrutacyjnej).

Moduł 15: Amazon Web Services (AWS) pokaż światu swoją aplikację! (66 minut)14

Jaki będzie efekt końcowy?
Zakładanie konta AWS
Ile kosztuje AWS i free tier
Tworzenie usera
Tworzenie instancji i keypair
Połączenie SSH z EC2
Instalacja Dockera na EC2
Tworzenie repozytorium ECR
Zmienne środowiskowe
aws-cli i aws configure
Filezilla
Jesteśmy na serwerze EC2
Test przez przeglądarkę
Wprowadzanie zmian i redeploy

Moduł 16: Dodaj Frontend! (React) (70 minut)7

Plan działania
Instalacja Node i Yarn
Pobranie kodu z Frontendem (IntelliJ vs VSCode)
Omówienie projektu Frontendowego
Omówienie zapytania HTTP frontend -> backend oraz CORS
Testowanie lokalne - Docker
Deploy AWS Elastic Container 2 (EC2) + Elastic Container Registry (ECR)

Moduł 17: Zakończenie i co dalej? (5 minut)3

Udało Ci się zdobyć pracę! Wybór firmy + co jeśli Ci się nie udaje?
Pomogę Ci wybrać najlepszą z opcji.
Ostatnie zadanie!

Moduł bonusowy: Docker - wprowadzenie (58 minut)5

Docker czym jest i co można z nim zrobić?
Jak wygląda przykładowy projekt oparty na Dockerze
Instalacja i pierwsza aplikacja
Docker w praktyce
Docker + IntelliJ = duet marzeń

Moduł bonusowy: Git w codziennej pracy w zespole (30 minut)5

Jak wygląda Gitlab/Github w pracy?
Jak wygląda Code Review i Merge/Pull Request w pracy?
Praca z Branchami
Gitlog, Commity, Skróty
Shelve, Patch, ORIG_HEAD

Moduł bonusowy: Maven i Gradle w pracy (20 minut)2

Maven
Gradle

Sprawdź lekcje demo z etapu 2

Moduł 6, lekcja 2: Podepnij Spring Boota do projektu, klasa z Main, Spring Initializr

Moduł 8, lekcja 3: @RestController, @PostMapping, @RequestBody

Moduł 12, lekcja 3: Do ilu firm wysyłać CV i kiedy zacząć się martwić?

Kim jestem?

Nazywam się Bartek Kalka. Programuję w Javie od 8 lat, a od 2020 roku uczę, jak zdobyć w niej pracę.

Stworzyłem ten program, żeby pomóc Ci zdobyć pracę jako Java Developer, a jeśli już ją masz, żebyś mógł wskoczyć na wyższy poziom.

Zacząłem, bo widziałem ciągle ten sam schemat: ludzie po bootcampach i kursach online mieli wiedzę, ale brakowało im komercyjnych projektów, feedbacku na własny kod i pewności na rozmowie technicznej. Dlatego w Java Ready każdy projekt przechodzi code review, a rozmowy ćwiczysz, zanim zrobisz to naprawdę.

300+absolwentów
50+pracuje już w firmach IT
4,9/5średnia z 39+ opinii
6 latprowadzę Java Ready
(od 2020 roku)

Dlaczego możesz mi zaufać?

1

Piszę kod na co dzień

Pracuję jako Senior Software Engineer w InPost. Uczysz się od kogoś, kto jest na rynku dziś, a nie od teoretyka.

2

Prowadziłem zespół

Byłem Team Leaderem backendu w Getint: 4 programistów i QA, praca z klientami z całego świata. Wiem, kogo firmy chcą zatrudniać.

3

Znam rynek od środka

Allegro, Comarch, Finanteq, Getint, InPost. Od stażu po seniora i lidera zespołu.

4

Patrzę oczami rekrutera

Rekrutuję programistów, także seniorów w InPost. Na tym opieram CV, zadania rekrutacyjne i symulacje rozmów.

5

Mam wyniki

300+ absolwentów, ponad 50 pracuje już w firmach IT. Średnia 4,9/5 z 39+ opinii i ponad 30 rekomendacji na LinkedIn.

6

Jestem widoczny w branży

Prelegent InfoShare, ekspert w raportach SOLID.jobs, prowadzący warsztaty dla SFI.pl.

Absolwenci pracują m.in. w:

AllegroVISAComarchNordeaEPAMNovomaticPreciselyNokiaMotorolaSii PolandGFT TechnologiesBoschGuidewareSollers ConsultingLibre WorksINGSoftresSoftsystemWartaCloudiMedSamsungEY GDSBNP ParibasTECNA
Cena

Dołącz do Java Ready

Podsumujmy, co dostajesz:

  • 28 modułów, w których jest ponad 200 lekcji
  • 50 zadań domowych
  • 84 godziny lekcji wideo
  • 3 komercyjne projekty do CV (nie 1 jak w innych kursach)
  • Symulacje rozmów (techniczna + HR)
  • Przegląd Twojej wiedzy i spersonalizowana ścieżka
  • Stały mentoring aż do znalezienia pracy
  • 30 dni na zwrot bez podania przyczyny
  • Dożywotni dostęp do materiałów
  • Licencja IntelliJ Ultimate (odnawiana co 6 miesięcy)
  • Wsparcie od mentora na Discordzie
  • Code review wszystkich projektów
  • Certyfikat ukończenia oraz rekomendacja na LinkedIn
  • Możliwość płatności ratalnej
Cena
3997zł brutto

Możesz płacić w wygodnych ratach. Cena jest stała, bez promocji i odliczania.

Gwarancja satysfakcji: masz 30 dni na zwrot. Niczym nie ryzykujesz.
Dołączam do Java Ready
Przyjmuję ograniczoną liczbę osób, żeby zapewnić indywidualne code review.

Java Developer zarabia ponad 14 tys. zł miesięcznie. Inwestycja zwraca się wielokrotnie już po pierwszym miesiącu pracy.

Gotowy, żeby firmy same do Ciebie pisały?

Dołącz do 300+ absolwentów, z których ponad 50 pracuje już w firmach IT. Masz 30 dni na zwrot, jeśli kurs nie spełni oczekiwań.

Java Ready

Bartłomiej Kalka
NIP: 7822888819
ul. Szwoleżerów 7a, 66-400 Gorzów Wielkopolski
bartlomiejkalka@javaready.pl

© Java Ready. Wszelkie prawa zastrzeżone.