Собеседование на middle Go-разработчика в финтех с задачами по Go и SQL, разбор слайсов, мап, многопоточности и баз данных.
Key Takeaways
- Слайсы в Go — это динамические структуры с указателем, длиной и емкостью, передаются по значению, но значение — ссылка.
- Изменения слайса внутри функции могут быть видны снаружи, если изменяется базовый массив, но присваивание нового слайса локально не влияет на внешний.
- Использование float для ключей в мапах и для денежных значений не рекомендуется из-за проблем с точностью и уникальностью.
- Для хранения денежных значений лучше использовать целочисленные типы, умножая на минимальную денежную единицу (например, копейки).
- В Go для синхронизации многопоточных операций применяются мьютексы и другие примитивы, а SQL-запросы требуют правильной сортировки и пагинации.
Summary
- Видео демонстрирует реальное собеседование на позицию middle Go-разработчика в финтех-компании с зарплатой 300к рублей.
- Обсуждаются задачи по Go, включая работу со слайсами, передачу данных в функции и особенности append.
- Разбираются тонкости работы с мапами в Go, проблемы с ключами и хранением данных типа float.
- Обсуждается правильное хранение денежных значений в базах данных и почему используют int вместо float.
- Проводится теоретический разбор слайсов, их структура и поведение при передаче в функции.
- Затрагиваются вопросы многопоточности, синхронизации с помощью мьютексов и работа с горутинами.
- Обсуждаются SQL-запросы, сортировка, пагинация и работа с индексами, включая кластерные индексы.
- Дается помощь в подготовке к собеседованиям, составлении резюме и менторстве для разработчиков разного уровня.
- Видео содержит живое общение и объяснения, что помогает понять реальные ожидания работодателей.
- Включены практические советы по улучшению самопрезентации и навыков кодирования.
Chapters
- 00:00Введение и требования к вакансии
- 01:54Первая задача: работа со слайсами в Go
- 04:57Объяснение структуры слайса и передача в функции
- 11:32Задача со звёздочкой: изменение слайса без модификации функции
- 14:02Работа с мапами и проблемы с ключами float32
- 20:14Обсуждение хранения денежных значений и точности float
- 22:15Введение в многопоточность и синхронизацию в Go
- 26:18Работа с SQL: сортировка, пагинация и индексы
- 67:17Завершение и советы по подготовке к собеседованиям











