Šta je niz u Go? Kakva je njegova struktura i osobine?
Golang
Ispričajte o novoj implementaciji mape u Go (Swiss Tables). Koje metode rešavanja kolizija postoje?
// Треба izmijeniti funkciju ap tako da 6 bude uključeno u ispisani slice i da bude sortirano // Važno - funkcija ap ne vraća ništa package main import ( "fmt" ) func main() { v := []int{3, 4, 1, 2, 5} ap(v) fmt.Println(v) // očekivani rezultat je - [3 4 1 2 5 6] } func ap(arr []int) { arr = append(arr, 10) arr[5] = 6 }
Šta je gorutina? U čemu je njena lakoća?
Koje metode optimizacije upita ka bazama podataka ste koristili? Šta ste gledali u EXPLAIN ANALYZE i plan upita?
Koje tipove podataka u Go mogu po defaultu da prihvate vrednost nil?
Šta je prebacivanje konteksta gorutina? Ko to obavlja?
Opšte pitanje: spremnost za intervju i izvori pitanja
Kako smanjiti učestalost poziva garbage collectora? Koje metode optimizacije poznajete?
Zašto je kanal potreban u nebuferizovanom prenosu, ako podaci idu iz steka u stek? Koju ulogu ima kanal?
Šta se dešava kada se zatvori neinicializovan kanal?
Koja je prednost Swiss Tables u poređenju sa starom implementacijom hash tabele? Koliko bita zauzima hash kod u staroj i novoj implementaciji?
Koju vrstu multitaskinga koristi planer Go? Koje dve vrste multitaskinga postoje?
Kako radi mutex u bufferiranom kanalu? Šta štiti?
Šta je escape analiza? Kako određuje gde će biti smeštena promenljiva (stog ili hrpa)?
Kako se vrši prenos podataka putem nebuferisanog kanala? Ima li on bafer?
Odakle dolazi memorija za promenljive? Šta je alokator memorije?
Šta blokira mutex u kanalu - gorutina ili oblast memorije?
Koje zadatke ste obavljali s Kafka? Kako ste konfigurisali garancije isporuke (exactly-once)?
Реците о вашем радном искуству и технолошком стеку