Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
57 changes: 42 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@
- Расскажи про опыт решения вопросов и проблем между твоим руководством и своими подчиненными (повышения, конфликты, зарплаты, премии, апгрейд техники).
- Представим, что у тебя команда из 5 человек и два сотрудника в плохих отношениях (доходит до ругани на работе). Это мешает работать + создаёт негативные настроения в команде. Как будешь решать эту проблему?
- Человек заболел и/или не выходит на всязь, что будешь делать?
- Твой руководитель/менеджер ставит сложные бизнес задачи в очень сжатые сроки, что негативно сказывается на команде и результате. Как будешь решать эту проблему? Что делать, если разговоры с менеджером не помогают и он продолжает гнуть свою линию?ё
- Твой руководитель/менеджер ставит сложные бизнес задачи в очень сжатые сроки, что негативно сказывается на команде и результате. Как будешь решать эту проблему? Что делать, если разговоры с менеджером не помогают и он продолжает гнуть свою линию?
- Расскажи про неформальное общение с командой. Нужно ли оно? Для чего? Как правильно выстраивать его и где "заканчивается работа"?
- Уходили (увольнялись) ли люди из твоей команды? Какая была причина увольнения? Пытался ли удержать их? Какими способами (деньги, позиции, технологии).
- Приходилось ли тебе увольнять людей из своей команды? Почему до этого доходило? Давал ли обратную связь? Пытался ли не увольнять человека и давал ли ему второй/третий/n шанс?
Expand All @@ -79,7 +79,7 @@
- Как ты относишься к тому, что придется задержаться в офисе или поработать в выходной?
- Как ты относишься к прохождению испытательного срока?
- В случае положительного ответа с нашей стороны когда ты готов приступить к обязанностям?
- Какие у тебя ожидвания по заработной плате?
- Какие у тебя ожидания по заработной плате?

## Базовые вопросы по взаимодействию частей приложения

Expand Down Expand Up @@ -177,15 +177,16 @@
- В чём разница между 'null' и 'undefined'?
- Что такое цикл? Чем отличается от алгоритма?
- Как можно проитерировать массив?
- Как можно проитерировать объект (неитерируемая сущность)?
- Как можно проитерировать объект (неитерируемая сущность)?
- Что такое ES6+?
- Что такое 'rest' и 'spread' операторы? Приведи пример использования
- Что из себя представляют методы массива 'forEach', 'filter', 'map', 'reduce'. Приведи примеры использования
- Для чего можно использовать `MAP` и `SET`? В чем их преимущество?
- Что такое прототипы? Что такое прототипное наследование?
- В javascript есть ООП? Как оно реализовано?
- Что такое "объект"?
- Что такое "класс"? Что у него "под капотом"?
- Что такое 'конструктор'? Как он работает?
- Что такое 'конструктор'? Как он работает?
- Есть ли в javascript 'нативные' классы? Возможно они есть 'под капотом'?
- Какие еще есть парадигмы (модели, подходы) программирования существуют кроме ООП? Какие из них поддерживает javascript?
- Расскажи про подходы в программировании и их разницу (императивный, декларативный). Какие могут использоваться в javascript?
Expand All @@ -202,6 +203,9 @@
## TypeScript

- Расскажи всё, что считаешь нужным про TypeScript
- Что такое `Generics`? Для чего они нужны?
- В чем разница между `extend` и `implements`?
- Что такое `utility types`? Для чего они нужны?
- TODO: добавить вопросов

## Хранение данных на клиенте
Expand Down Expand Up @@ -259,18 +263,18 @@

- Что такое паттерны проектирования?
- Из каких элементов состоит паттерн?
**(имя, задача, решение, результат)**
**(имя, задача, решение, результат)**
- Какие существуют типы шаблонов?
**(порождающие, структурные, поведенческие)**
**(порождающие, структурные, поведенческие)**
- Назови порождающие паттерны, которые знаешь. Напиши реализацию любого на выбор
**(Abstract factory, Fatrory method, Builder, Singletone, Prototype)**
**(Abstract factory, Fatrory method, Builder, Singletone, Prototype)**
- Назови поведенческие паттерны, которые знаешь. Напиши реализацию любого на выбор
**(Chain of responsibility, Command, Iterator, Mediator, Momento, Observer, State, Strategy, Template method, Visitor, Interpreter)**
**(Chain of responsibility, Command, Iterator, Mediator, Momento, Observer, State, Strategy, Template method, Visitor, Interpreter)**
- Назови структурные паттерны, которые знаешь. Напиши реализацию любого на выбор
**(Adapter, Bridge, Composite, Decorator, Facade, Flyweight, Proxy)**
**(Adapter, Bridge, Composite, Decorator, Facade, Flyweight, Proxy)**
- Какие паттерны ты чаще всего используешь в работе?
- Что такое "антипаттерны"? Приведи пример
**(Big ball of mud, Yo-Yo problem, Magic number, Magic button, Gas Factory, Analiys paralisys...)**
**(Big ball of mud, Yo-Yo problem, Magic number, Magic button, Gas Factory, Analiys paralisys...)**
- Что ты знаетешь о принципах ООП? Расскажи про OOD, OOA, DRY, KISS, YAGNI?
- Что из себя представляют принципы SOLID? Расскажи про каждый из принципов

