PROGRAMATOR. Fiszka marketingowa

Podobne dokumenty
PROGRAMATOR. Fiszka marketingowa

PROGRAMATOR. Ścieżka: Programista java Eduweb

PROGRAMATOR. Fiszka marketingowa

Oferta szkoleń firmy Code Sprinters

Tytuł szkolenia: Angular 4 - budowanie nowoczesnych i wydajnych aplikacji przeglądarkowych

Full Stack JavaScript z Angular i Nest. Dni: 5. Opis: Adresaci szkolenia

PROGRAMATOR. Fiszka marketingowa. Wersja 1. Załącznik nr 10 do dokumentu Zasady współpracy z firmami szkoleniowymi

Program szkolenia: Continuous Integration i Git

Architektura mikroserwisów na platformie Spring IO

Zaawansowane programowanie w języku C++

Przygotowanie do nowoczesnego programowania po stronie przeglądarki. (HTML5, CSS3, JS, wzorce, architektura, narzędzia)

Dobry Product Backlog Oferta szkolenia dla Product Ownerów

Podyplomowe Studium Informatyki w Bizniesie Wydział Matematyki i Informatyki, Uniwersytet Łódzki specjalność: Tworzenie aplikacji w środowisku Oracle

IT Camp Junior Java Developer. Cel kursu

Wymagania: umiejętność modelowania systemów informatycznych z wykorzystaniem UML. umiejętność definiowania i kreatywnego rozwiązywania problemów

Technologie dla aplikacji klasy enterprise. Wprowadzenie. Marek Wojciechowski

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki

KARTA PRZEDMIOTU. Warsztaty z Ruby on Rails. Ruby on Rails Workshop

Czym jest Java? Rozumiana jako środowisko do uruchamiania programów Platforma software owa

Kurs ASP.NET ASP.NET CORE APLIKACJE WEBOWE

PROGRAM PŁATNYCH STAŻY EFEKTYWNI 2016

Programowanie Zespołowe

edycja 20 opracowany zgodnie z Zarządzeniami Wewnętrznymi PWr. nr ZW 124/2017 i 112/2017 i 113/2017

Wykład Ćwiczenia Laboratorium Projekt Seminarium

Oferta usług coachingowych firmy Code Sprinters

Biorąc udział w projekcie, możesz wybrać jedną z 8 bezpłatnych ścieżek egzaminacyjnych:

Szkolenie: Podstawy automatyzacji z Selenium IDE

MŁODSZY SPECJALISTA DS. OBSŁUGI KLIENTA Z JĘZYKIEM NIEMIECKIM Miejsce pracy: Piotrków Trybunalski nr ref. DOK/2017

Program szkolenia: Tworzenie aplikacji w Ruby on Rails z wykorzystaniem zwinnych metodyk

ANGULARJS TWORZENIE APLIKACJI INTERNETOWYCH

Zagadnienia egzaminacyjne INFORMATYKA. Stacjonarne. I-go stopnia. (INT) Inżynieria internetowa STOPIEŃ STUDIÓW TYP STUDIÓW SPECJALNOŚĆ

Wzorce projektowe. dr inż. Marcin Pietroo

SZCZEGÓŁOWY PROGRAM SZKOLENIA WARSZAWA,

Tematy seminariów wg Roger S. Pressman, Praktyczne podejście do oprogramowania, WNT, Zofia Kruczkiewicz

I. Opis przedmiotu zamówienia

Produktywne tworzenie aplikacji webowych z wykorzystaniem Groovy i

Spring Framework - wprowadzenie i zagadnienia zaawansowane

Informatyka I stopień (I stopień / II stopień) Ogólnoakademicki (ogólno akademicki / praktyczny) stacjonarne (stacjonarne / niestacjonarne)

Zwinna współpraca programistów i testerów z wykorzystaniem BDD i. by Example (JBehave/Spock/SpecFlow)

KARTA PRZEDMIOTU. Programowanie aplikacji internetowych

Projektowanie, tworzenie aplikacji mobilnych na platformie Android

PRZEWODNIK PO PRZEDMIOCIE

Program szkolenia: Test Driven Development (TDD) using Spock or JUnit 5

Usługa: Testowanie wydajności oprogramowania

PRZEWODNIK PO PRZEDMIOCIE

Programista do działu testów PDT/1401/T/TBG

Techniki efektywnego testowania kodu dla programistów Java (Spock

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ),

PROGRAM ZAJĘĆ REALIZOWANYCH W RAMACH PROJEKTU

[Junior Developer - pierwsza praca jako programista - JavaDevMatt] 1. Sponsorzy Partnerzy projektu O czym i dla kogo jest ta książka?

INŻYNIERIA OPROGRAMOWANIA

EFEKTY KSZTAŁCENIA DLA KIERUNKU STUDIÓW

Zagadnienia egzaminacyjne INFORMATYKA. stacjonarne. I-go stopnia. (INT) Inżynieria internetowa STOPIEŃ STUDIÓW TYP STUDIÓW SPECJALNOŚĆ

Wyróżnij się, zwiększ swój zasięg, zautomatyzuj część pracy oraz poznaj nowe, aktywne metody uczenia dorosłych.

Analiza biznesowa a metody agile owe

Narzędzia Informatyki w biznesie

Program Cyfrowy Nauczyciel

