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
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