Обязательный минимум
Язык на рабочем уровне. Не «прошёл курс», а умение написать программу на несколько сотен строк, разбитую на понятные части.
Как устроен веб. Что такое запрос и ответ, что означают методы и коды состояния, что такое заголовки, чем отличается адресная строка от тела запроса. Это спрашивают почти всегда.
Базы данных. Уверенно: выборка с условием, сортировка, объединение таблиц, группировка. Понимание, что такое индекс и зачем он.
Плюс представление о том, как спроектировать пару связанных таблиц, не наступив на очевидные грабли.
Один фреймворк. Тот, что просят в вакансиях вашего города. Уметь сделать обработчик запроса, подключить базу, отдать ответ, обработать ошибку.
Инструменты. Система контроля версий, командная строка, чтение журналов, отладка.
Что доучивается по ходу
- Контейнеры и развёртывание — полезно показать, но на входе не критично.
- Очереди и фоновые задачи.
- Кэширование.
- Тонкости безопасности сверх базовых.
- Микросервисы. На входе они вам точно не нужны.
Что показать в проекте
Сервис, где есть полный путь: пришёл запрос — проверили данные — сходили в базу — вернули ответ — записали в журнал.
Хорошо, если видно:
- разделение на слои — обработка запроса отдельно, работа с данными отдельно;
- проверка входящих данных и внятные сообщения об ошибках;
- хранение настроек вне кода, без паролей в репозитории;
- развёртывание — открывается по ссылке.
Это скромный проект, но он закрывает большинство вопросов на собеседовании.
Пробелы, которые видно сразу
Пароли и ключи в коде. Смотрят репозиторий, находят настоящий ключ — разговор окончен. Проверьте свои проекты прямо сейчас.
Никакой обработки ошибок. Программа, которая падает при любом неожиданном вводе, выглядит учебной.
Запросы в базу внутри циклов. Классическая ошибка новичка: в цикле по ста записям делается сто запросов.
Отсутствие понимания, что такое транзакция. Спрашивают часто, особенно там, где есть деньги или заказы.
Как проверить себя
Сделайте сервис, который принимает данные, сохраняет и отдаёт обратно с фильтрацией. Разверните. Дайте ссылку человеку, который пишет серверную часть, и попросите поругать.
Замечания, которые вы получите, — это и есть список того, что спросят на собеседовании. Получить их до, а не во время разговора с работодателем, стоит недорого: обычно достаточно попросить кого-то в сообществе или сделать проект вместе с человеком посильнее.
Хватит читать — пора делать
На CohortX можно найти команду под пет-проект и получить тот самый опыт, о котором спрашивают на собеседовании.
Похожие статьи
- What a junior QA engineer should knowWhy this is the fastest entry into the field, what you need at the start, and how a tester builds a portfolio.
- Что должен уметь начинающий тестировщикПочему это самый быстрый вход в профессию, что нужно знать на старте и как собрать портфолио тестировщику.
- What a junior backend developer should knowThe minimum asked at entry, what gets learned on the job, and which gaps are visible immediately.