Разбор технического собеседования Senior Go-разработчика
Фрагмент реальной технической секции собеседования на Senior Go-разработчика в InfoWatch с комментариями кандидата по ходу записи. Обсуждаются микросервисный boilerplate, PostgreSQL, Kafka и NATS, уровни изоляции транзакций, диагностика производительности и кэширование.
Автор показывает техническую часть своего реального собеседования на Senior Go-разработчика и поясняет ход ответов. Интервью затрагивает выбор брокера, архитектурные решения и задачу по PostgreSQL с крупной выборкой данных. После записи автор разбирает, почему интервьюеры уточняют детали реального опыта и как по ответам отличают воспроизведённые термины от практического понимания. Часть видео посвящена анонимизации рекрутера и собственным услугам автора, но техническое интервью и его разбор занимают основное содержание.
Выбор между Kafka и NATS стоит обосновывать требованиями к масштабированию, маршрутизации и эксплуатации, а не популярностью инструмента.
Append-only и soft delete сохраняют историю, но усложняют запросы и увеличивают объём таблиц; нужны продуманные представления, индексы и политика хранения данных.
В PostgreSQL при Read Committed один SELECT работает со снимком данных на начало оператора и не видит незакоммиченные изменения.
Диагностику медленного backend-запроса стоит начинать с трассировки и логов, затем проверять SQL через EXPLAIN ANALYZE и Go-код через pprof.
Кэширование небольшой часто запрашиваемой выборки имеет смысл только после проверки плана запроса и требует стратегии актуализации данных.