Expand All @@ -283,6 +287,7 @@
- Можешь объяснить принципиальную разницу между docker и virtualbox?

## Docker

- Что такое Docker? Где применяется? Какие проблемы он решает?
- Был ли у тебя опыт использования Docker? Расскажи об этом
- На какую операционную систему можно установить Docker?
Expand All @@ -291,6 +296,10 @@
- Чем Docker отличается от виртуальной машины (VMWare или Oracle)?
- Что такое cgroups?
- Как работает докер на Linux, MacOS и Windows?
- Для чего нужен файл `Dockerfile`? Что он описывает? Какие есть практики по оптимизации образа приложения?
- Что такое `Docker Compose`? Как он помогает разработчику?
- Что такое `Docker Volumes`? Когда лучше использовать `Volumes`, а когда лучше `BindMounts`?
- Что такое `Docker Swarm`? Для чего стоит его применять?

## UNIX и инструменты разработки

Expand Down Expand Up @@ -361,32 +370,50 @@

## СУБД

### Общие вопросы

- Что такое СУБД? Какие СУБД ты знаешь?
- С какими СУБД ты работал на реальных продакшн проектах?
- Какие виды СУБД бывают?

### Реляционные СУБД

- MySQL, PostgreSQL? В чём разница? Что лучше/надежнее/удобнее?
- Что такое SQL?
- Что означает понятие "реляционная база данных"?
- Что такое "отношения между сущностями"? Как они реализованы?
- Что такое `primary key`, `foreign key`?
- Что такое `constraints`? Какие констрейнты знаешь? Приведи пример использования.
- Что такое `constraints`? Какие констрейнты знаешь? Приведи пример использования.
- Что представляет SQL-инъекция? Так ли она страшна в современной разработке?
- Что такое "prepare statement"?
- Что такое `UNION`?
- Что такое нормализация и денормализация данных?
- Как выбрать записи с нечётными Id? **SELECT * FROM sample WHERE id % 2 != 0;**
- Какие СУБД бывают помимо реляционных?
- Расскажите про "NOSQL"? Что означает "NO"? В чемпринципиальная разница между реляционной и NOSQL базой данных?
- Что такое транзакции? Для чего они нужны? Что такое уровень изоляции в транзакции?

### SQL

- Что такое `SQL`? Какие есть диалекты?
- Что такое `DDL`, `DML`, `DQL` операции?
- Как выбрать записи с нечётными Id? **SELECT \* FROM sample WHERE id % 2 != 0;**

### NOSQL

- Расскажите про "NOSQL"? Что означает "NO"? В чем принципиальная разница между реляционной и NOSQL базой данных?
- Что такое "документоориентированная база данных"?
- MongoDB - что это? Как работает? Доводилось использовать в реальных проектах?
- Какие преимущства и недостатки MongoDB перед реляционной СУБД?
- Что такое репликация?
- Что такое шардирование?
- Есть ли связи в MongoDB по аналогии с реляционными СУБД? Какие виды можно реализовать?

## InMemoryDB

- Redis, Memcached - что это? Как работает? Какая разница? Что доводилось использовать в реальных проектах?
- TODO: добавить вопросов

## Броккеры сообщений

- RabbitMQ, Kafka? Что это? Для каких целей используют подобные инструменты?
- В чем принципиальная разница между `Apache Kafka` и `RabbitMQ`?
- Что такое очередь в RabbitMQ? Какие виды очередей бывают? Для чего может понадобится `DLX`?
- Что такое `Exchange` в RabbitMQ? Какую задачу он решает?
- TODO: добавить вопросов