Рет қаралды 34,595
Настоящее собеседование на Middle Go разработчика: реальные вопросы, кейсы, задачи. Все происходит так, если бы кандидат пришел на собеседование в команду. Расскажем почему спрашивали именно эти вопросы и как лучше всего подготовиться к собеседованию.
Проведет интервью Александр Сахаров
- Работает в Озоне, платформа Observability, команда логирования
- Опыт разработки 5 лет, за Go последние 3 года
- Интервьюирует ребят на Junior, Middle, Senior
Чтобы получать уведомления о предстоящих открытых интервью или записаться на менторскую сессию, напишите нашему боту: t.me/skills_mentee_bot?start=...
0:00-0:43 План вебинара
0:43-01:30 Бэкграунд Дмитрия
01:30-02:32 Менторская программа
02:32-03:09 Бэкграунд собеседуемого Михаила
03:09-03:41 Бэкграунд Александра
03:41-07:48 Начало интервью. Примитивы. Что такое слайсы?
07:48-14:18 Кейсы со слайсами
14:18-16:50 Маппа. Что такое хэш-таблица?
17:05-18:20 Рассуждения про ordered map
18:20-19:00 Как правильно объявлять Маппу?
19:00-20:04 Потокобезопасность Маппы
20:04-21:40 Почему Маппу не сделали более сейфовой?
21:40- 22:39 Что ты знаешь про sync.map?
22:39 -23:34 Как объединить по смыслу Маппу и Мьютексы
23:34-24:28 Чем отличается RW Мьютекс от обычного?
24:28-25:52 Индексы. Как быстро мы что-то найдём, если будем искать по индексу?
25:52-26:20 Можно ли по слайду быстрее пройти, чем по Маппе?
26:20-27:00 Каналы. Что такое каналы?
27:00-29:18 В чем разница между буферизированными и небуферизированными каналами?
29:18-30:13 Потокобезопасность каналов. Что мы можем и что мы не можем делать?
30:13-32:05 Зыкрытые каналы. Кейсы.
32:05-33:17 Как работает Select?
33:17-37:10 Контекст данных. Какие возможности?
37:10- 38:00 На какие уровни контекста распространяется отмена?
38:00-38:17 Когда в Select выполняется Default?
38:17-40:00 Heartbeat go routine
40:00-41:00 Объектная модель. Что такое интерфейс?
41:00-42:57 Как пустой интерфейс связан с обычным?
42:57-44:32 Зачем нам нужен пустой интерфейс?
44:32-49:21 Кейсы с интерфейсами. Ошибки.
49:21-53:44 Что такое горутины? Кейсы.
53:44-54:14 Какая выгода в отличии от потоков и процессов?
54:14-55:47 Tricky question с горутинами
55:47-57:49 Сборщик мусора в Го. Название механизма сборки мусора
57:49-58:40 Livelock
58:40-01:00:00 Starvation/голодание
01:00:00-01:03:01 Конструкция defer
01:03:01-01:04:30 Матированная переменная
01:04:30-01:06:58 Кейсы с переменными
01:06:58-01:06:42 Можно ли в defer поймать панику и как её лечить? Recover
01:06:42-01:08:59 как проводить удобно тестирование?
01:08:59-01:10:06 кейс с Atomic
01:10:06-01:11:36 что такое WaitGroup? ErrorGroup?
01:11:36-01:18:13 Решение задач
01:18:13-01:19:06 Операционные системы. В чему разница между потоками и процессами?
01:19:06-01:19:34 Отличие Горутины от потока
01:19:34-01:21:57 Способы общения между процессами
01:21:57-01:46:50 Виртуальная память
01:46:50-01:24:18 контейнеризация, виртуализация
01:24:18-01:34:18 Сетевые протоколы. Кейсы
01:34:18-01:40:15 Синхронная и рассинхронная репликация. Кейсы
01:40:15-01:44:40 Фидбэк собеседования от Александра
01:44:40-01:50:28 Вопросы из чата
01:50:28-01:55:22 Менторская программа
01:55:22-02:01:25 ответы на вопросы из чата