Sobes.tech

Всегда ли наличие индекса — это хорошо? Всегда ли вариант с включённым индексом будет лучше, чем без него?

Senior
ВайлдберрисВайлдберрис
18

Какие стратегии инвалидации кэша бывают в Redis? Какие данные кэшировать, какие нет? L1/L2 кэширование.

Senior
Uzum
18

Какова мотивация перехода? Почему решил выйти на рынок?

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

Большая таблица с промокодами замедлилась. Как разбираться и что делать?

Senior
Магнит Тех
18

Расскажите разницу между REST, gRPC и GraphQL.

Senior
Алабуга
18

В чём разница между EXPLAIN и EXPLAIN ANALYZE?

Senior
Магнит Тех
17

Может ли Go определить дедлок? Как рантайм Go обнаруживает дедлок?

Middle
YadroYadro
17

У тебя есть большой файл с миллионами URL адресов картинок. Нужно скачать их все и сложить на диск. Как организовать код, чтобы скачивание было быстрым, компьютер не завис, программа не перезапускалась, и внешний сервис не забанил за слишком частые запросы?

Senior
Spectr
17

/* Есть заказы, которые в процессе жизненного цикла переходят по статусам. Требуется реализовать слой работы с БД: - Сохранять историю статусов заказа - Учесть партицирование В дальнейшем, за рамками текущей задачи, будут реализованы другие методы: получение статусов по времени, полная история заказа и т.п. */

Senior
plata
17

Реализуйте функцию, которая принимает []any и delta int. Необходимо увеличить на delta только первые вхождения уникальных чисел (int). Другие типы и повторные числа оставить без изменений. Функция должна вернуть обновленный слайс и 2 числа: updated — сколько уникальных чисел было изменено, duplicates — сколько числовых элементов оказалось дубликатами func IncrementUniqueIntsInMixed(xs []any, delta int) ([]any, int, int) { // ваш код }

Middle+
OZONOZON
17

Расскажите про gRPC: почему выбирают, преимущества, ограничения

Senior
А7
17

С какими проблемами можем столкнуться при проектировании микросервисной архитектуры?

Senior
МВидеоМВидео
17

""" Места в кинотеатре расположены в один ряд. Только что пришедший зритель выбирает место, чтобы сидеть максимально далеко от остальных зрителей в ряду. То есть расстояние от того места, куда сядет зритель до ближайшего к нему зрителя должно быть максимально. Гарантируется, что в ряду всегда есть свободные места и уже сидит хотя бы один зритель. Напишите функцию, которая по заданному ряду мест (массиву из нулей и единиц) вернёт расстояние (число промежутков между креслами) от выбранного места до ближайшего зрителя. [1, 0, 0, 0, 1] -> 2 [1, 0, 1, 0, 0, 1, 0, 0, 1] -> 2 [1, 0, 1, 0] -> 1 """

Intern
Яндекс
16

Расскажите про миграции базы данных — как они хранились и кто их писал?

Senior
МВидеоМВидео
16

Представьте задачу: пользователю нужно получать уведомление о важном событии. Расскажите, какие основные части работы вы видите, какие зависимости, риски и как поймёте, что решение подходит.

Senior
spnd.xyz
16

Есть ли опыт с CI/CD? Что делал?

Middle+
BGStaff
16

package main import ( "io" "log" "net/http" ) func handler(w http.ResponseWriter, r *http.Request) { go func() { resp, err := http.Get("[link] if err != nil { log.Println("request error:", err) return } defer resp.Body.Close() body, _ := io.ReadAll(resp.Body) w.Write(body) }() } func main() { http.HandleFunc("/proxy", handler) log.Fatal(http.ListenAndServe(":8080", nil)) }

Middle+
MAX LTD Group
16

Помимо Go, из брокеров сообщений, баз данных, с чем работал?

Senior
OZONOZON
16

Что такое CPU-bound и I/O-bound задачи?

Senior
Алабуга
16

Условие У нас есть база данных с паролями пользователей, пароли захешированы (функция hashPassword), а так же известен набор символов которые могут быть использованы в паролях (переменная alphabet). Наша задача реализовать функцию RecoverPassword так, чтобы она восстанавливала пароль по известному хэшу и TestRecoverPassword завершился успешно Базовые требования: Решить как угодно package main import ( "crypto/md5" "fmt" ) var alphabet = []rune{'a', 'b', 'c', 'd', '1', '2', '3'} func RecoverPassword(h []byte) string { return "" } func hashPassword(in string) []byte { h := md5.Sum([]byte(in)) return h[:] } func main() { tests := []string{"a", "12", "abc333d"} ok := true for _, exp := range range tests { h := hashPassword(exp) act := RecoverPassword(h) if act != exp { fmt.Printf("Ошибка: ожидалось %q, получено %q\n", exp, act) ok = false } } if ok { fmt.Println("Все тесты пройдены успешно") } }

Senior
Ozon ФинтехOzon Финтех
16
/371