Вопросы по soft skills Вопросы по алгоритмам
- Почему ты решил стать бэкенд-разработчиком, чем тебя привлекает профессия?
- Писал ли тесты? Как их писал? Какие есть типы тестов?
- Что использовал для валидации данных?
- Какие есть два подхода в создании телеграм ботов?
- Что такое Swagger?
- Что такое вебсокеты??
- Раскрой принципы SOLID?
- Что такое dependency injection?
- Что такое декораторы? Где они используются?
- Приходилось ли тебе самому писать нативные декораторы? Не NestJS декораторы, а свои. Расскажи про этот опыт.
- Что такое ООП? Раскрой понятия полиморфизм, наследование, инкапсуляция
- Какие ORM знаешь и какие использовал? Какие плюсы и минусы можешь выделить?
- Отличия ES5 и ES6?
- Расскажи, что такое NodeJS? Из чего он состоит?
- Какие знаешь встроенные модули NodeJS?
- Можешь рассказать, что такое Event Loop? Какие есть фазы? Если в Event Loop ничего не останется после выполнения, то что произойдет? В какой последовательности вызываются микро и макро таски?
- Можешь рассказать, что такое замыкания в JS? Есть ли такое в других языках?
- Если мы в функцию передаем аргументы, как они передаются - по ссылке или по значению?
- Строки в JavaScript изменяемые? Или при добавлении символа в конец строки, это уже будет новая строка?
- Что происходит на сервере после написания кода на TS?
- Что происходит после того, как JavaScript передается в Node.js?
- Из каких компонентов состоит Node.js?
- Что внутри Node.js занимается оптимизацией? В какой момент происходит оптимизация? Что происходит с JS кодом чтобы он был “ближе к движку”? Во что разбирается JS код с помощью V8?
- Node.js однопоточна? Как реализуется многопоточность в Node.js в случае необходимости? Что такое трек пулл? Кто администрирует последовательности вызовов?
- Как можно оценить производительность приложения Node.js?
- Если поставить таймер на 10 секунд, то через сколько он сработает? Почему?
- Что такое package.json?
- Что такое package-lock.json? Зачем нужен? Зачем его коммитить? В чем разница
npm i
иnpm ci
? - Когда-нибудь приходило к тебе понимание типа “а вот здесь я хочу использовать eventemitter”? Когда его лучше использовать?
- Node.js может выполнять TypeScript?
- Отличия type и interface в TS?
- Отличия типа и абстрактного класса?
- Настраивал ли typeconfig?
- Какие есть встроенные типы Typescript?
- С какими СУБД работал?
- Фундаментальные различия между MongoDB и Postgress? В каких случаях что выберешь?
- Знаком с ACID? Можешь рассказать, что это такое?
- Какие виды JOIN знаешь? Чем они отличаются?
- Пользовался ли транзакциями? В каких случаях?
- Делал ли внешние ключи в базах данных? Зачем они нужны?
- Миграции/сиды писал?
- В чем различие TCP и UDP?
- Расскажи про OSI. На каком уровне находится HTTP?
- Что из себя представляет HTTP запрос? Структура? Тело есть у всех HTTP запросов?
- На чем основан HTTP запрос? На каком протоколе? А еще глубже?
- Можешь рассказать, что такое REST? Использовал ли в работе REST?
- Какой HTTP метод используется для обновления небольшого кусочка по REST?
- Какие минусы у микросервисной архитектуры? Какие плюсы?
- Работал с микросервисами? Расскажи, какие могут быть минусы?
- Что такое репликация и шардирование? Когда что использовать?
- Масштабирование, горизонтальное, вертикальное. Можешь рассказать, что такое?
- Как можно оценить, что твое приложение начинает тормозить?
- Какие знаешь паттерны ООП? Какие использовал?
- Знаешь, как работает сборщик мусора в NodeJS? Если у нас есть переменная, например объект, который ссылается сам на себя, сборщик мусора его обработает?
- Работал ли с Docker? Kubernetes?
- Работал ли с Grafana?
- Для чего нужны индексы в БД?
- В каких случаях первичный ключ может быть
null
? - В каком случае первичный ключ может быть составным и может ли он быть составным? Можешь привести пример такой ситуации?
- Чем
DELETE
отличается отTRUNCATE
? Какой запрос будет выполнен быстрее? - Знаешь ли ты, что такое
SELF JOIN
? - Решал ли ты какие-то задачи производительности в БД?
- Знаком, что такое PG Bouncer?
- Работал ли ты с Sequelize? Что тебе понравилось и не понравилось?
- Можешь рассказать про плюсы и минусы расположения БД в контейнере и без? В каких случаях стоит использовать базу в контейнере?