Sobes.tech

Имаш ли въпроси относно процесите, условията на работа и следващите стъпки?

Senior
spnd.xyz
106

Имате ли в момента други интервюта или оферти?

Senior
DST Lab
106

Проектирайте мащабируема система за съобщения, която поддържа 150 милиона потребители, 75 милиона DAU, 225 милиона MAU, 1.2M четения / 300k писания QPS, 5 милиона едновременни потребители, 60 PB нови данни годишно, растеж от 30% годишно, P99 <200 ms за четене, <300 ms за писане, SLA 99.95%. КОНТЕКСТ Необходимо е да проектирате разпределена система за съобщения, подобна на WhatsApp, която поддържа 1:1 и групови чатове, осигурява доставка на съобщения, показва онлайн статусите на потребителите и предава мултимедийни файлове (снимки, видеа, аудио). Системата трябва да осигурява висока наличност и ниска латентност, да поддържа висок паралелизъм и да се мащабира глобално. ФУНКЦИОНАЛНИ ИЗИСКВАНИЯ - Поддръжка на лични (1:1) и групови чатове с възможност за добавяне/премахване на участници - Изпращане и получаване на текстови съобщения и мултимедийни файлове Нефункционални изисквания: - Няма явна реализация на механизъм за end-to-end криптиране на ниво услуги или клиенти, освен обща бележка. - Липсва ясно описание на sharding и репликация на бази данни по chat_id или user_id за мащабируемост и отказоустойчивост. - Няма явен компонент или механизъм за офлайн синхронизация на съобщения и потвърждения за доставка. - Не е ясно как се извършва балансировката на натоварването между базите данни и услугите, особено при пикови натоварвания. **Критични точки за внимание:** (Диаграмата показва архитектура с Load Balancer, API Gateway, Message Queue, Service, Cache, Database, Object Storage и CDN.)

Senior
Яндекс
106

Работили ли сте някога с транзакции в PostgreSQL? С кои нива на изолация на транзакциите сте се срещали, в кои случаи се използват?

Senior
Магнит Тех
106

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

Middle+
OZONOZON
106

Как да синхронизираме работниците чрез PostgreSQL (разпределена блокировка в базата данни)?

Senior
Не указано
106

На 7-мия ред се прави извод, че вътрешният масив ще бъде препълнен и ще бъде създаден нов. Защо си решил така?

Senior
Холодильник.руХолодильник.ру
106

Какво е Outbox модел и как се реализира?

Senior
Mayflower
106

Как рендерира браузърът страниците? Какво е compositing?

Middle
Graveling
106

Ако такова задача сега попадне в спринт, откъде би започнал и как би работил с несигурността?

Senior
AvitoAvito
106

Как работихте с Kubernetes във вашия предишен екип?

Senior
bip.ru
106

Защо са необходими две проверки if (на ред 79 и на реда с len(buf)==MaxItems), а не една?

Middle+
Яндекс
106

Каква е мотивацията за промяната? Защо решихте да излезете на пазара?

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

Какъв тип да използвате за реализиране на set в Go?

Middle+
ТБанк
106

Вие сами писахте услуги с висок товарооборот или ги поддържахте?

Senior
ВкусВиллВкусВилл
106

Разкажи за своя опит, с какво си се занимавал, по кой проект си работил и каква роля си играл?

Senior
WildberriesWildberries
106

Колко често обикновено пристигат ясни изисквания?

Middle+
SelectelSelectel
106

Какви са нивата на изолация на транзакциите? Кои сте използвали?

Senior
Бюро 1440Бюро 1440
106

Какви са разликите между HTTP/1, HTTP/2 и HTTP/3?

Senior
YadroYadro
106

Разкажи за патърна Fan-In, за какво е нужен?

Senior
sber tech
106
/412