Skúškové otázky

Skúškové otázky sú rozdelené do dvoch skupín podľa rozsahu na rozsiahlejšie a menejrozsiahle témy. Na začiatku skúšky si vyberiete jednu rozsiahlejšiu a jednu menej rozsiahlu tému. Okrem toho, si v rámci skúšky prejdeme vaše domáce úlohy. Skúška bude trvať približne hodinu. na túto časť skúšky si vyberte jeden z code reviewov, čo ste robili a pochváľte sa, ako ste pomohli zlepšiť výsledný kód.
Časové rozloženie skúšky je nasledovné: 25 minút príprava, 15 minút feedback k DÚ, 10+5 minút veľká a malá otázka. Na skúšku prídite s notebookom (ak s tým máte problém dajte mi vedieť v prihlasovacom exceli). V prípade nejasnosti ohľadom známky vám môžem dať opraviť niejaký problem v niektorej z domácich úloh.
Aby ste na skúške zbytočne nečakali, postup prihlasovania bude nasledovný. Zapíšte sa na jeden z voľných termínov do tabuľky a následne sa prihláste na skúšku v AISe. Po prvej skúšte v utorok si vyhradzujem právo na miernu zmenu rozpisu skúšky. Posun oproti zapísanému stavu bude menej ako pol hodina. Zmenu času vám oznámim majlom.

Veľké témy:
  1. Metódiky vývoja softweru (vodopádový model; I-I vyvoj; SCRUM - porovnanie)
  2. Agilné metodiky vývoja softvéru (agile; SCRUM; lean; lean startup; technický aspekt)
  3. Požiadavky (tvorba špecifikácie, spôsoby zachytenia požiadaviek; typy požiadaviek; use case; scenario; user story; traceabilita; change management)
  4. Popís SW systému (statický a dinamický aspekt; najbežnejšie UML diagramy)
  5. Princípy OO dizajnu, refaktorizácie (SOLID; Design patterny; refaktorizácia)
  6. Konkurentnosť a paralelnosť (best practices; imutable data structures; concurency paterny; blocking queue; asynchrónne volanie funkcií; synchronizácia)
  7. Testovanie a kvalita softvéru (typy testov; testovateľný kód; dependency injection; test driven development; techniky na zabezpečenie kvality softvéru; continuous integration)
  8. Project management (aktivity softvéroveho managementu; metódy tvorby estimacií, problémy; management rizík; znižovanie neistotyô organizácia SW spoločnosti)
Malé témy:
  1. Management konfiguracií
  2. Logovanie v Pythone
  3. Coding conventions
  4. Dokumentácia a údržba
  5. OO vs funkcionálne programovanie vs deklaratívne programovanie
  6. Microservices
  7. Vlastnosti a typy databáz
  8. Práca s časovými údajmi