Sobes.tech

Что такое syscall? Как Go runtime обрабатывает блокирующие syscall'ы в модели GMP?

Middle
СБЕРСБЕР
7

Почему выбрали RabbitMQ, а не Kafka для уведомлений?

Senior
РамблерРамблер
7

Как работает HTTP сервер в Go?

Middle+
MAX LTD Group
7

У вас на текущем или предыдущем месте работы была high load система?

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

Расскажи о своей текущей компании и о том, чем ты там занимаешься.

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

Ориентируй по зарплатным ожиданиям, насколько сейчас можешь сориентироваться?

Middle+
Займиго
7

// 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 содержит ip:port конкретного экземпляра func NewBackend(addr string) *BackendImpl // addrs содержат адреса всех балансируемых экземпляров func NewBalancer(addrs []string) *Balancer { // TODO backends := make([]*BackendImpl, len(addrs)) for _, addr := addrs { backends = append(backends, NewBackend(addr)) } return &Balancer{ backends: backends, } }

Middle
Яндекс
7

Какая была ваша любимая стратегия, если кластер Elasticsearch падал или переставал отвечать? Ломалась ли функция поиска на сайте, или был резервный механизм для прямых запросов к PostgreSQL?

Middle
AndersenAndersen
7

Расскажите весь флоу по данным и по товару — как происходит поставка на склад, как данные проходят по системам?

Senior
МВидеоМВидео
7

Как шарить память между горутинами? В каких случаях лучше использовать Atomic, а в каких Mutex/RWMutex/SyncMap?

Senior
plata
7

Можешь привести пример автономной работы — какое максимальное время ты работал над одной задачей или проблемой?

Senior
AvitoAvito
7

Что за проект был в компании «Легион»?

Senior
Spectr
7

Что такое принцип Durability в ACID? За счёт чего он достигается в PostgreSQL?

Senior
Lenta Tech
7

Что такое индексация в реляционных БД?

Middle
VKVK
7

Какая у тебя роль и профессиональная самооценка — middle plus или senior?

Senior
X5
7

Когда протухнет refresh token, который живёт в cookie, — что происходит с пользователем?

Senior
X5 techX5 tech
7

// При обновлении заказа, мы должны отправить данные по заказу в несколько сервисов (сторонние API) // количество сервисов растёт (может быть тысяч+) // мы написали код, сначала все было хорошо, но со временем наш сервис начал потреблять много памяти func (s *orderService) SendOrder(ctx context.Context, hosts []string, order Order) { for i := 0; i < len(hosts); i++ { go func() { // Представим, что это долгий сетевой вызов response, err := s.httpClient.Send(ctx, hosts[i], order) if err != nil { s.logger.Error(ctx, "failed to send", err) return } s.logger.Info(ctx, "success", response) }() } }

Middle+
Lenta Tech
7

Задача на PostgreSQL: несколько воркеров читают задачи из таблицы и генерируют промокоды. Как избежать дублирования работы?

Senior
Магнит Тех
7

Есть ли ограничения по срокам поиска работы или финальные офферы от других компаний?

Senior
X5
7

Как ты работаешь? Используешь ли какие-то фреймворки или инструменты?

Senior
НООСФЕРА
7
/371