Podstawy modelowania programów Kod przedmiotu

Ekspert MS SQL Server Oferta nr 00/08

Aplikacje webowe z wykorzystaniem Node.js oraz Express

OPIS PRZEDMIOTU ZAMÓWIENIA

Szkolenie: Testowanie wydajności (Performance Testing)

Uniwersytet Łódzki Wydział Matematyki i Informatyki, Katedra Analizy Nieliniowej. Wstęp. Programowanie w Javie 2. mgr inż.

Program szkolenia: JavaScript Craftsmanship

Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów dziennych studiów II stopnia)

Adaptywny kod : zwinne programowanie, wzorce projektowe i SOLID-ne zasady / Gary McLean Hall. Gliwice, cop Spis treści

PRZEWODNIK PO PRZEDMIOCIE

Nazwa przedmiotu: MODELOWANIE I ANALIZA SYSTEMÓW INFORMATYCZNYCH. Modeling and analysis of computer systems Forma studiów: Stacjonarne

Korporacyjna Magistrala Usług na przykładzie Mule ESB

Czym jest jpalio? jpalio jpalio jpalio jpalio jpalio jpalio jpalio jpalio

Inżynieria oprogramowania - opis przedmiotu

Akademia ADB Wykład I Praca w grupie i jakość kodu

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ),

edycja 18 opracowany zgodnie z Zarządzeniami Wewnętrznymi PWr. nr 14/2012 i 15/2012 i 34/2012

Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów niestacjonarnych studiów II stopnia)

Praktyczne zastosowanie bibliotek Boost oraz nowego standardu C++11

Programowanie aplikacji biznesowych

ASSESSMENT I DEVELOPMENT CENTER

Acceptance Test Driven Development wspierane przez narzędzie ROBOT Framework. Edyta Tomalik Grzegorz Ziemiecki

Całościowe podejście do testowania automatycznego dla programistów. (TDD, BDD, Spec. by Example, wzorce, narzędzia)

Język Java i technologie Web - opis przedmiotu

Wprowadzenie. Narzędzia i środowiska programistyczne. Laboratorium 1. Prowadzący: Kierunek: Semestr: Rok: Tomasz Gądek Informatyka Zimowy 2

PRZEWODNIK PO PRZEDMIOCIE

Feature Driven Development

1. WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI

PRZEWODNIK PO PRZEDMIOCIE

znajomość języka programowania w stopniu podstawowym (np. C/C++, Java), umiejętność obsługi aplikacji Excel, OpenOffice Calc, itp.

w ramach projektu APLIKACJE INTERNETOWE I INFORMATYCZNE DLA NAUCZYCIELI JĘZYKÓW OBCYCH

SYSTEMY INFORMATYCZNE ćwiczenia praktyczne

Dotacje na innowacje. Inwestujemy w waszą przyszłość.

Analiza i projekt systemu pracy grupowej z zastosowaniem metodyki SCRUM w technologii SharePoint Karolina Konstantynowicz

Programowanie dla początkujących w 24 godziny / Greg Perry, Dean Miller. Gliwice, cop Spis treści

Szkolenie: Zawód Tester

Tworzenie komponentów logiki biznesowej i warstwy dostępu do danych w oparciu o EJB3.0/JPA lub EJB 3.1/JPA2

edycja 16 opracowany zgodnie z Zarządzeniami Wewnętrznymi PWr. nr 14/2012 i 15/2012 i 34/2012

Programowanie obiektowe 1 - opis przedmiotu

Wstęp [2/2] Wbrew częstemu przekonaniu, nie są one gotowymi rozwiązaniami, to tylko półprodukty rozwiązania.

Szkolenie: ISTQB Model-Based Tester

Transkrypt:

Fiszka marketingowa

NAZWA AKREDYTOWANEGO ORGANIZATORA KSZTAŁCENIA Connectis Sp. z o.o. C_school OFERTA Ścieżka Miasto Kursy stacjonarne Kursy blended learning JAVA WEB Full Stack Developer React/Nod e js Tak/Nie Cena Organizacja kształcenia Tak/Nie Cena Organizacja kształcenia Wieczorowe Dzienne Weekendowe Wieczorowe Dzienne Weekendowe Warszawa tak 15000 x x x Katowice tak 15000 x x x Warszawa tak 14000 x x x Ścieżka Zdalne moderowane JAVA Web Tak/nie Cena Organizacja kształcenia tak 15000 Wieczorowe/weekendowe

