Golang
Mesélj az izolációs szintekről tranzakciókban. Hány van belőlük, és melyik az alapértelmezett a PostgreSQL-ben?
Milyen feladatokat szeretsz? Mit keresel magadnak?
Van tapasztalata monolitból mikroservizekre való átállásban?
Milyen dokumentumokat tároltak az ELK-ben?
Mit tudsz a Kafka szállítási garanciáiról?
Mesélj a fejlesztésben szerzett tapasztalataidról és az utadról — honnan indultál, és hogyan jutottál el a Go-hoz?
Melyik üzleti részegért felelt a csapatod? Miért volt felelős?
Milyen típusú közbenső folyamatok közötti kommunikáció (IPC) létezik?
Hogyan működik egy hash-tábla (térkép) Go-ban? Mi az a ütközés és hogyan kezelik? Zárt vs nyitott címzés, láncolás.
Milyen típusú indexek vannak az adatbázisokban, és mire szolgálnak?
Miért fontolgat új ajánlatokat, és miért hagyta el a korábbi cégét?
// TODO backends []*BackendImpl index int mu sync.Mutex func (b *Balancer) Invoke(ctx context.Context, req Request) (Response, error) { b.mu.Lock() index := b.index if b.index + 1 == len(b.backends) { b.index = 0 index = 0 } b.mu.Unlock() resp, err := b.backends[index].Invoke(ctx, req) b.mu.Lock() defer b.mu.Unlock() b.index += 1 return resp, err } // addr tartalmazza egy adott példány ip:port címét func NewBackend(addr string) *BackendImpl // addrs tartalmazza az összes kiegyensúlyozott példány címét func NewBalancer(addrs []string) *Balancer { // TODO backends := make([]*BackendImpl, len(addrs)) for _, addr := range addrs { backends = append(backends, NewBackend(addr)) } return &Balancer{ backends: backends, } }
Milyen problémák merülnek fel a konkurens hozzáférés során, amikor a Get és Set metódusokat különböző gorutinokból hívják? Hogyan oldják meg ezeket?
Az önéletrajzban említik, hogy bevezetted a tracinget — tudnál róla többet mondani?
Tudja, mi az az OSI modell? Hány rétege van? Tudna róluk mesélni? Milyen tapasztalatai vannak go és C/S területen? kulcs: suricata, dpi, pcap, wireshark, zeek Mely címek tekinthetők helyi és privát címeknek? Adjon példákat helyi címekre.
Hogyan van megvalósítva a Mutex a motorháztető alatt? Mi az a SpinLock és hogyan működik?
Miért nem garantálják a Go fejlesztők a térkép bejárási sorrendjét a range során?
Hogyan lehet SQL szinten megérteni, hogy már létezik ilyen idempotencia kulcs? Hogyan használjuk az ON CONFLICT-ot?
Hogyan skáláztad a fogyasztókat Kafka-ban? Mi történik, ha több fogyasztó van, mint partíció?
Meséljen a jelenlegi projektjéről — mivel foglalkozik?