Senior Go Interview Prep

      • Механика defer в Go
      • Встраивание структур и интерфейсов (Embedding)
      • Ошибки в Go: error, wrapping, errors.Is/As/Join
      • Дженерики в Go (1.18+)
      • Интерфейсы в Go
      • Устройство map в Go
      • panic / recover: механика, раскрутка стека и runtime-паники
      • Указатели в Go
      • Рефлексия в Go (reflect)
      • Внутреннее устройство слайсов в Go
      • Строки, руны и байты в Go
      • Система типов Go: defined types, alignment, memory layout
      • sync/atomic
      • Буферизованные vs небуферизованные каналы
      • Канал vs Mutex: когда что выбрать
      • Каналы: устройство hchan
      • Утечки горутин, дедлоки, livelock, starvation
      • sync.Cond
      • context
      • Горутины: жизненный цикл, стоимость, стек
      • sync.Mutex и sync.RWMutex
      • sync.Once
      • Паттерны конкурентности
      • Race Detector (гонки данных и -race)
      • Планировщик GMP
      • select
      • sync.WaitGroup
      • Паттерны аллокаций и снижение давления на GC
      • Escape Analysis: когда переменная убегает в кучу
      • Сборщик мусора Go: concurrent tri-color mark-sweep
      • Тюнинг GC: GOGC и GOMEMLIMIT
      • GOMAXPROCS: параллелизм планировщика и проблема контейнеров
      • Утечки горутин (goroutine leaks)
      • Утечки памяти в Go (несмотря на GC)
      • Модель памяти Go (Go Memory Model): happens-before и синхронизация
      • pprof: профилирование CPU, памяти и блокировок в Go
      • Execution Tracer и runtime/trace: тайминги вместо агрегатов
      • Стек vs Куча: где живут данные в Go
      • testify, assert/require и golden files
      • Бенчмарки в Go
      • Покрытие, -race и флаки-тесты
      • Нативный fuzzing в Go (1.18+)
      • Интеграционные тесты, testcontainers-go, TestMain
      • Моки, стабы и тестируемость
      • Table-driven тесты, subtests и параллельность
      • Аутентификация и авторизация: AuthN/AuthZ, сессии vs токены, RBAC/ABAC, API keys, mTLS, секреты
      • Graceful Shutdown HTTP/gRPC сервера в Go
      • gRPC: типы RPC, интерсепторы, контекст, метаданные, error model
      • JWT (JSON Web Token)
      • Middleware-паттерн в Go
      • net/http: Server, Handler, ServeMux, таймауты, Client и контекст
      • OAuth2: роли, grant types, OIDC, токены и типовые ошибки
      • OpenAPI/Swagger, code generation, contract-first vs code-first, валидация
      • Protocol Buffers: схемы, wire format, эволюция и совместимость
      • REST: принципы, версионирование, идемпотентность, статусы, пагинация, ошибки
      • Пулы соединений: http.Transport, БД, утечки
      • DNS: записи, резолвинг, кэширование, DNS в Go
      • Версии HTTP: 1.1, 2, 3
      • TCP/IP: модель, транспорт и что важно бэкендеру
      • TLS: handshake, сертификаты, mTLS, производительность
      • UDP и надёжность поверх UDP
      • WebSocket: upgrade, фреймы, масштабирование
      • Пул соединений к PostgreSQL в Go: database/sql, pgx, pgxpool, PgBouncer
      • Взаимоблокировки (Deadlocks) в PostgreSQL
      • Индексы в PostgreSQL
      • Уровни изоляции транзакций в PostgreSQL
      • MVCC в PostgreSQL: версии строк, видимость, VACUUM и bloat
      • Обзор NoSQL и Redis
      • Партиционирование таблиц в PostgreSQL
      • Архитектура PostgreSQL
      • Планирование и оптимизация запросов в PostgreSQL
      • Репликация в PostgreSQL
      • Шардирование (горизонтальное масштабирование)
      • Транзакции в PostgreSQL и Go (database/sql, pgx)
      • CAP теорема
      • Circuit Breaker
      • Консенсус и Raft: репликация состояния в присутствии отказов
      • Модели согласованности
      • Гарантии доставки сообщений: at-most-once / at-least-once / exactly-once
      • Eventual Consistency
      • Идемпотентность в распределённых системах
      • Apache Kafka
      • Transactional Outbox
      • RabbitMQ: AMQP 0-9-1, маршрутизация, надёжность доставки и сравнение с Kafka
      • Ретраи: backoff, jitter, budgets и идемпотентность
      • Saga Pattern
      • Grafana
      • Метрики: RED, USE, Golden Signals
      • OpenTelemetry
      • Prometheus
      • SLI / SLO / SLA
      • Структурированное логирование (slog)
      • Distributed Tracing
      • Analytics Pipeline
      • Chat System
      • Фреймворк System Design интервью
      • Notification Service
      • Order Service
      • Payment Service
      • Rate Limiter
      • URL Shortener
      • CI/CD: пайплайны, стадии, стратегии деплоя
      • Облака (AWS / GCP) для бэкендера
      • Docker для Go-разработчика
      • GitHub Actions и GitLab CI
      • Kubernetes для Go-разработчика
      • Terraform / Infrastructure as Code
      • Типовые алгоритмические задачи и паттерны
      • Асимптотическая сложность (Big-O)
      • Структуры данных в Go
      • Специфика live-coding на Go
      • Конфликты, разногласия и работа со стейкхолдерами
      • Как проходит senior-интервью: этапы, оценка, оффер
      • Лидерство и менторство
      • Типовые поведенческие вопросы для Senior

    Categories