Golang
Jak předem odhadnout účinnost a užitečnost indexu před jeho přidáním do produkce?
Jak rozlišuješ juniory, middlery a seniory vývojáře? Podle jakých kritérií se považuješ za seniora?
Živý kód: úkol na goroutines — konkurenční přístup ke sdíleným datům, race condition, řešení přes mutex. Rozdíl mezi sync.Mutex a sync.RWMutex.
Kezdenéd a munkát, ha egy olyan projektre érkeznél, ahol évek óta íródott kód van, sok legacy, nincs teszt?
Co se stane, když vypnete autovacuum v PostgreSQL? Jaké problémy to může způsobit?
Podmínka Existují 3 entity - uživatel, chat, zpráva • Uživatel má jméno a datum registrace • Chat má název a datum vytvoření • Zpráva má text, autora a datum vytvoření • Uživatel může být současně v několika chatech • Zpráva nutně patří do chatu a nemůže patřit více než do jednoho současně • Obor je třeba popsat ve formě tabulek
Jak budeme vracet celou objednávku a částečně (návrh API)?
Kde jsou v Go umístěny proměnné — na zásobníku nebo na haldě? Co je to escape analýza?
typ Response rozhraní {} typ Backend rozhraní { Invoke(ctx context.Context, req Request) (Response, error) } var _ Backend = &BackendImpl{} // addr obsahuje ip:port konkrétní instance func NewBackend(addr string) *BackendImpl typ Balancer struktura { // TODO backends []*BackendImpl index int mu sync.Mutex } var _ Backend = &Balancer{} func (b *Balancer) Invoke(ctx context.Context, req Request) (Response, error) { pokud len(b.backends) == 0 { return nil, fmt.Errorf("Počet backends v poli je 0") } b.mu.Lock() index := b.index pokud b.index + 1 == len(b.backends) { b.index = 0 index = 0 } b.mu.Unlock() resp, err := b.backends[index].Invoke(ctx, req) return resp, err } // addrs obsahuje adresy všech vyvážených instancí func NewBalancer(addrs []string) *Balancer { // TODO backends := make([]*BackendImpl, len(addrs))
S jakými nástroji a databázemi jste pracoval?
Máte zkušenosti s Dockerem a Kubernetes? Na jaké úrovni?
Jaké úkoly máš radši a jaké méně?
Co je to semafor?
S jakými databázemi jste pracoval?
Co jsou kolize v mapě?
Co se děje fyzicky s odstraněnými záznamy v PostgreSQL? Kdy jsou odstraněny?
func FetchAll(ctx context.Context, urls []string, concurrency int) ([]Result, error) { // Tvůj kód zde return nil, nil }
Lze vzít ukazatel na prvek mapy?
Zobrazte jedinečné kombinace uživatele a ID produktu pro všechny nákupy provedené uživateli před jejich zablokováním. Nejprve podle jména uživatele, poté podle SKU Najděte uživatele, kteří provedli nákupy v hodnotě přes 5000 rublů. Zobrazte jejich jména ve formátu id uživatele | jméno | příjmení | součet nákupů
Jak funguje dědičnost kontextů v Go?