Sobes.tech

В чём была проблема со старыми мапами в Go, что их полностью переписали на SwissMap с приростом производительности ~30%?

Senior
plata
10

Балансировщик GeoDNS и Nginx — это разные вещи?

Senior
Магнит Тех
10

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

Senior
AvitoAvito
10

Насколько приходилось погружаться в базы данных — писать и оптимизировать запросы?

Middle
OZONOZON
10

С какого момента вы будете доступны?

Senior
Shopfully
10

Есть ли военный билет?

Middle
Stroki
10

Ты позиционируешь себя как мидл или как сеньор разработчик?

Middle+
2gis2gis
10

На вход сервису поступают обновления документов message Document { string Url = 1; // URL документа, его уникальный идентификатор uint64 PubDate = 2; // время заявляемой публикации документа uint64 FetchTime = 3; // время получения данного обновления документа, может рассматриваться как идентификатор версии. Пара (Url, FetchTime) уникальна. string Text = 4; // текст документа uint64 FirstFetchTime = 5; // изначально отсутствует, необходимо заполнить } Документы могут поступать в произвольном порядке (не в том, как они обновлялись), также возможно дублирование отдельных сообщений. Необходимо на выходе формировать такие же сообщения, но с исправленными отдельными полями по следующим правилам (всё нижеуказанное - для группы документов с совпадающим полем Url): Поле Text и FetchTime должны быть такими, какими были в документе с наибольшим FetchTime, полученным на данный момент Поле PubDate должно быть таким, каким было у сообщения с наименьшим FetchTime Поле FirstFetchTime должно быть равно минимальному значению FetchTime Т. е. в каждый момент времени мы берём PubDate и FirstFetchTime от самой первой из полученных на данный момент версий (если отсортировать их по FetchTime), а Text - от самой последней. Интерфейс в коде можно реализовать таким: type Processor interface { Process(doc *Document) (*Document, error) } Данный код будет работать в сервисе, читающем входные сообщения из очереди сообщений (Kafka или подобное), и записывающем результат также в очередь. Если Process возвращает Null - то в очередь ничего не пишется.

Senior
VKVK
10

Какой технологический стек использовался на последнем месте работы?

Senior
Займиго
10

Как у тебя с технической документацией на английском?

Senior
SberAuto
10

Какими командами можно проверить потребляемые ресурсы в Linux?

Senior
AvitoAvito
10

[имя] спросил: знаете ли вы какие-то другие языки программирования, или только пишете на Go?

Senior
BSS
10

Расскажите подробнее про проекты на Go

Middle
VKVK
10

Сколько максимум TCP-соединений можно держать на одном сервере?

Senior
ООО Макс
10

Как можно оптимизировать поиск в базе данных? Что такое индексы и какая у них сложность?

Middle+
101ХР101ХР
10

Как вы выбирали инструменты, например, как сравнивали библиотеки для JSON-парсинга?

Senior
X5
10

Ты откликнулся на позицию Senior Go-разработчика. Ты сейчас работаешь в [компания], верно?

Senior
Spectr
10

Можно ли использовать колонку в SELECT, если мы по ней не группируем в GROUP BY?

Senior
OZONOZON
10

/ * Разработчику было дано задание написать сервис отправки уведомлений. Требования: - Метод Send должен отправлять сообщения параллельно. - Одновременно может выполняться не более maxworkers HTTP-запросов. - Если хотя бы одна отправка завершилась ошибкой - нужно остановить остальные отправки и вернуть ошибку. - Метод должен корректно обрабатывать отмену контекста. - Все ресурсы должны корректно освобождаться. - Метод может вызываться конкурентно из разных goroutine. - Client должен хранить количество успешно отправленных сообщений. нужно сделать code review, найти проблемы и исправить код.

Senior
UPSL
10

What pipeline?

Middle+
МВидеоМВидео
10
/371