Golang
Existují nějaké potíže s tím, že používáme externí úložiště? A může být například, že máme několik instancí jedné aplikace. Co se v takovém případě může stát?
Začněme psát strukturu — co budeme v této struktuře potřebovat?
Jaké klíče mohou mít mapy v Go?
Co je to graceful shutdown?
Jak vypadá distribuce vaší práce — co předáváte kolegům po napsání kódu?
Jak funguje plánovač Go? Vysvětli hlavní body.
Co je to transakce v databázi?
Preference ohledně formátu práce (dálková/práce v kanceláři/hybridní)?
Obecná otázka: připravenost na pohovor a zdroje otázek
S jakými databázemi jste pracoval? Jaké druhy databází znáte? Proč se relační databáze nazývají relační?
Čím se liší EXPLAIN od EXPLAIN ANALYZE?
Existuje možnost vypnout nebo spravovat garbage collector v Go?
Dáváte přednost práci na své technice nebo potřebujete techniku od zaměstnavatele?
Jaké typy kanálů jsou v Go? Povídej o bufferovaných a nebufferovaných kanálech.
Ohodnoťte své znalosti technologií: Go, PostgreSQL, Docker, Kubernetes, Kafka, RabbitMQ, GORM.
Jaké metody optimalizace dotazů do databází jste použili? Co jste sledovali v EXPLAIN ANALYZE a v plánu dotazu?
Na co je kanál v nepřerušované přenosu, pokud data jdou ze zásobníku do zásobníku? Jakou roli plní kanál?
Jak funguje složený index (A, B, C) v dotazech?
Jak je organizován kanál pod kapotou v Go?
Jednoduchý úkol na live coding (základní konkurenceschopnost) Podmínka: Napište funkci fetchAll(urls []string) map[string]string, která pro každý URL provádí konkurenčně HTTP GET požadavek a vrací mapu, kde klíčem je URL a hodnotou je tělo odpovědi (řetězec). Pokud požadavek selže (chyba, není 200), bude hodnotou prázdný řetězec. Omezení: - Není možné používat externí knihovny (pouze standardní). - Není možné měnit podpis. - Program nesmí spadnout při panice v http.Get. Příklad vstupu: ["[link]" "[link]" "[link]"]