1 Naszym celem jest pomoc obiecującym i zaangażowanym osobom w zdobyciu profesjonalnych kompetencji programistycznych. Wierzymy, że potencjał może być wszędzie, ale nie każdy otrzymuje szansę na to, aby go wykorzystać. Dlatego misją Connectis jest rozwój poprzez budowanie społeczności deweloperów. Dążymy do tego, aby stać się liderem szybkich zmian technologicznych, zapewniając dedykowane zespoły IT, łączące doświadczonych programistów z odpowiednio przygotowanymi młodszymi developerami. Wykorzystujemy program nauczania, który opiera się na koncepcji uczenia w formule blended learning pozwalającej na znaczną indywidualizację procesu kształcenia. Koncepcja ta została opracowana na bazie wieloletnich doświadczeń w pracy z doświadczonymi programistami oraz przygotowywaniu osób dopiero startujących w świecie IT do szybkiego wejścia na rynek pracy. Program pozwala zarówno na rozszerzenie wiedzy ponad standardowy plan kształcenia osobom, które szybciej chcą się rozwijać jak i uzupełnienie wiedzy tym, którzy startując w programie mają nieco mniejsze umiejętności. Uczestnicy odkrywają programowanie poprzez rozwiązywanie problemów o coraz większym stopniu złożoności. Opieka naszych mentorów pozwala na znacznie szybsze przyswajanie wiedzy i bieżące rozwiązywanie problemów. Stawiamy też na nowoczesne narzędzia pracy grupowej i dedykowane informatyce metody takie jak np. programowanie w parach, kształcenie nomadyczne, hackathony. Na potrzeby A, we współpracy z najbardziej doświadczonymi trenerami, utworzyliśmy unikatowy program łączący tradycyjną edukację z trenerem z nauką na platformie. Nasze doświadczenie we wprowadzaniu młodych programistów na rynek pracy w znacznym stopniu zwiększają szansę na szybkie znalezienie pracy po zakończeniu ścieżki. Tylko w zeszłym roku 87% naszych absolwentów znalazło zatrudnienie w projektach u naszych klientów. Jak wyglądają szkolenia? Nauka realizowana będzie w formie: Warsztatów prowadzonych w formie stacjonarnej z wykorzystaniem platformy w grupach maksymalnie 12 osobowych pod nadzorem trenerów i moderatorów. Samodzielnej (lub z innymi uczestnikami) pracy na platformie.

2 Zadań do wykonania na platformie edukacyjnej ze wsparciem moderatorów. Konsultacji z mentorami i trenerami (oprócz konsultacji zdalnych możliwe są też konsultacje w formule stacjonarnej). Nacisk kładziemy na praktykę. Ścieżkę realizujemy w formule blended learning łącząc zajęcia warsztatowe ze szkoleniem peer-to-peer na naszej autorskiej platformie edukacyjnej, gdzie kształcenie opiera się na wspólnym uczeniu się przez uczestników wspieranych konsultacjami moderatorów. Dzięki temu uczestnik otrzymuje pełen zakres szkoleniowy, który jest skoncentrowany, a przez to wydajny. Wybrane zajęcia prowadzone są stacjonarnie, w formie warsztatów realizowanych z wykorzystaniem platformy edukacyjnej. 12-osobowe grupy, zapewniają największy komfort nauki w formule pracy zespołowej oraz dają możliwość realizowania ćwiczeń w mikrozespołach, stanowiących świetną symulację pracy w zespołach Scrumowych. Kurs oparty jest o program, w którym każdy etap nauki daje możliwość zweryfikowania dotychczas zdobytych umiejętności. Poprzez systematyczne podwyższanie własnych kompetencji na naszej platformie, każdy uczestnik będzie mógł na bieżąco śledzić postępy w nauce oraz poziom uzyskanych kompetencji. Nasza ścieżka jest dedykowana osobom, które chcą uczyć się w sposób elastyczny, z wykorzystaniem platformy edukacyjnej, w ramach której oferujemy między innymi: Dostęp przez 7 dni w tygodniu. Dobrze zaplanowaną ścieżkę, pozwalającą na sprawdzanie wiedzy uczestnika na każdym etapie szkolenia i elastyczny dobór zadań/materiałów w zależności od postępów grupa podąża ścieżką uzyskując dostęp do opracowanych przez nas materiałów w postaci plików tekstowych oraz graficznych, testów oraz zadań praktycznych, umożliwiających zweryfikowanie dotychczas zdobytych umiejętności w domu. Dzięki temu uczestnik ma stały dostęp do pomocy naukowych i może samodzielnie stworzyć swój harmonogram pracy własnej i kontrolować postępy. Naukę pracy zespołowej. Dodatkowe narzędzia wspierające pracę zespołową i rozwijanie kompetencji samokształceniowych:. uczestnicy uczą się od siebie nawzajem, szukają wiedzy i dzielą się nią. Umiejętności samodzielnego rozwiązywania problemów oraz poszukiwania źródeł wsparcia są bardzo istotnymi kompetencjami wykorzystywanymi w praktyce w zawodzie programisty. Czy to będzie tylko programowanie? Praca programisty to nie tylko pisanie linijek kodu - po zakończeniu nauki programowania, organizujemy szkolenie z kompetencji miękkich (stacjonarnie). Obejmuje ono metodyki zwinne, metodyki szybkie (wczesne prototypowanie), rolę w zespole programistycznym, wzorce projektowe oraz narzędzia pracy grupowej. Szkolenie to poszerzy umiejętności komunikacyjne uczestników. Przygotuje do pracy zespołowej oraz sprawnej i skutecznej współpracy.

