12 часов в неделю - это 600+ часов в год. Более чем достаточно для джуна при правильном подходе.
Главное не количество часов, а качество и регулярность. Лучше 1 час каждый день с полной концентрацией чем 7 часов раз в неделю в режиме "ютубчик в фоне".
План на год:
Месяцы 1-2: Основы Python
- Синтаксис, типы данных, условия, циклы, функции
- Курс: "Поколение Python" на Stepik или Automate the Boring Stuff
- Практика: решай задачи на Codewars (7-8 kyu уровень)
Месяцы 3-4: ООП и структуры данных
- Классы, наследование, инкапсуляция
- Списки, словари, множества, кортежи
- Алгоритмы: сортировки, поиск, базовая сложность O(n)
Месяцы 5-6: Git, SQL, фреймворки
- Git/GitHub (ветки, pull requests, merge)
- SQL basics (SELECT, JOIN, GROUP BY)
- Начни изучать Django или Flask
Месяцы 7-9: Первый проект
- Сделай полноценное веб-приложение: TODO-list, блог, парсер вакансий
- Деплой на Heroku/Railway
- Добавь в резюме
Месяцы 10-12: LeetCode и собеседования
- Решай Easy задачи на LeetCode (хотя бы 50 штук)
- Делай pet-проекты для портфолио
- Рассылай резюме
1 час в день достаточен, но только если ты:
- Не отвлекаешься (телефон в сторону, фокус 100%)
- Делаешь практику, а не только смотришь видосы
- Регулярен (пропустил 3 дня подряд = откат назад)
Источник: сам прошел путь от нуля до джуна за 14 месяцев, занимаясь по 1.5 часа в день.
Спасибо за детальный план! А по поводу LeetCode - это обязательно для джуна или можно обойтись просто проектами в портфолио?
Не обязательно, но сильно помогает. Многие компании на собесах дают именно алгоритмические задачки (перевернуть строку, найти дубликаты в массиве). Если совсем нет времени - хотя бы 20-30 Easy задач прорешай перед началом рассылки резюме.