1. Adresování a správa paměti - Garbage collecting, Reference-ukazatele, Struktura paměti programu

2. Algoritmizace - Grafy, Prohlédávání stavového prostoru, Řazení

3. Algoritmizace - Rekurze, Brute Force, Heuristiky, Nedeterministické algoritmy

4. Anonymní metody (Lambda), speciální (magické) metody, statické metody, ukazatel na metodu (delegát)

5. Architectural design patterns - MVC, Multitier, Monolithic, P2P, Client-Server

6. Asymptotické paměťové a časové složitosti

7. Datové typy, Generika, Výčtové datové typy, Struktury, Anotace, Operátory

8. Dědičnost, method overriding, function overloading

9. Integrita dat, bezpečnost, logování, kontrola vstupů, zpracování chyb

10. Komunikace s databázovým systémem - Připojení, Ukládání a načítání dat, Mapování entit v OOP

11. Komunikace v síti - tvorba síťových aplikací, Berkley socket a jeho rozhraní

12. Metodiky a životní cyklus vývoje softwaru

13. Návrhové vzory - creational design patterns, structural design patterns, behavioral patterns

14. Principy objektového programování, agregace a kompozice objektů

15. Programovací jazyky - vlastnosti, srovnání, popis způsobu tvorby i běhu programů

16. Soubory a serializace - Ukládání a načítání dat, formáty souborů

17. Strojové učení - Příprava dat, Chyby v datech a bias, Korelace a kauzalita

18. Strojové učení s využitím regrese a klasifikace

19. Strojové učení s využitím umělých neuronových sítí

20. Testování, Unit testování a dokumentace zdrojového kódu

21. Typy datových struktur - Pole, Spojový seznam, Strom, Fronta, Zásobník, Halda

22. Vlákna, Paralerní programování, Asynchronní metody, Concurrent design patterns

23. Vlastnosti datových struktur - Seřazenost a opakování prvků, Indexace, hashování a klíče prvků

24. Výjimky a aserce, debugování a zpracování chyb

25. Zpracování a parsování textových dat, regulární výrazy, kódování a stringy