diff --git a/interview.md b/interview.md index e2ba778..ed640b8 100644 --- a/interview.md +++ b/interview.md @@ -27,44 +27,41 @@ ### Направления и секции в Тинькофф -**Backend-разработка** -* Алгоритмы -* Секция по платформе или языку -* Дизайн распределенных систем +#### Backend-разработка +* [Алгоритмы](#Алгоритмы) +* [Секция по платформе или языку](#Секция-по-платформе-или-языку) +* [Дизайн распределенных систем](#Дизайн-распределенных-систем) -**Frontend-разработка** -* Алгоритмы -* Секция по платформе или языку +#### Frontend-разработка +* [Алгоритмы](#Алгоритмы) +* [Секция по платформе или языку](#Секция-по-платформе-или-языку)v -**SRE** -* Алгоритмы -* Выявление и устранение проблем -* Дизайн распределенных систем +#### SRE +* [Алгоритмы](#Алгоритмы) +* [Выявление и устранение проблем](#Выявление-и-устранение-проблем) +* [Дизайн распределенных систем](#Дизайн-распределенных-систем) -**Машинное обучение** -* Алгоритмы -* Дизайн распределенных систем -* Секция по общему ML -* Дизайн ML-систем +#### Машинное обучение +* [Алгоритмы](#Алгоритмы) +* [Дизайн распределенных систем](#Дизайн-распределенных-систем) +* [Секция по общему ML](#Секция-по-общему-ML) +* [Дизайн ML-систем](#Секция-по-дизайну-ML-систем) -**Секция по выявлению и устранению проблем** - -Цель секции понять как вы мыслите в режиме неопределенности и стресса в сбойной ситуации. Каков Ваш опыт, как много приемов и инструментов поиска причин технических проблем вы знаете. Вам предложат описание архитектуры решения и наблюдаемые признаки сбоя (обращения пользователей или текст пришедшего алерта). Задавая вопросы интервьюверу, наподобие, "Вижу ли я в логах сообщения о такой то проблеме?", "Перезагружаю сервер, исчезла ли проблема?" Вы должны выявить исходную проблему в системе и предложить способы устранения и защиты от нее в дальнейшем. - -**Секция по платформе или языку** - -В рамках секции идет обсуждение различных аспектов платформ, фреймворков и различных языков программирования. Вопросы варьируются от реализации подходов к многопоточности, устройства памяти до взаимодействия с базой в определенном фреймворке. Язык и платформа выбираются исходя из Вашего опыта. - -**Секция по дизайну ML систем** - -Цель ML дизайн секции - обсудить подходы к проектированию и декомпозиции сложной ML системы. Во время секции вам предложат систему, которую необходимо спроектировать. Можно выделить следующий общий дизайн решения: форматизация задачи и требований, декомопозиция на подзадачи, сбор данных, разбор ML архитектур для подзадач, деплой и тестирование итоговой системы. ### Материалы для подготовки к секциям Рекомендуем ознакомиться с материалами до интервью: в них есть книги и курсы +#### Выявление и устранение проблем + +Цель секции понять как вы мыслите в режиме неопределенности и стресса в сбойной ситуации. Каков Ваш опыт, как много приемов и инструментов поиска причин технических проблем вы знаете. Вам предложат описание архитектуры решения и наблюдаемые признаки сбоя (обращения пользователей или текст пришедшего алерта). Задавая вопросы интервьюверу, наподобие, "Вижу ли я в логах сообщения о такой то проблеме?", "Перезагружаю сервер, исчезла ли проблема?" Вы должны выявить исходную проблему в системе и предложить способы устранения и защиты от нее в дальнейшем. + +#### Секция по платформе или языку + +В рамках секции идет обсуждение различных аспектов платформ, фреймворков и различных языков программирования. Вопросы варьируются от реализации подходов к многопоточности, устройства памяти до взаимодействия с базой в определенном фреймворке. Язык и платформа выбираются исходя из Вашего опыта. + #### Алгоритмы -Проверяем знания по алгоритмам и структурам данных. Предлагаем решить задачу на реализацию, например сделать клиент с бизнес-логикой для сетевых API. +В рамках секции проверяем знания по алгоритмам и структурам данных. Иногда предлагаем решить задачу на реализацию, например сделать клиент с бизнес-логикой для сетевых API. ###### Рекомендуем повторить все, что связано с алгоритмами: - основные структуры данных — строки, списки, деревья, ассоциативные массивы, векторы; @@ -128,6 +125,8 @@ #### Секция по дизайну ML систем +Цель ML дизайн секции - обсудить подходы к проектированию и декомпозиции сложной ML системы. Во время секции вам предложат систему, которую необходимо спроектировать. Можно выделить следующий общий дизайн решения: форматизация задачи и требований, декомопозиция на подзадачи, сбор данных, разбор ML архитектур для подзадач, деплой и тестирование итоговой системы. + ###### Книги: - Machine Learning Design Patterns / Valliappa Lakshmanan, Sara Robinson, Michael Munn [github](https://github.com/GoogleCloudPlatform/ml-design-patterns) [library](https://www.oreilly.com/library/view/machine-learning-design/9781098115777/) [youtube](https://youtu.be/udXjlvCFusc) - [Deep Learning Design Patterns](https://www.manning.com/books/deep-learning-design-patterns) / Andrew Ferlitsch