3 Co się dzieje po ukończeniu kursu? Znalezienie pracy jest kluczową częścią ścieżki edukacyjnej. Ukończenie kursu daje dostęp do miejsc pracy w świecie IT u naszych firm partnerskich, a najlepsi uczestnicy otrzymają konkretne oferty pracy jeszcze w trakcie szkolenia. Współpracujemy zarówno z korporacjami jak i ze startupami. Doradztwo zawodowe: Dla każdego kursanta przygotowaliśmy spotkania z Doradcą Zawodowym. Doradztwo zawodowe obejmować będzie przede wszystkim tworzenie CV, poszukiwanie odpowiedniej dla danego kandydata pracy oraz przygotowania do rozmowy kwalifikacyjnej. Pomagamy zweryfikować faktyczne kompetencje kandydata, niezbędne do wykonywania obowiązków na konkretnym stanowisku. Lokalizacja: Szkoła zlokalizowana jest w centrum Warszawy, pomiędzy Dworcem Centralnym a Zachodnim z doskonałym połączeniem komunikacji miejskiej. W pozostałych miastach zajęcia odbywają w dogodnie skomunikowanych lokalizacjach. Dla grup katowickich naprzeciwko Dworca Głównego i Galerii Katowickiej. DODATKOWE UDOGODNIENIA: Infrastruktura Szkoły: Dla uczestników szkolenia dostępna będzie: Duża przestrzeń coworkingowa, która pozwoli kandydatom poczuć się, jak w prawdziwym Softwarehous ie Sale warsztatowe przystosowane do pracy w małych grupach, Chillout room, gdzie można odpocząć w przerwie miedzy zajęciami lub po prostu popracować w niezwykłym dla zwykłych szkół otoczeniu, Dostęp do pracowni softwarehouse z przestronnymi i wygodnymi stanowiskami komputerowymi (laptop + dodatkowy monitor dla każdego uczestnika), Klimatyzowane sale, wyposażone w rzutniki, telewizory oraz sprzęt multimedialny Duża kuchnia i darmowa kawa! FAQ: CZY OTRZYMAM DYPLOM UKOŃCZENIA LUB CERTYFIKAT?

4 Tak, ale to nie jest najważniejsze! Ważne jest to jak pracujesz i co możesz zrobić a przede wszystkim jakim portfolio możesz się pochwalić DLACZEGO MYŚLICIE, ŻE PRZYGOTOJUCIE MNIE DO KARIERY W ŚWIECIE TECH? Podczas naszego szkolenia budujesz swój własny portfel projektów. Najlepsi uczestnicy otrzymają ofertę pracy jeszcze w trakcie nauki, to jest nasza gwarancja. CZY POMOŻECI MI W ZNALEZIENIU PRACY? Znalezienie pracy jest kluczową częścią ścieżki. Zapewnimy Ci sposób na zdobywanie wiedzy, budowanie zaufania i dostęp do profesjonalistów poprzez nasze firmy partnerskie, meetupy i warsztaty, ale ostatecznie to Ty musisz przejść nasz kurs i podjąć wyzwanie wejścia do świata programowania. CZY MUSZĘ BYĆ DOBRY Z MATEMATYKI? Nie, chociaż umiejętności logicznego myślenia na pewno się przydadzą CZY MUSZĘ MIEĆ JAKIEKOLWIEK DOŚWIADCZENIE W KODOWANIU? Absolutnie nie! JAKI ZESTAW UMIEJĘTNOŚCI MUSZĘ POSIADAĆ ABY ODNIEŚĆ SUKCES? Musisz umieć dostosowywać się, pokonywać trudności. Musisz być proaktywny, kreatywny, głodny wiedzy i musisz umieć i chcieć współpracować z innymi. A przede wszystkim musisz być uparty, konsekwentny i zdeterminowany! Trenerzy: Kadrę tworzą doświadczeni trenerzy IT. Specjaliści metodyki nauczania oraz doświadczeni programiści. Jakub Neumann/ Trener Java Dydaktyk i praktyk z wieloletnim doświadczeniem. Programista Java, JavaScript z dobrą znajomością języka Scala, współczesnych narzędzi i technologii wytwarzania oprogramowania, w szczególności związanych z aplikacjami przemysłowymi Java EE lub Spring framework oraz technologiami frontend aplikacji

5 typu Single Page Application (np. Angular JS). Specjalizuje się w wykorzystaniu w praktyce najnowszych technologii w szczególności opartych o mikroserwisy i programowanie reaktywne. Zajmuje się również zarządzaniem zespołami i prowadzeniem projektów IT w szczególności w duchu metodyk zwinnych. Lider i założyciel Trójmiasto Java User Group. Dyrektor ds. Technologii spółki informatycznej w której wykształcił dwa zespoły juniorów przeprowadzając ich członków do stanowisk seniorskich. Odpowiadał za koncepcję i implementację dwóch projektów informatycznych, które otrzymały nagrody za innowacyjność Europejską nagrodę System Gamifikacyjny roku oraz pierwszy na świecie system holterowski realizowany z wykorzystaniem przeglądarki internetowej. Grzegorz Madajczak / Trener Front-End Obecnie pracuje jako front-end developer w firmie sektora finansowego, gdzie na co dzień realizuje projekty na potrzeby firmy. Twórca IDE.school mającej na celu promowanie wiedzy w zakresie programowania w języku JavaScript. Od wielu lat dzieli się zdobytą wiedzą poprzez uczestnictwo w szkoleniach, spotkaniach członków społeczności deweloperów JavaScript oraz jako mentor osób wchodzących do branży IT. Pierwsze kroki w edukowaniu innych stawiał 10 lat temu. Autor artykułów do czasopisma Linux+. Współpracował z Google Developer Group w Warszawie, gdzie udzielał się aktywnie jako uczestnik wielu eventów, czy też prelegent na wykładach. Towarzyszyły temu prowadzone przeze niego szkolenia - w ramach firmy - IDE (Informatyka - Doradztwo - Edukacja) zrealizowane na terenie całej Polski, głównie dla firm z sektora publicznego. Paulina Soliwoda/ Trener umiejętności miękkich Trener z wieloletnim doświadczeniem w zakresie: przygotowywania szkoleń i programów szkoleniowych, przeprowadzania warsztatów z zakresu umiejętności liderskich, komunikacji, twórczego myślenia, rozwiazywania problemów, mnemotechniki oraz szybkiego czytania. Od wielu lat zajmuje się również przeprowadzaniem warsztatów dla dzieci i młodzieży dotyczących profilaktyki i cyberprzemocy.

