Sobes.tech

Golang

Jak ukládat hlasové zprávy v messengere typu WhatsApp? Proč je lepší ukládat obrázky do S3 než do Postgres? Jaké jsou možnosti ukládání obrázků v Postgres?

Senior
Лига Цифровой ЭкономикиЛига Цифровой Экономики
100

Spotřebitel přijímá zprávu z Kafka, ukládá ji do bufferu, když je batch připraven, zapíše ji a provede commit. Co se stane, pokud služba spadne v okamžiku sestavování batch?

Middle+
МВидео/эльдорадо
100

Kolik mikroservis máte v Go a jak často se vyskytují úkoly, které zahrnují dva mikroservisy?

Senior
X5
100

Podmínka Existují 3 entity: uživatel, chat, zpráva • Uživatel má jméno a datum registrace • Chat má název a datum vytvoření • Zpráva má text, autora a datum vytvoření • Uživatel může být současně v několika chatech • Zpráva musí nutně patřit do jednoho chatu, nemůže patřit více chatům současně • Doménu je třeba popsat ve formě tabulek -- distribuovaný -- message_count v chatech limit 100 --getShard(time zone) -> shard_id -> 1 --getShard(time zone) -> shard_id -> 2 --shard1 [1..100] --shard2 [101..200] CREATE TABLE users ( id int PRIMARY KEY, name varchar(255) NOT NULL, reg_at TIMESTAMP NOT NULL DEFAULT NOW() ); CREATE TABLE chats ( id int PRIMARY KEY, name VARCHAR(255) NOT NULL, created_at TIMESTAMP NOT NULL DEFAULT NOW(), message_count int NOT NULL CHECK <= 100 ); CREATE TABLE user_chats ( user_id int not null REFERENCES users(id), chat_id int NOT NULL REFERENCES chats(id), PRIMARY KEY (user_id, chat_id) ); CREATE TABLE messages ( id int PRIMARY KEY, chat_id int NOT NULL REFERENCES chats(id), author_id int NOT NULL REFERENCES users(id), created_at TIMESTAMP NOT NULL DEFAULT NOW(), text TEXT NOT NULL );

Senior
Ozon ФинтехOzon Финтех
100

Které z následujících jsou prostředky synchronizace v Go? (kanály, sync.WaitGroup, sync.Mutex, sync.Cond)

Senior
Лаборатория Касперского
100

Použili jste paralelizaci ke zrychlení zpracování?

Middle+
Базис
100

Od jaké částky zvažujete své mzdové očekávání?

Middle+
Займиго
100

Pověz mi o svých zkušenostech s infrastrukturou a spolupráci s DevOps

Senior
Flant
100

Co je to Graceful Shutdown a proč je potřeba?

Senior
2gis2gis
100

V čem se liší PARTITION BY od GROUP BY u poddotazu?

Middle
WildberriesWildberries
100

Jak probíhá rozšíření (rehash) v Swiss Tables?

Senior
I-teco
100

Kolik lidí bylo v týmu a kdo zadával úkoly?

Senior
МВидео/эльдорадо
100

Jak dlouho plánuješ hledat novou práci? Máš stanovený časový rámec?

Senior
wilix
100

Úkol: «Ping-pong s timeoutem» Napište funkci pingPong, která: - Spustí dvě gorutiny: jedna generuje zprávy "ping", druhá — "pong". - Gorutiny si mají vyměňovat zprávy přes společný kanál striktně po sobě. - Výměna pokračuje 3 sekundy, poté by měl program skončit (pohotovostní vypnutí). - Použijte kontext pro zrušení s timeoutem. - Vypisujte každou zprávu na obrazovku spolu s časem (v milisekundách od začátku). Příklad očekávaného výstupu: 0ms: ping

Senior
FREEDOM LIFESTYLE
100

Co je to přepínání kontextu gorutin? Kdo ho provádí?

Senior
AstonAston
100

Od jaké částky zvažujete nabídku z hlediska finančních očekávání?

Senior
ozon_tech
100

Jak funguje hashovací tabulka?

Middle
VKVK
100

Pověz mi o nejnáročnějším úkolu, který jsi dělal.

Senior
WildberriesWildberries
100

Mluvili jste o read-modelu s Redisem. Replikoval se Redis mezi datovými centry?

Middle
Aliexpress
100

Můžeme předat slice jako parametr do funkce? Existují nějaké nuance v takovém předání?

Senior
Магнум
100
/412