Sobes.tech

Golang

Czy używaliście Kafka jako magazynu? Ile ogłoszeń było w Kafka?

Senior
143

Optymistyczne i pesymistyczne blokady — opowiedz

Senior
143

Czy masz doświadczenie z infrastrukturą? Czy musiałeś coś dotknąć?

Senior
142

Do czego najczęściej służy Consul w architekturze mikroserwisów?

Senior
142

RPS Średnio 4-5 tysięcy RPS, w szczycie do 12k Ale ważne jest, aby zrozumieć, że główne obciążenie spoczywało na Kafka. Ponieważ architektura jest asynchroniczna, przy każdym tworzeniu ogłoszenia mój orkiestrator generował łańcuch 5-7 zdarzeń w różnych usługach weryfikacyjnych. Łącznie przetwarzaliśmy średnio do 30k wiadomości na sekundę.

Senior
141

Jaka jest różnica między seniorem a middle developerem w zespole?

Senior
139

Czy firma zapewnia sprzęt do pracy?

Senior
137

Na jakim poziomie wynagrodzenia rozważasz przy zmianie?

Senior
137

Jakie jest twoje ogólne doświadczenie z infrastrukturą, w tym Docker, Kubernetes, CI/CD i sieciami?

Senior
136

Jak przeprowadzono test obciążeniowy i jakie metryki były monitorowane?

Senior
135

Jak rozwiązywałeś sytuacje, gdy twoje decyzje były odrzucane?

Senior
134

Jak wygodny jest hybrydowy format pracy w Moskwie z wizytą w biurze co najmniej raz w tygodniu?

Senior
129

Dlaczego kolejka (od jakiego słowa Q)?

Senior
123

Ile masz lat komercyjnego doświadczenia w rozwoju w Go?

Senior
123

Dlaczego zdecydowali się wejść na rynek? Co jest nie tak w Magnit teraz?

Senior
122

Jak iterować po uporządkowanej mapie, zachowując kolejność? Implementacja metody iteracji.

Senior
121

Jeśli w AddTask użyjemy RLock, jak będą się zachowywały dwa równoległe wywołania AddTask? Czy będą się blokować nawzajem?

Senior
119

Opowiedz o przypadku, gdy coś zaproponowałeś i musiałeś udowodnić swoją rację.

Senior
117

// Napisać asynchronicznego obsługiwacza zadań jako bibliotekę // Klient przekazuje obiekt (Task) z danymi do wykonania zadania, // w naszym przykładzie użyjemy pustej struktury. // Obsługiwacz może obsługiwać nie więcej niż N zadań jednocześnie, // i nie więcej niż X zadań może być ustawionych w kolejce do przetwarzania. // Jeśli nie ma miejsca w kolejce, od razu zwracamy klientowi błąd. // Zadanie jest pobierane do obsługi, jeśli dostępni są wolni obsługiwacze. // Symulujemy czas trwania obsługi za pomocą time.Sleep(5*time.Second). // Gdy jedno zadanie się zakończy, pobieramy następne z kolejki. // Jeśli kolejka jest pusta, oczekujemy na nowe zadania od klientów. // Z gwiazdką: uzupełnić strukturę Task i uzyskać statusy zadań przez osobne zapytanie package scheduler type Scheduler interface { AddTask(t Task) error Close() } type Task interface { Do() }

Senior
113

Jak zachowywany jest stan użytkownika podczas wdrożenia bez przestojów?

Senior
109
/7