PROGRAM JAVA WEB KURSY PODSTAWOWE INFORMATYCZNE Tytuł kursu - Podstawy protokołu HTTP i architektura współczesnych aplikacji webowych (32 h) Wprowadzenie do architektury Klient Serwer Przeglądarka Internetowa jako typowy Klient. Główne moduły przeglądarki, silnik JavaScript Podstawy języka HTML oraz CSS Główne koncepcje protokołu HTTP oraz TLS/SSL Praca w aplikacji w trybie Żądanie odpowiedź, bezstanowość protokołu, cookies Budowa adresatów URL, w tym Query String/Query Parameters Główne składowe protokołu HTTP: o podstawowe nagłówki o Content-Type a typy MIME o Metody protokołu http i ich semantyka (GET/POST/PUT/DELETE) o kody odpowiedzi oraz wybrane, najczęściej spotykane kody z grup 200, 300, 400, 500 XMLHttpRequest i technika AJAX Format JSON Podstawy wzorca REST Wybrane narzędzia testowania i pracy z protokołem HTTP (na przykład Postman) o budowanie Żądań wraz z ciałem typu application/json o wykonywanie Żądań do wybranego publicznego API (na przykład serwis jsonplaceholder) Projekt i implementacja prostej aplikacji serwerowej w języku JAVA wg wzorca REST Testowanie automatyczne części serwerowej aplikacji webowej wg wzorca REST Tytuł kursu - Bazy danych relacyjne i nierelacyjne. Język SQL (32 h) Wprowadzenie do modelu relacyjnego i historii jego powstania. Opisanie przyczyn jego popularności. Krótkie omówienie postaci Edgar a Codd a. Omówienie podstawowych terminów modelu relacyjnego: relacja, encja, tabela, klucz główny, klucz obcy, wartość null, więzy spójności, perspektywa. Omówienie różnych poziomów relacyjnej bazy danych: użytkowy, logiczny i fizyczny. Omówienie przeznaczenia i elementów występujących na diagramie encji. Przykłady różnego rodzaju związków, które mogę wystąpić na diagramie encji: jeden-do-wiele, wiele-do-wiele, związki jedno-jednoznaczne itd. Ćwiczenia z analizy wymagań klienta i ich zamiany na diagram encji. Dyskusja na temat różnego rodzaju problemów, które można napotkać projektując diagram encji. Wprowadzenie terminu postaci normalnych: 1, 2, 3 postać normalna i postać normalna Boyce a-codda.

1 Wprowadzenie do języka SQL na podstawie wybranej bazy danych i dialektu języka SQL. Krótki opis historii języka SQL i jego aktualnej wersji. Omówienie podstawowej składni instrukcji DQL SELECT, FROM Omówienie klauzuli WHERE. Wstęp do logiki boolowskiej z uwzględnieniem wartości null. Omówienie podstawowych operatorów < (mniejszy), > (większy), <= (mniejszy równy), >= (większy równy), = (równy), IS NULL, IS NOT NULL. Omówienie klauzuli ORDER BY i DISTINCT Omówienie klauzuli GROUP BY i HAVING Omówienie pojęcia NoSQL i genezy jego powstania. Przedstawienie czterech podstawowych kategorii rozwiązań NoSQL: klucz-wartość, big table, bazy dokumentowe, bazy grafowe. Omówienie wad i zalety każdego z nich. Podsumowanie wiadomości i terminów przedstawionych w czasie kursu. JĘZYKI PROGRAMOWANIA KURSY SPECJALISTYCZNE Tytuł kursu - Programowanie w języku Java (100 h) Wprowadzenie do świata języka Java i aspektów dla niego charakterystycznych Java Virtual Machine, Java Development Kit, Java Runtime Environment Instalacja w wybranym systemie operacyjnym, ustawienie zmiennych systemowych PATH, JAVA_HOME Kompilacja i uruchamianie programów w terminalu/linii poleceń Zapoznanie z wybranym środowiskiem programistycznym, zakładanie projektów, tworzenie pakietów, klas, uruchamianie programów Zmienne i typy danych: prymitywne i referencyjne Tablice jedno i wielowymiarowe Podstawowa składnia języka m.in: instrukcje warunkowe, pętle, operatory Praca z debuggerem Klasy i ich składowe, hermetyzacja, obiekty, referencje, konwencje nazewnicze, Pakiety, konwencje nazewnicze, struktura katalogów Tworzenie obiektów, konstruktory i ich rodzaje Praca z dokumentacją Klasa Object, kontrakt dla metod equals() i hashcode() Metody instancyjne, statyczne, przeciążanie Modyfikatory dostępu Konwencja JavaBeans Kompozycja Typ wyliczeniowy Interfejsy i implementacje Dziedziczenie, klasy abstrakcyjne, przesłanianie metod Generyczność Kolekcje: Iterable, Set, List, Map i ich implementacje, cechy, złożoność kluczowych operacji, klasy usługowe Collections, Arrays Wyjątki i ich obsługa Praca z API javy w zakresie obsługi dat i czasu Tytuł kursu Aplikacje webowe w języku Java (80 h)

