od CiTrus » 20. 6. 2018 01:39
Klasický formát. Ráno v 9 sraz na chodbě, každý dostal 5 otázek vybraných na místě zkoušejícími z okruhů. Ke každé otázce příslušný zkoušející většinou vypíchnul pár věcí, které by chtěl slyšet podrobněji, a pak také zmínil čas, kdy se vrátí a projde s námi odpovědi (měli rozvrh na studenty). První zkoušení začínalo v 9:45, pak se pokračovalo rovnoměrně ve 45min intervalech (30min příprava + 15min zkoušení) až do 13, kdy měly být kolektivně ohlášeny výsledky. Rozvrh ale byl spíše orientační - kdo byl připraven, mohl zamávat a byl vyzkoušen dříve. Po posledním zkoušení šlo odejít na oběd bez omezení.
Samotné zkoušení probíhalo hodně závisle na zkoušejícím. Někteří si nejprve přečetli papír, který jsem v průběhu přípravy popsal, a pak se doptávali; jiní dávali přednost tomu, abych povídal hned od začátku a papír používal spíše jako osnovu v případě výpadku. Výsledkem každého zkoušení byla známka 1-4, kterou si zkoušející zaznamenal do privátní tabulky. Tyto známky ovšem zřejmě byly pouze informativní, protože oficiálním výsledkem zkoušky byla právě jedna známka, která byla vytvořena na základě neznámého klíče (spekulace: zřejmě průměr zmíněných 5 známek). Kromě tabulky možná roli hrály i informace o studiu - každý student měl v deskách, do nichž komise zapisovala zadané otázky, vytisknutý výpis předmětů ze SISu, průměr, příznak zda už má obhájenou diplomku, a příznak zda má šanci získat vyznamenání. Lze spekulovat, že tyto informace mohly sloužit jako heuristiky při volbě otázek a rozbíjení případných remíz mezi známkami.
Zadání společné části (informatika):
Základy složitosti a vyčíslitelnosti (MJ)
- popsat základní třídy složitosti a vztahy mezi nimi
- z vět jsem si (kromě triviálních inkluzí) vzpomněl na Saviče, deterministickou časovou/prostorovou hierarchii a otevřenost shora v obou případech (u většiny jsem důkazy znal, nebyl ale prostor o nich povídat)
- celkově velice příjemné zkoušení
Datové struktury (?)
- líné a zbrklé binomiální haldy
- jejich definice
- k čemu se používají
- operace a jejich worst case a amortizovaná složitost
- ukázat příklad na nějaké malé posloupnosti operací
Zadání oborové části (softwarové systémy, zaměření systémové programování):
Systémové aspekty počítačů (Bulej)
- synchronizace (obecné povídání, proč, kdy, jak)
- naimplementovat v pseudokódu spin lock
- naimplementovat v pseudokódu producer-consumer
- řeč byla i o bariérách, condition variables a cache ping pongu
Paralelní a distribuované systémy (Zavoral)
- RPC (popsat obecně)
- uvést co možná nejvíce příkladů konkrétních technologií a porovnat je
- vzpomněl jsem si na ORB, RMI, EJB, .NET remoting, web services a zmínil jsem i OpenMPI - to stačilo
Moderní koncepty programování (Hnětynka)
- generika v objektově orientovaných jazycích
- porovnat generiku v C# / C++ / Javě
- byl jsem tázán, zda umím Scalu nebo Kotlin - když jsem řekl, že jsem to viděl, ale jen jsem si s tím hrál, nebylo to vnímáno jako špatná odpověď
- povídání o kovarianci, kontravarianci (důležité bylo vzpomenout si na to, co je přesně co)
- velká část zkoušení byla o generice v Javě (omezující podmínky, otazníček a jeho chování)
Celkově mám pocit, že jsem zkoušením prošel dost rychle. Končil jsem asi jako druhý nebo třetí v pořadí. Když jsem odcházel, bylo zkoušeno asi ještě 5 lidí - z tohoto počtu tam 1 stále byl grilován i o hodinu později, když jsem se vrátil z oběda na vyhlášení výsledků. Známky nám byly oznámeny a přímo zapsány do SISu předsedou komise.
Přeji hodně štěstím následujícím generacím!
Klasický formát. Ráno v 9 sraz na chodbě, každý dostal 5 otázek vybraných na místě zkoušejícími z okruhů. Ke každé otázce příslušný zkoušející většinou vypíchnul pár věcí, které by chtěl slyšet podrobněji, a pak také zmínil čas, kdy se vrátí a projde s námi odpovědi (měli rozvrh na studenty). První zkoušení začínalo v 9:45, pak se pokračovalo rovnoměrně ve 45min intervalech (30min příprava + 15min zkoušení) až do 13, kdy měly být kolektivně ohlášeny výsledky. Rozvrh ale byl spíše orientační - kdo byl připraven, mohl zamávat a byl vyzkoušen dříve. Po posledním zkoušení šlo odejít na oběd bez omezení.
Samotné zkoušení probíhalo hodně závisle na zkoušejícím. Někteří si nejprve přečetli papír, který jsem v průběhu přípravy popsal, a pak se doptávali; jiní dávali přednost tomu, abych povídal hned od začátku a papír používal spíše jako osnovu v případě výpadku. Výsledkem každého zkoušení byla známka 1-4, kterou si zkoušející zaznamenal do privátní tabulky. Tyto známky ovšem zřejmě byly pouze informativní, protože oficiálním výsledkem zkoušky byla právě jedna známka, která byla vytvořena na základě neznámého klíče (spekulace: zřejmě průměr zmíněných 5 známek). Kromě tabulky možná roli hrály i informace o studiu - každý student měl v deskách, do nichž komise zapisovala zadané otázky, vytisknutý výpis předmětů ze SISu, průměr, příznak zda už má obhájenou diplomku, a příznak zda má šanci získat vyznamenání. Lze spekulovat, že tyto informace mohly sloužit jako heuristiky při volbě otázek a rozbíjení případných remíz mezi známkami.
[line][/line]
[b]Zadání společné části (informatika):[/b]
Základy složitosti a vyčíslitelnosti (MJ)
[list][*]popsat základní třídy složitosti a vztahy mezi nimi[*]z vět jsem si (kromě triviálních inkluzí) vzpomněl na Saviče, deterministickou časovou/prostorovou hierarchii a otevřenost shora v obou případech (u většiny jsem důkazy znal, nebyl ale prostor o nich povídat)[*] celkově velice příjemné zkoušení[/list]
Datové struktury (?)
[list][*]líné a zbrklé binomiální haldy[*]jejich definice[*]k čemu se používají[*]operace a jejich worst case a amortizovaná složitost[*]ukázat příklad na nějaké malé posloupnosti operací[/list]
[line][/line]
[b]Zadání oborové části (softwarové systémy, zaměření systémové programování):[/b]
Systémové aspekty počítačů (Bulej)
[list][*]synchronizace (obecné povídání, proč, kdy, jak)[*]naimplementovat v pseudokódu spin lock[*]naimplementovat v pseudokódu producer-consumer [*]řeč byla i o bariérách, condition variables a cache ping pongu[/list]
Paralelní a distribuované systémy (Zavoral)
[list][*]RPC (popsat obecně) [*]uvést co možná nejvíce příkladů konkrétních technologií a porovnat je[*]vzpomněl jsem si na ORB, RMI, EJB, .NET remoting, web services a zmínil jsem i OpenMPI - to stačilo[/list]
Moderní koncepty programování (Hnětynka)
[list][*]generika v objektově orientovaných jazycích[*] porovnat generiku v C# / C++ / Javě[*] byl jsem tázán, zda umím Scalu nebo Kotlin - když jsem řekl, že jsem to viděl, ale jen jsem si s tím hrál, nebylo to vnímáno jako špatná odpověď [*] povídání o kovarianci, kontravarianci (důležité bylo vzpomenout si na to, co je přesně co) [*] velká část zkoušení byla o generice v Javě (omezující podmínky, otazníček a jeho chování)[/list]
Celkově mám pocit, že jsem zkoušením prošel dost rychle. Končil jsem asi jako druhý nebo třetí v pořadí. Když jsem odcházel, bylo zkoušeno asi ještě 5 lidí - z tohoto počtu tam 1 stále byl grilován i o hodinu později, když jsem se vrátil z oběda na vyhlášení výsledků. Známky nám byly oznámeny a přímo zapsány do SISu předsedou komise.
Přeji hodně štěstím následujícím generacím!