Клауд Солюшенс
Актуальность: 1 кв 2026
Вопросы
Заголовок раздела «Вопросы»- Какие задачи вы решали на последнем месте работы? Какие алгоритмы и подходы использовали?
hr-behavioral/about-you - Опишите состав команды и вашу роль в ней. Какие ключевые результаты вам удалось достичь?
hr-behavioral/teamwork - Насколько глубок ваш опыт в DevOps? Какие инструменты и практики применяли регулярно?
hr-behavioral/about-you - Есть ли у вас опыт работы с Docker? Если да, то в каких сценариях?
containers/docker - Какие инструменты CI/CD вы использовали в связке с Go? Как организовывали тестирование и деплой?
devops/ci-cd - Следите ли вы за обновлениями Go? Какие изменения последних версий считаете наиболее значимыми?
go/basics - Что изменилось в работе с
mapв новых версиях Go?go/maps - Как изменился алгоритм поиска в
mapпо сравнению с ранними версиями?go/maps - Почему в Go больше нет понятия «эвакуация» применительно к
map?go/maps - В чем разница между
makeиnew? Когда что использовать?go/stdlib-tooling - Как реализованы многомерные или вложенные структуры в Go?
go/structs-methods - Как работает функция
appendпод капотом? Почему, на ваш взгляд, выбрана именно такая сигнатура?go/slices-arrays - Если присвоить возвращаемое значение функции новой переменной, что происходит со старой переменной?
go/basics - Как работает пакет
sync? С какими примитивами из него вы работали?go/sync - В чем суть
sync.Pool? Как и когда его правильно использовать?go/sync - Как garbage collector взаимодействует с объектами в
sync.Pool?go/sync - Как garbage collector обрабатывает переменные, выделенные на стеке?
go/memory-gc - Когда память выделяется на стеке, а когда - в куче? Какие правила использует компилятор Go?
go/memory-gc - Всегда ли возвращаемое значение функции попадает в кучу? Приведите примеры.
go/memory-gc - Какие типы значений можно возвращать из функции без аллокации в куче?
go/memory-gc - Как новый механизм
arenaвлияет на управление памятью? В каких задачах может быть полезен?go/memory-gc - Что такое
go:noescape? Когда его используют?go/memory-gc - Что такое семафор в контексте конкурентного программирования?
go/concurrency - Как бы вы реализовали функцию
tryLockдля семафора в Go?go/sync - Что такое паттерн «синглтон»? Для чего он нужен и как его правильно реализовать в Go?
architecture/patterns - Предположим,
sync.Onceотсутствует в стандартной библиотеке. Как вы реализуете потокобезопасный синглтон с ленивой инициализацией, используя другие примитивы из пакетаsync?architecture/patterns - Почему возникает
log contention? Как его диагностировать и избежать?go/sync - В чем разница между
MutexиRWMutex? Приведите пример, где один предпочтительнее другого.go/sync - Что такое
singleflightиз пакетаgolang.org/x/sync? Какую проблему решает?go/sync - Есть ли у вас опыт работы с OpenAPI в проектах на Go? Какие инструменты генерации кода использовали?
go/basics - Как в Go работает конструкция
oneof?go/stdlib-tooling - Доводилось ли вам использовать библиотеку MapStruct? Как решали задачу маппинга между структурами в Go?
go/structs-methods - Что такое
json.RawMessageи когда его использование оправдано?go/stdlib-tooling - Какие подходы к работе с
nullзначениями в JSON вы знаете в Go?go/basics - Какие паттерны проектирования из классической книги «банды четырех» вы применяли на практике в Go? Приведите примеры.
architecture/patterns
Задача: Дан HTTP POST-эндпоинт, который принимает JSON. Поле kind - строка-дискриминатор. Поле entity содержит данные, соответствующие одной из Go-структур: User или Car. Эти структуры полностью независимы. Предложите реализацию парсинга такого запроса. go/stdlib-tooling
Заголовок раздела «Задача: Дан HTTP POST-эндпоинт, который принимает JSON. Поле kind - строка-дискриминатор. Поле entity содержит данные, соответствующие одной из Go-структур: User или Car. Эти структуры полностью независимы. Предложите реализацию парсинга такого запроса. go/stdlib-tooling»{"kind ": "user ","entity ": { ...}}или
{"kind ": "car ","entity ": { ...}}Доп. вопросы
Заголовок раздела «Доп. вопросы»- Какие подводные камни нужно учесть?
go/stdlib-tooling - Сделайте решение расширяемым: если через месяц добавятся
kind = "bicycle"иkind = "house", изменения в коде должны быть минимальными и локализованными.architecture/patterns - Как избежать двойного парсинга JSON?
go/stdlib-tooling - Как поступить с неизвестным
kind?go/stdlib-tooling - Как организовать регистрацию новых типов через
init()или карту конструкторов?go/stdlib-tooling - Нужно ли использовать
json.RawMessageилиmap[string]interface{}?go/maps