2 Wprowadzenie do koncepcji aplikacji webowych. Standard Java Enterprise Edition i aplikacje frameworka Spring Wprowadzenie do koncepcji kontenera webowego i serwerów aplikacji (np. tomcat, jetty) Koncepcje frameworka Spring ze szczególnym uwzględnieniem Spring Boot, konfigurowanie i uruchamianie aplikacji Spring Boot Archiwum typu war oraz deployment aplikacji webowej w środowisku developerskim (np. Maven z wtyczką jetty, Gradle z wtyczką gretty, deployment ze środowiska IDE) Aplikacje webowe według wzorca REST we frameworku Spring Boot, konfiguracja projektu, podstawowe typy i adnotacje takie jak @RestController, @ResponseBody, @ResponseStatus, @Path, @PathVariable, @RequestBody itp. Praca z dokumentami JSON we frameworku Spring Boot, maper JSON - obiekt Javy Projekt Spring Data, typy i adnotacje standardu Java Persistence, modelowanie dziedziny i encji, adnotacje @Entity, @Id, @OneToMany, @ManyToOne, @OneToOne itp. Projekt i implementacja aplikacji webowej Spring Boot wg wzorca REST (RESTful web service) wraz z warstwą dostępu do danych Automatyczne testowanie aplikacji webowych w środowisku Spring Boot NARZĘDZIA I BIBLIOTEKI PROGRAMISTYCZNE Tytuł kursu - Język Java wybrane biblioteki i narzędzia (32 h) Cykl wytwórczy i fazy życia typowego projektu w języku Java Główne zadania narzędzi Maven/Gradle w obszarach o spełniania zależności w projekcie na poziomie bibliotek o automatyzacji głównych czynności i faz przy wytwarzaniu artefaktów o definiowania wzorców w zakresie układu katalogów o różnym przeznaczeniu o definiowania dobrych praktyk w zakresie zapewniania jakości wytwarzanego oprogramowania Instalacja narzędzi Maven oraz Gradle, także w środowisku IDE, uruchamianie projektów opartych o Maven/Gradle oraz główne cele (goals/tasks) dla Maven/Gradle Repozytoria lokalne i globalne (w tym repozytorium centralne) Identyfikator GAV artefaktów Składnia i struktura pliku pom.xml (Maven) oraz build.gradle oraz innych plików definiujących projekt (Gradle) Wprowadzenie do testowania jednostkowego Biblioteka JUnit (mechanika testów, podstawowe adnotacje, assercje, testy parametryczne) Tytuł kursu - Praca z repozytorium kodu: system Git (20 h) Wprowadzenie do systemów kontroli wersji (Source Code Management), główne cele i zadania Instalacja systemu Git na komputerach lokalnych i konfiguracja podstawowych ustawień lokalnych Zdalne repozytorium w wybranym systemie na przykładzie gitlab.com, klonowanie repozytorium Typowe zadania, podstawowe czynności podczas pracy z Git oraz dobre praktyki związane z zagadnieniami: o commit o push o branching o podstawy pracy grupowej o merging i rozwiązywanie konfliktów o rebase (podstawy) Praca z systemem Git w wybranym IDE, na przykładzie środowiska IntelliJ

3 WARSZTATY ZWIĄZANE Z METODAMI PRACY Tytuł kursu - Warsztaty - metodyki zwinne (16 h) Wprowadzenie do metodyk Agile. Wartości i zasady w Agile. Główne elementy Scruma: Sprint, Backlog, Produkt. Role w Scrumie: Scrum Master, Właściciel produktu (Product Owner) i Zespół. Spotkania w Scrumie: Planowanie Sprintu, Codzienny Scrum, Retrospektywa Sprintu i Przegląd Sprintu. Metody estymacji zadań w metodykach zwinnych: Historyjki użytkownika (User Story), Waga historyjki (Story Points) i Planing Poker. Programowanie ekstremalne: Testy jednostkowe (UnitTest), Programowanie sterowane testami (TDD), Programowanie w parach (Pair programming), Ciągła integracja (CI). Zapewnienie jakości w Scrumie. Tytuł kursu - Role w zespole programistycznym - efektywne metody pracy (8 h) Wprowadzenie do tematu podziału na role w zespole programistycznym. Korzyści płynące z przypisywania konkretnych ról w zespole programistycznym Podział ról w zespole programistycznym (sponsor, użytkownik, kierownik programu, analityk, projektant, programista, tester, konserwator itp.) Szczegółowa definicja każdej z ról w zespole, najważniejsze zadania i omówienie wybranych przykładów W jaki sposób dzielimy się funkcjami w zespole, oraz w jaki sposób organizowane są role. Struktury zespołu programistycznego (sieciowa, gwiaździsta) Tytuł kursu - Wzorce projektowe, narzędzia pracy grupowej (8 h) Wprowadzenie do tematu wzorców projektowych (definicja, aspekty techniczne, wzorce projektowe jako narzędzie pracy grupowej przykłady) Podział wzorców na trzy rodziny, według ich rodzaju (wzorce kreacyjne, wzorce strukturalne, wzorce czynnościowe) Wzorce kreacyjne o Definicja o Prosta fabryka (simple factory) o Metoda wytwórcza wprowadzenie i omówienie wybranego przykładu o Fabryka abstrakcyjna wprowadzenie i omówienie wybranego przykładu o Builder (budowniczy) o Singleton o Prototyp o Zastosowanie opisanych wzorców kreacyjnych w praktyce Wzorce strukturalne: o Definicja o Wzorzec Adapter o Dekorator wprowadzenie i omówienie wybranego przykładu o Wzorzec Fasada o Wzorzec Kompozyt o Wzorzec Most Bridge

