Коротка відповідь. Почни з вимог конкретної вакансії, а не з універсального списку п'ятисот питань. Розбий підготовку на чотири тижні: фундамент, основний стек, live coding, симуляція співбесіди. Кожен тиждень закінчуй перевірюваним результатом – написаним кодом, а не прочитаними сторінками. Нижче – детальний план із таблицею самооцінки.
День 0 – діагностика замість паніки
Випиши ключові технології з 3–5 вакансій, які реально відповідають твоєму рівню. Не з десяти й не «на виріст»: якщо змішати вимоги Junior і Senior в один список, отримаєш недосяжну матрицю і демотивацію замість плану.
Навпроти кожної теми постав один із трьох станів:
| Стан | Що означає | Приклад перевірки |
|---|---|---|
| Можу пояснити | Розкажу своїми словами з прикладом | «Поясни різницю між == і ===» |
| Можу реалізувати | Напишу робочий код без підказок | «Напиши debounce» |
| Можу обґрунтувати | Назву компроміси й альтернативи | «Чому тут контекст, а не пропси?» |
Познач п'ять найбільших прогалин – вони і є твоїм планом. Усе інше на 30 днів ігноруй: краще закрити п'ять тем глибоко, ніж двадцять поверхнево.
Тиждень 1 – фундамент
Для frontend це зазвичай JavaScript, TypeScript і браузерні основи; для інших напрямів – своя база, але принцип той самий.
Щоденний цикл на одну тему (60–90 хвилин):
- Поясни сам собі тему вголос або письмово, без підглядання.
- Напиши маленький приклад коду, що демонструє суть.
- Постав собі питання «що зламається на edge case?» – і перевір.
Коротка щоденна практика зі зворотним зв'язком корисніша за десять годин пасивного відео на вихідних. Якщо тільки починаєш шлях і фундамент ще не сформований – спершу подивись реалістичний маршрут входу в IT: 30 днів підготовки мають сенс, коли база вже є.
Тиждень 2 – основний стек
Тут працює принцип «одна задача, що росте». Замість десяти розрізнених вправ візьми одне завдання, наприклад список із фільтрами й запитами до API, і розвивай його щодня:
- понеділок – робочий happy path;
- вівторок – loading, error і порожній стани;
- середа – типізація TypeScript від даних до подій;
- четвер – тести на ключову логіку;
- п'ятниця – доступність: клавіатура, фокус, семантика.
Наприкінці тижня в тебе не конспект, а живий проєкт, який можна показати і про який можна говорити на співбесіді. Для React-стека детальний розбір типових запитань і задач є в гайді з підготовки до React-співбесіди.
Важливо: не додавай технології, яких немає в цільовій вакансії, лише заради рядка в резюме. Глибина в потрібному б'є ширину в усьому.
Тиждень 3 – live coding і system thinking
Live coding перевіряє не лише код, а й комунікацію. Тренуй повний цикл:
- Уточни вимоги вголос: які дані, які обмеження, що з крайніми випадками.
- Почни з простого рішення і скажи про це прямо: «спочатку зроблю робочу версію, потім покращу».
- Коментуй хід думок – інтерв'юер оцінює мислення, а мовчання читати не вміє.
- Назви, що б ти протестував, навіть якщо часу на тести немає.
- Сам назви слабкі місця свого рішення раніше, ніж про них спитають.
Постав таймер на 40 хвилин і розв'язуй по одній задачі на день у такому форматі. Для Middle/Senior додай дизайн невеликого модуля з обговоренням компромісів; для Junior більше часу віддай впевненій базовій реалізації.
Тиждень 4 – симуляція
- Проведи хоча б одну повноцінну mock interview – з таймером, камерою і незнайомим форматом запитань. Стрес-реакція на першій справжній співбесіді значно менша, якщо формат уже знайомий.
- Підготуй behavioral-приклади за структурою situation → action → result: конфлікт, помилка, дедлайн, робота з фідбеком.
- Переглянь CV під конкретну вакансію і підготуй свої запитання до компанії.
Після mock-співбесіди не записуй «погано знаю React» – це не план. Сформулюй маленьку конкретну дію: «пояснити дві проблеми useEffect на робочому прикладі й написати тест». Велика розмита прогалина не закривається; маленька конкретна – закривається за вечір.
Приклад одного дня підготовки
Щоб план не був абстракцією, ось як виглядає типовий будній день тижня 3 (сумарно ~90 хвилин):
- 20 хв – повторення вчорашньої теми: пояснити вголос, без матеріалів.
- 40 хв – live coding задача з таймером.
- 20 хв – розбір: що не вийшло, який edge case пропустив, що загуглив.
- 10 хв – записати одну конкретну дію на завтра.
Як зрозуміти, що план працює
Прогрес вимірюється не кількістю перечитаних питань, а чотирма перевірками:
- Можеш самостійно розв'язати вправу без готової відповіді.
- Можеш пояснити рішення іншій людині так, щоб вона зрозуміла.
- Сам знаходиш крайні випадки у власному коді.
- Усвідомлено обираєш між альтернативами, а не «так у туторіалі було».
Якщо всі чотири пункти працюють на темах із твого списку прогалин – ти готовий більше, ніж більшість кандидатів, які «прочитали топ-500 питань». Успіху на співбесіді!