Вернуться в видеотеку

Собеседование Senior Go-разработчика / Даниил Подольский, Владимир Балун - Антон Зиновьев

Открытое показательное собеседование Senior Go-разработчика: теория Go и Linux, затем практический разбор PostgreSQL, конкурентного кэша и диагностики прод-инцидентов.

Источник: Николай Тузов — Golang

Открыть на YouTube

Таймлайн

Коротко о видео

Даниил Подольский и Владимир Балун проводят показательное двухчастное собеседование Senior Go-разработчика Антона Зиновьева. В разговорной части разбирают Go, конкурентность, слайсы, map, каналы, Linux, файловые системы, сигналы и Git. В лайв-кодинге обсуждают диагностику производительности PostgreSQL, проектируют конкурентный кэш поверх удалённой KV-базы и завершают разбором наблюдаемости, инцидентов и подходов к интервью.

Затронутые темы

Что взять на заметку

  • Перед проектированием или кодом нужно выяснить ограничения: профиль нагрузки, SLO, доступные ресурсы, число ядер, объём памяти, модель консистентности и права на изменение зависимостей.
  • Диагностику медленной PostgreSQL следует начинать с симптомов и проблемных запросов: собрать slow log, изучить планы через EXPLAIN ANALYZE и проверить, во что упирается система — CPU, память, диск, сеть или пропускную способность.
  • Шардирование и партиционирование не являются первым автоматическим решением проблем базы: сначала нужно подтвердить тип нагрузки и устранить более локальные причины.
  • Кэш должен сохранять внешний контракт исходной базы, обрабатывать cache miss и ошибки, учитывать отрицательное кэширование, конкурентные запросы к одному ключу и стратегию инвалидирования.
  • Для кэша с допустимой устарелостью данных можно выбрать TTL, но способ инвалидирования должен следовать бизнес-требованиям к консистентности, а не быть выбранным произвольно.
  • Полезные метрики сервиса: hit rate кэша, память, CPU, число горутин, успешные и ошибочные запросы; при HTTP 500 сначала локализуют проблему по времени, логам и трейсингу, затем переходят к профилированию и отладке.
  • По мнению участников, на senior-интервью важны не только знания фактов, но и умение формулировать допущения, уточнять контекст, последовательно исследовать проблему и объяснять ход рассуждений.

Рекомендуем посмотреть