4 o Wzorzec Pełnomocnik o Wzorzec Pyłek Flyweight o Zastosowanie opisanych wzorców strukturalnych w praktyce Wzorce czynnościowe o Łańcuch zobowiązań/odpowiedzialności wprowadzenie i omówienie wybranego przykładu o Wzorzec Polecenie - Command o Iterator zasada działania i omówienie wybranego przykładu o Wzorzec Mediator o Wzorzec Obserwator Observer o Wzorzec Stan State i metody implementacji o Wzorzec Strategia o Wzorzec Odwiedzający Visitor o Zastosowanie opisanych wzorców czynnościowych w praktyce. Podział wzorców według ich zakresów (klasowe, obiektowe) Klasyfikacja opisanych wzorców na klasowe lub obiektowe zadanie praktyczne dla uczestników Omówienie przykładów wzorców Zastosowanie wzorców w pracy Zakończenie szkolenia, podsumowanie Organizacja kształcenia Opis projektów grupowych (zawartość, umiejscowienie w ramach ścieżki) 1.Projekt grupowy Temat: Projekt i implementacja logiki aplikacji obsługi systemu sprzedaży biletów [do wyboru: parkingu, kin, lotów, pociągu...] Umiejscowienie na ścieżce (kurs): Programowanie w języku Java Cele: Zaprojektowanie, implementacja i testowanie aplikacji w języku Java wg zadanej specyfikacji szczegółowej, z wyraźnym podziałem ról i odpowiedzialności wśród członków zespołu. Słuchacze organizują sami (lub z pomocą trenera) podział odpowiedzialności (ról), wybierają wg własnego uznania narzędzia komunikacji i pracy grupowej, rozliczają się nawzajem z wykonanej pracy. Na tym etapie nauki mogą ujawnić się typowe problemy w pracy grupowej: nierzetelność i nieterminowość wykonywania zadań, braki wiedzy merytorycznej, problemy komunikacyjne. Trener rozstrzyga wszelkie wątpliwości i pomaga. Grupa: 3 osoby 2 Projekt grupowy Temat: Projekt i implementacja API (HTTP REST) aplikacji webowej aplikacji obsługi systemu sprzedaży biletów [do wyboru: parkingu, kin, lotów, pociągu, temat inny niż w projekcie 1.] Umiejscowienie na ścieżce (kurs): Aplikacje webowe w języku Java Cele: Zaprojektowanie, implementacja i testowanie API aplikacji webowej w oparciu o technologie backendowe w języku Java (np. Spring/Spring Boot), z wykorzystaniem relacyjnej bazy danych, wg zadanej specyfikacji szczegółowej, z wyraźnym podziałem ról i odpowiedzialności wśród członków zespołu. Słuchacze organizują sami podział odpowiedzialności (ról), korzystają z poznanego na kursie narzędzia komunikacji i pracy grupowej oraz systemu kontroli wersji a także rozliczają się nawzajem z wykonanej pracy. Na tym etapie nauki mogą ujawnić się problemy w

5 pracy grupowej związane z zakresem prac (dużo większy niż w projekcie grupowym 1.) lub doborem technologi czy konkretnego rozwiązania. Trener podpowiada rozwiązania ale nie ingeruje za bardzo w prace w zespole. Grupa: 3 osoby Metody komunikacji wideokonferencje chat z wykorzystaniem dedykowanego narzędzia powszechnie używanego w pracy programistów np. Slack asynchronicznie: praca z repozytoriami kodu, techniki typu Pull/Merge Request - trener ocenia kod gdy słuchacz zgłosi gotowość do oceny synchronicznie i asynchronicznie Code Review na zajęciach stacjonarnych, wideokonferencjach, konsultacjach indywidualnych forum na platformie edukacyjnej trener odpowiadający na maile użytkowników

