Sobes.tech

Golang

Jaki jest główny język programowania, którego używasz? Czy używasz C++ lub Python?

Middle+
Яндекс
70

Czy znasz zasadę najmniejszych przywilejów (Principle of Least Privilege)?

Middle
VKVK
70

Jak był zorganizowany zespół? Ile osób, jak podzielono je według domen?

Senior
А7
70

Czym jest inode w Linux?

Senior
VKVK
70

Opowiedz o swoim doświadczeniu na ostatnim miejscu pracy

Senior
SelectelSelectel
70

Czy używasz TDD? Jak pokrywasz kod testami?

Middle+
ClearWay
70

Co się stanie, jeśli nie przekażesz kontekstu w zapytaniu do bazy danych?

Senior
UPSL
70

Opowiedz o swoim doświadczeniu zawodowym, szczególnie na ostatnim stanowisku.

Middle+
Servicepipi
70

System zaczął zwalniać — jak będziesz szukać przyczyny?

Middle
WildberriesWildberries
70

Jak podchodzisz do rozwiązania trudnego zadania w kodzie legacy z różnymi technologiami (Go, Bash, Python, Jenkins) w jednym sprincie?

Senior
СБЕРСБЕР
70

Jakie inne struktury są używane do indeksów w bazach danych oprócz drzewa B?

Middle
VKVK
70

Wszystkie id wprowadziłeś jako serial. Co to oznacza?

Intern
Озон банк
70

Jak planujesz zrealizować morphing obiektu drzewa jabłoni w jabłko? Jakie podejścia widzisz?

Senior
АЙ-ТЕКОАЙ-ТЕКО
70

Czym jest twierdzenie CAP i podaj przykłady systemów CP i AP?

Middle+
purrweb
70

Jakie inne metody ochrony mapy przed dostępem współbieżnym oprócz mutexa?

Middle
СитиДрайвСитиДрайв
70

Czy w tej tabeli są jakieś indeksy?

Intern
Озон банк
70

Jeśli usługa zużywa zbyt dużo pamięci, na co zwrócić uwagę w profilerze? Jak zmniejszyć alokacje?

Senior
А7
70

func fetch(ctx context.Context, u User) (string, error) { // coś robimy w sieci time.Sleep(time.Millisecond * 10) // symulacja opóźnienia return u.Name, nil //return "", errors.New("jakiś błąd") } func Do(ctx context.Context, users []User) (map[string]int64, error) { var mu sync.Mutex var wg sync.WaitGroup ch := make(chan error, len(users)) names := make(map[string]int64, 0) ctxWithCancel, cancel := context.WithCancel(ctx) wg.Add(len(users)) for _, u := range users { go func() { defer wg.Done() select { case name, err := fetch(ctx, u): if err != nil { ch <- err return } mu.Lock() names[name] = names[name] + 1 mu.Unlock() case <-ctxWithCancel.Err: } }() }

Middle+
Wildberries & Russ Bank
70

Dlaczego odszedłeś z poprzedniej firmy?

Middle+
Штрафов нет
70

Jaką dokumentację piszesz podczas tworzenia nowej usługi?

Middle+
МВидео/эльдорадо
70
/412