Z seniora architektem

→ Detail kurzu

Kdy:

7. 10. 2020 - 25. 11. 2020
7 lekcí po 2,5 hodinách + 4 hod. workshop, každé pondělí 18:00-20:30

Kde:

EDUnesto, Veselá 14, Brno

Cena:

10 000 Kč

Anotace:

Technicky nezávislý kurz zaměřený na design a architekturu softwaru. Kurz je navržený tak, aby vám pomohl se v karierním žebříčku posunout na vedoucí technickou pozici. Během kurzu projdeme základní znalosti, které by měl software architekt nebo technical lead mít. Zamyslíme se i nad známými principy a pokusíme se na ně podívat z jiného úhlu než je běžně prezentované. Výklad bude doplněn příklady z praxe. Kurz je zakončen workshopem během něhož účastníci navrhnout zadaný systém a svůj design odprezentují.


Předpoklady:

Znalost objektově orientovaného programování. Znalost relačních nebo nereleačních databází.

Obsah kurzu

1. lekce

Základy softwarové architektury

  • Funkční a nefunkční požadavky
  • Co je to architektura softwaru?
  • Úkol a role architekta
  • Postupy pro návrh architektury
  • Architektonické artefakty
  • Jak by měl vypadat architektonický dokument?
  • Základní architektonické vzory
  • Symptomy špatného designu
  • Vlastnosti dobré architektury

2. lekce

Objektový a komponentový návrh

  • SOLID do hloubky
  • Pokročilá OOP témata
  • Úskalí OOP
  • Pravidla pro tvorbu komponent
  • Znovupoužitelnst kódu
  • Praktické příklady

3. lekce

Architektura klasických aplikací

  • Pravidla pro tvorbu komponent
  • Vícevrstvé architektury
  • Database-centric architektura
  • Domain-centric architektura
  • Domain driven design
  • Pluginovatelné aplikace
  • Vzory pro UI
  • Evolutionary architecture

4. lekce

Architektury orientované na události

  • Události v OOP
  • Vzory architektur využívajících události
  • Event sourcing, CQRS, ...
  • DDD využívající event sourcing
  • Parallel model
  • Stream processing

5. lekce

SOA a Microservices

  • Service-oriented architecture
  • SOAP, REST, RPC, GraphQL
  • Microservices
  • Výhody a nevýhody microservices
  • Ukázka tvorby jednoduchých microservices v cloudu
  • Zabezpečení
  • Transakce
  • Serverless

6. lekce

Databáze a fronty

  • Relační databáze
  • Relační paradigma vs OOP
  • Vzory pro práci s databází z kódu
  • NoSQL databáze
  • Grafové databáze
  • Replikace a zálohování
  • Příklady modelování schématu

7. lekce

Zabezpečení aplikací a systémů

  • Útoky na klasické aplikace
  • Útoky na webové systémy
  • Security principy
  • Způsoby autentizace
  • Zabezpečení pomocí certifikátů
  • Bezpečné ukládání citlivých údajů
  • Zabezpečení rozsáhlých systémů

Workshop

Návrh systému

Čtyřhodinový workshop během něhož účastníci budou mít za úkol navrhnout a prezentovat zadaný systém.

(Nepovinné)

Karierní poradenství a příprava na pohovor

  • Karierní poradenství
  • Pohovor na zkoušku
  • Revize životopisu a linkedin profilu

Pro koho je kurz určen?

Kurz je vhodný pro každého, kdo  má zájem o návrh softwaru a moderní trendy. Mezi potenciální uchazeče mohou patřit např. talentovaní vývojáři, kteří se chtějí posunout v karierním žebříčku nebo architekti a vedoucí, kteří chtějí nakouknout za hranice svého produktu.


Co je zahrnuto v ceně?

  • Výuka od zkušených lektorů
  • Přístup do elearningového systému s výukovými materiály, testy apod.
  • Online konzultace během práce na úkolech
  • Zapůjčení odborné literatury na dané téma
  • Příprava na pohovor
  • Voda a káva během lekcí
  • Certifikát o absolvování kurzu

Lektoři:

Zdeněk Vais

Zdeněk Vais

Engineering Lead, společnost Deltatre

Zdeněk programuje už od střední školy. Od té doby si prošel cestou od programátora přes team leadera až k architektovi. Za tuto dobu vyvíjel velké finanční systémy, věděcké aplikace nebo například IoT řešení pro letadla.


Marian Kałuża

Marian Kałuża

Team Leader, společnost Oracle

Marian je zkušený vývojář a team leader. Za svoji kariéru pracoval především na velkých enterprise systémech a distribuovaných aplikacích. V současnosti pracuje jako Team leader ve společnosti Oracle.