Golang
// numere de la 1 la 10 func main() { done := make(chan struct{}, max_n) for i := 1; i <= max_n; i += batchSize { end := i + batchSize if end > max_n { end = max_n } for j := i; j < end; j++ { go func(n int) { defer func() { done <- struct{}{} }() exit(1) printNumber(n) }(j) } for j := i; j < end; j++ { <-done } } } func printNumber(n int) { time.Sleep(time.Second) fmt.Println(n) }
Ce este o interfață goală (interface{}) și cum se diferențiază de any?
Cum deosebești dezvoltatorii Junior, Middle și Senior? Pe ce criterii te consideri Senior?
Cum a fost realizat deployment-ul în [companie]?
Când sunteți gata să începeți să lucrați?
Spune-mi mai multe despre tine (ce să-i spui intervievatorului)
Scrieți o interogare SQL care să returneze numărul de comenzi pentru fiecare utilizator cu un total_price mai mare sau egal cu 1000, sortate după numărul de comenzi în ordine descrescătoare: +---------+--------------+ | user_id | order_count | +---------+--------------+ | 111 | 2 | | 222 | 1 | | 333 | 1 | +---------+--------------+
Și logarea centralizată — ce s-a făcut?
Ce teste consideri cele mai eficiente?
Ce înseamnă când procesul din top arată 150% CPU? Este normal?
Există un fișier mare cu un milion de URL-uri, cum le poți descărca rapid fără a supraîncărca sistemul și fără a fi blocat de serverul extern? Cum organizezi codul?
Cum îți evaluezi nivelul?
Din perspectiva ta, de ce să folosești containere dacă există deja virtualizare?
Ce este implicarea utilizatorilor și cum s-a determinat că a crescut cu 20-30% datorită sistemului dvs. de targetare?
Ce nivel de salariu luați în considerare la schimbare?
Vorbește despre nivelurile de izolare ale tranzacțiilor.
Ce anume, din contră, te motivează în muncă? De la ce sarcini obții cea mai mare plăcere?
Cum se rezolvă coliziunile în map în Go (până la versiunea 1.24)? Vorbește despre bucket-uri și overflow-bucket-uri.
Ce este arhitectura microserviciilor și care sunt avantajele și dezavantajele în comparație cu un monolit?
La folosesc principiile SOLID pentru ce?