Golang
Ai păstrat toate mesajele din Kafka într-un tabel separat? Care a fost sensul, oare Kafka nu era suficient?
Ce înseamnă dacă evaluarea EXPLAIN diferă radical de EXPLAIN ANALYZE?
Ce vei face dacă vei vedea că o echipă vecină a ales o soluție neoptimală?
Vorbește despre un instrument sau o idee nouă pe care ai implementat-o și care a îmbunătățit rezultatele echipei.
Ce primitive de sincronizare cunoașteți?
Avem 10 mesaje în canal. Îl închidem și începem să citim — ce se va întâmpla în acest caz?
Ce semne de alarm într-o companie ar fi pentru tine factori de oprire?
Ce ai folosit pentru sincronizare în multitreading?
Vorbește despre cea mai dificilă sau interesantă sarcină din StormTrade. Care a fost responsabilitatea domeniului nucleului de tranzacționare?
Care sunt caracteristicile RabbitMQ?
Ce sunt operațiile atomice (atomic) în Go?
Ai participat la rescrierea unui monolit într-o arhitectură de microservicii?
Ce sunt jocurile rapide?
Puteți să-mi vorbiți despre problema cu căutarea în aplicație — ați separat căutarea într-un component separat cu Elasticsearch?
Ce se întâmplă dacă pornești o goroutine și în ea apelezi panic? Goroutine-ul se va opri sau se va opri întreaga aplicație?
Unde să te uiți pentru a înțelege de ce interogarea rulează lent după ce ai apelat EXPLAIN ANALYZE?
Ce este OpenTelemetry (OTel), la ce folosește și cum arată?
De ce a fost făcută apelarea la backend.Invoke în afara mutex-ului?
Povestiți-mi despre echipă: 4 dezvoltatori Go, testeri, analiști, ingineri, lider de echipă?
Pentru executarea corectă a codului: punctul de intrare -- funcția main din pachetul main package main import ( "crypto/md5" "fmt" ) var alphabet = []rune{'a', 'b', 'c', 'd', '1', '2', '3'} func RecoverPassword(h []byte) string { return "" } func hashPassword(in string) []byte { h := md5.Sum([]byte(in)) return h[:] } func main() { tests := []string{"a", "12", "abc333d"} ok := true for _, exp := range tests { h := hashPassword(exp) act := RecoverPassword(h) if act != exp { fmt.Printf("Eroare: așteptat %q, primit %q\n", exp, act) ok = false } } if ok { fmt.Println("Toate testele au trecut cu succes") } }