Sobes.tech

Можешь рассказать, как ты выбирал алгоритм для формирования короткой ссылки?

Intern
Озон банк
7

А вот тут ты еще пишешь про перекос при другом способе генерации. Можешь рассказать, про что это?

Intern
Озон банк
7

```go type User struct { ID int Name string } var ( dbHits int ) func getUserInfoFromDB(id int) User { time.Sleep(100 * time.Millisecond) dbHits++ return User{ID: id, Name: fmt.Sprintf("User-%d", id), } } func main() { var wg sync.WaitGroup for i := 0; i < 5; i++ { wg.Add(1) go func(i int) { defer wg.Done() fmt.Println(getUserInfoFromDB(i)) }(42) } wg.Wait() fmt.Println("DB hits:", dbHits) } ``` Исправьте ошибку в коде, связанную с конкурентным доступом к переменной dbHits.

Middle+
РамблерРамблер
7

Вы жили в одной инфраструктуре или разные системы были в разных контурах?

Middle+
РамблерРамблер
7

Как в Go реализуется полиморфизм без классического наследования (duck typing)? Это полиморфизм времени компиляции или времени исполнения? Какой ещё вид полиморфизма можно реализовать в Go?

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

-- Напишите SQL-запрос, который вернет следующие данные: -- n1. Вывести имя клиента и его город, которые сделали хотя бы 1 заказ

Middle
WildberriesWildberries
7

/ * Дан отсортированный по неубыванию список целых чисел a, индекс элемента index и целое число k. Необходимо вернуть в любом порядке k чисел из списка, которые являются ближайшими по значению к элементу a[index]. a=[2, 3, 5, 7, 11], index=3, k=2 -> [5, 7] a=[4, 12, 15, 15, 24], index=1, k=3 -> [12, 15, 15] a=[2, 3, 5, 7, 11], index=2, k=2 -> [3, 5] или [5, 7] * /

Senior
Pasul LTD
7

Как вы масштабировали консьюмеров в Kafka? Что происходит, если консьюмеров больше, чем партиций?

Middle+
РамблерРамблер
7

У вас был монолит, который переписывали на микросервисную архитектуру — ты в этом участвовал?

Senior
WildberriesWildberries
7

У вас был аналитик, то есть вы работали по ТЗ? Как это выглядело?

Middle+
РамблерРамблер
7

/ * Дана строка, содержащая символы (){}. Нужно определить, является ли входная строка сбалансированной с точки зрения скобок. * / func isBalanced(s string) bool { // TODO: implement this return false } fmt.Println(isBalanced("()")) // -> true fmt.Println(isBalanced("({()})")) // -> true fmt.Println(isBalanced("(()")) // -> false fmt.Println(isBalanced("(()))")) // -> false fmt.Println(isBalanced("({})")) // -> false

Middle
VKVK
7

Есть функция запроса в базу, которая возвращает одно и то же значение. Предложи решение, чтобы она не ходила лишний раз в базу за одними и теми же данными.

Middle+
РамблерРамблер
7

Расскажи, что знаешь про MVCC. Что происходит при UPDATE записи с точки зрения MVCC (создание новой версии строки, судьба старой)? Когда VACUUM очищает старые версии строк?

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

Как происходит блокировка при попытке освободить семафор (прочитать из канала), если в канале нет элементов?

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

Если бы мы сначала прочитали все данные в память и потом только читали, можно ли обойтись без mutex? Имеет ли смысл использовать map в таком сценарии?

Middle+
РамблерРамблер
7

func (r *PayoutRepository) save(p Partner) error { _, err := r.db.Exec( fmt.Sprintf("UPDATE partners SET balance = %s, hold = %s WHERE id = %s", p.Balance, p.Hold, p.ID), ) if err != nil { return err } if err := r.eventPublisher.Publish("BalanceChanged", p); err != nil { return err } return nil }

Senior
Pasul LTD
7

А сейчас какая алгоритмическая сложность поиска?

Intern
Озон банк
6

Напиши запрос: выбрать название всех книг, которые сейчас находятся на руках у читателей

Middle
Ozon FreshOzon Fresh
6

Наша схема не предполагает, что у книги может быть несколько авторов — как это учесть?

Middle
Ozon FreshOzon Fresh
6

Что такое partial (частичный) индекс?

Middle
Ozon FreshOzon Fresh
6
/399