Formuła blended learning Tytuł liczba godzin kursu Liczba stacjonarnych godzin KURSY PODSTAWOWE INFORMATYCZNE (min 30% godzin stacjonarnych) Podstawy protokołu HTTP i architektura współczesnych aplikacji webowych Liczba godzin moderowan ych / proponowa na forma zajęć moderowan ych Tytuł kursu/ liczba godzin i zestawienie (linki) do materiałów edukacyjnych (kursów) wraz z krótkim opisem treści 20 12 0 Kurs Podstawy protokołu HTTP i architektury aplikacji webowych 20 h SUMA godzin (stacjonarnych/moderowany ch/kursów zdalnych) 32= 12 + 20 h przy wykorzystaniu platformy Bazy danych relacyjne i nierelacyjne. Język SQL 20 12 0 Kurs: Podstawy relacyjnych baz danych i języka SQL 20 h 32= 12 + 20 h przy wykorzystaniu platformy JĘZYKI PROGRAMOWANIA KURSY SPECJALISTYCZNE (min 30% godzin stacjonarnych) Programowanie w języku Java 100 40 0 Kurs: Programowanie w języku Java - podstawy 60 h Aplikacje webowe w języku Java 80 40 0 Kurs Technologie Java Backend 40 h 100 = 40 + 60h przy wykorzystaniu platformy 80= 40+ 40 h z wykorzystaniem platformy

1 NARZĘDZIA I BIBLIOTEKI PROGRAMISTYCZNE (min 30% godzin stacjonarnych) Język Java wybrane biblioteki i 30 12 Kurs: Narzędzia wytwarzania narzędzia oprogramowania w języku Java 18 h 30=12+18 przy wykorzystaniu platformy Praca z repozytorium kodu: system Git 20 8 Kurs: System kontroli wersji - Git) 12 h KURSY ZWIĄZANE Z METODAMI PRACY (min 50% godzin stacjonarnych) Warsztaty - metodyki zwinne 16 8 Kurs: Wprowadzenie do metodyk Agile. 8 h 20 = 8 +12 przy wykorzystaniu platformy 16=8+8 przy wykorzystaniu platformy Role w zespole programistycznym - efektywne metody pracy Wzorce projektowe, narzędzia pracy grupowej 8 4 Kurs: Wprowadzenie do tematu podziału na role w zespole programistycznym. 4 h 8 4 Kurs Wprowadzenie do tematu wzorców projektowych 4 h 8=4+4 h przy wykorzystaniu platformy 8=4+4 h przy wykorzystaniu platformy KURSY Z KOMPETENCJI KLUCZOWYCH (100% godzin stacjonarnych) Umiejętność rozwiązywania problemów 16 16 16 Umiejętność prezentacji 16 16 16

2 Kompetencje komunikacyjne 16 16 16 Kompetencje organizacyjne - wyznaczanie priorytetów itp. 16 16 16 Formuła zdalna moderowana Tytuł liczba godzin kursu (minimalna) Liczba stacjonarnych godzin KURSY PODSTAWOWE INFORMATYCZNE (min 30% godzin moderowanych) Podstawy protokołu HTTP i architektura współczesnych aplikacji webowych Liczba godzin moderowanych / proponowana forma zajęć moderowanych 20 12 h wideokonferencje chat z wykorzystaniem Slack asynchronicznie: praca z repozytoriami kodu, techniki typu Pull/Merge Request - trener ocenia kod gdy słuchacz zgłosi gotowość do oceny synchronicznie i asynchronicznie Code Review na zajęciach stacjonarnych, wideokonferencjac h, konsultacjach Tytuł kursu na platformie edukacyjnej/ liczba godzin Kurs Podstawy protokołu HTTP i architektury aplikacji webowych 20 h SUMA godzin (stacjonarnych/mod erowanych/kursów zdalnych) 32 = 12 +20 h

3 indywidualnych Bazy danych relacyjne i nierelacyjne. Język SQL 20 12 h j.w. kurs: Podstawy relacyjnych baz danych i języka SQL) 20 h 32 = 12 +20 h JĘZYKI PROGRAMOWANIA KURSY SPECJALISTYCZNE (min 30% godzin moderowanych) Programowanie w języku Java 100 40 h j.w. Aplikacje webowe w języku Java 80 40 h j.w. NARZĘDZIA I BIBLIOTEKI PROGRAMISTYCZNE (min 30% godzin moderowanych) Kurs - Programowanie w języku Java 60 h Kurs: Technologie Java Backend wykorzystaniem frameworka Spring/Spring Boot. 40 h 100 = 40 +60 h 80 = 40 +40 h Język Java wybrane biblioteki i narzędzia 32 12 h j.w. Kurs: Narzędzia wytwarzania oprogramowania w języku Java 20 h 32= 12+20 h Praca z repozytorium kodu: system Git 20 8 h j.w. Kurs System kontroli wersji - Git 12 h 20 = 8 + 12 h

4 KURSY ZWIĄZANE Z METODAMI PRACY (min 50% godzin moderowanych) Warsztaty - metodyki zwinne 16 8 h j.w. Kurs: Wprowadzenie do metodyk Agile. 8 h 16= 8+8 h Role w zespole programistycznym - efektywne metody pracy 8 4 h j.w. Kurs Wprowadzenie do tematu podziału na role w zespole programistycznym. 4 h 8 = 4+4 h Wzorce projektowe, narzędzia pracy grupowej 8 4 h j.w. Kurs Wprowadzenie do tematu wzorców projektowych 8 = 4+4 h KURSY Z KOMPETENCJI KLUCZOWYCH (100% godzin stacjonarnych) Umiejętność rozwiązywania problemów 16 16 16 h Umiejętność prezentacji 16 16 16 h Kompetencje komunikacyjne 16 16 16 h Kompetencje organizacyjne - wyznaczanie priorytetów itp. 16 16 16 h