Получи практический опыт Django-разработки на реальных проектах с наставником и научись работать в команде

Это как виртуальная стажировка в настоящей компании.

Лаборатория Django-разработки
Для уже знакомых с Python и основами Django
с 18 октября 2021

8 недель - индивидуальный проект
или
20 недель - индивидуальный плюс командный проект
Сроки
Проект
Результаты
Вы будете работать над индивидуальным проектом отрабатывая навыки разработчика (аналог Авито) и затем над командным проектом* (на основе настоящих ТЗ),
*при участии в командном проекте
Участвуя в Лаборатории вы освоите все необходимые навыки для Junior-разработчика (и даже некоторые навыки middle) - это быстрее и эффективнее чем сами!
Процесс
Вы будете сразу работать над решением практических задач под чутким руководством наставника.
Участвуя в Лаборатории вы получите следующие практические навыки
Agile-процесс разработки
Научитесь декомпозировать задачи, планировать итерации и строить работу в соответсвии с принятыми стандартами в индустрии
Git flow
Научитесь уверенно использовать git и следовать Git flow. Будете уметь использовать merge, rebase, разрешать конфликты и использовать git в командной разработке
Разработка через тестирование (TDD)
Освоите Unit- и интеграционное тестирование, научитесь применять подход TDD в работе
Работа с базами данных
Научитесь проектировать схему БД, разберетесь с ассоциациями между сущностями, освоите работу с базой через ORM
Миграции,RunSQL, RunPython
Научитесь инкрементно развивать схему БД, обрабатывать данные и работать с базой напрямую
Паттерны проектирования
Освоите самые применимые и распространенные паттерны проектирования и архитектурные паттерны
Работа с фоновыми задачами (celery)
Научитесь асинхронному выполнению кода и выносу "тяжелых" задач в фон
Запуск задач по расписанию
Научитесь выполнять код по заданному расписанию
Кэширование и оптимизация
Оптимизируете работу вашего приложения и примените кешироване там, где это нужно
Аутентификация через социальные сети
Реализуете вход через популярные сервисы, такие как Facebook, VK, Twitter, Yandex, Gmail или любые другие
Сложные формы
Создадите сложные, многошаговые формы
Docker
Освоите самый востребованный инструмент виртуализации
Deploy приложений
Научитесь настраивать сервер и разворачивать свое приложение на нем
Проектирование архитектуры
Освоите подходы к проектированию архитектуры, узнаете о хороших и плохих паттернах и подходах
Авторизация
Реализуете ролевую модель в приложении и отслеживание прав пользователей
Рефакторинг и написание хорошего кода
Сможете изменять и улучшать код приложения постепенно, не меняя его поведения, но оставаясь в уверенности, что ничего не сломалось
Создание API на Django Rest Framework
Создадите полноценное REST API для внешних клиентов (например, для мобильного приложения)
Глубокое понимание MVC и ORM
Будете уверенно себя чувствовать при применении ORM, а также поймете что и где должно лежать в архитектуре MVC
Работа с Middleware
Напишите middleware для низкоуровневой обработки запросов
Полнотекстовый поиск
Реализуете полнотекстовый поиск в приложении
Командная работа*
Научитесь работать в команде разработчиков. Навык который невозможно получить самостоятельно изучая Django. Это то, что требуется в любой компании. *(при участии в командном проекте)
Кому подойдет эта лаборатория
Знаете Python и хотите освоить Django?
Вы уже знаете Python и основы Django и хотите освоить Django на профессиональном уровне. Получить навыки и перенять опыт профессионалов в работе над реальным проектом.
Вам не хватает практики?
Вы прошли разные курсы и посмотрели кучу материала в Интернете, но когда дело доходит до реальных задач, не знаете с чего начать. Вы хотите получить практический опыт, как решают задачи профессионалы и проверить правильность решения.
Вы ищите наставника?
Вы хотели бы получать обратную связь по вашему коду от опытных разработчиков, чтобы прокачивать свои навыки. Code review остаётся наиболее востребованной и эффективной опцией в развитии разработчика.
Хотите освоить работу в команде?
У вас есть базовые навыки разработки, вы всегда писали код сами. Хотели бы получить опыт командной разработки, поучаствовать в группе с наставниками и получить в портфолио командный проект.
!
Для всех участников Лаборатории Django - участие в воркшопах и мастер-классах по django и python бесплатное
Программа курса
У нас нет такого понятия, как "программа", так как это не обучающий курс, а практическая работа над задачами
Как это работает?
В отличие от курсов и школ, мы не будем в сотый раз рассказывать одно и то же и грузить теорией, которую вы уже знаете.
Вместо этого вы будете сразу работать над решением практических задач под чутким руководством наставника, которому всегда можно задать вопрос и обратиться за помощью.

А нужные для выполнения задачи материалы и необходимая теория будут предоставлены для самостоятельного ознакомления на основе открытых материалов.
О проектах
Во время Лаборатории мы будем работать над проектом маркетплейса - аналогом avito.ru. В любом маркетплейсе есть как минимум 2 стороны - заказчики и поставщики, а площадка организовывает удобный сервис между ними.

Созданием такой площадки мы и будем заниматься.

Это позволит на практике отработать 80% задач, с которыми сталкивается каждый Django-разработчик в реальных проектах.

Затем при успешном выполнении индивидуального проекта, вы можете принять участие в командном проекте, где на основе реального ТЗ будем разрабатывать приложение (CRM-систему), работая в командах.
    Необходимые навыки для участия
    1
    Уверенное знание Python
    Вы должны уверенно владеть базовыми конструкциями, знать основы ООП, уметь писать код на Python (например, парсер или чат-бота)
    2
    Основы Django
    Нужно иметь представление о Django и архитектуре MVC, уметь разворачивать проект. Если пока этого нет, вы можете подтянуть эти навыки по предоставленным подготовительным материалам до старта Лаборатории.
    Итак. Как это работает?
    Реальная разработка
    Во время Лаборатории вы разрабатываете веб-приложение на Django - проект маркетплэйса. Хорошо знать Django необязательно, вы освоите по ходу дела (но нужно знать основы).
    Спринты
    Проект разбит на таски (задачи) и недельные спринты. В течение спринта вам нужно будет выполнять задачи и сдавать их на code review наставнику. Прямо как в настоящей разработке.
    Онлайн встречи
    Раз в неделю вы с другими участниками встречаетесь с наставником (профессиональным разработчиком) в онлайне. Формат Вопрос/Ответ, разбор интересных решений участников, обзор проделанной работы.
    Работа над проектом
    Между спринтами вы работаете над задачами из итерации. К задачам будут выданы необходимые материалы для самоподготовки. В процессе реализации вы всегда можете обращаться с вопросами к наставнику, он подскажет и поможет. А также можете помогать и обращаться за помощью к своим одногруппникам.
    Code review
    Когда вы завершаете задачу, вы сдаете ее на проверку наставнику, он проводит code review и либо принимает ваш код, либо отправляет на доработку. В процессе вы всегда можете обратиться за помощью к наставнику и он подскажет и поможет. Так вы нарабатываете опыт решения задач и проблем, "набиваете шишки" и учитесь писать хороший, поддерживаемый, профессиональный код
    Результат
    Пройдя Лабораторию, вы освоите все необходимые навыки для Junior-разработчика (и даже некоторые навыки middle)
    Django
    Вы уверенно владеете Django и можете самостоятельно писать полноценные веб-приложения на этом фреймворке
    Проекты в портфолио
    У вас есть несколько серьезных проектов в портфолио, код которых не стыдно показать работодателю
    Опыт
    Вы получаете опыт реального процесса разработки и отработаете 80% задач с которыми сталкиваются разработчики в компаниях.
    Командная работа (при участии в командном проекте)
    Получите опыт командной разработки, который невозможно получить самостоятельно изучая Django. Это то, что требуется в любой компании.
    Трудоустройство
    Это будет закономерный результат, после прохождения лаборатории. У вас будет портфолио, навыки и опыт, что позволит быстрее и проще найти первую работу.
    Участие
    Чтобы попасть в Лабораторию, нужно пройти небольшой отбор. Это нужно, чтобы определить ваш уровень и цели и понять, подойдет ли вам этот формат. Отбор проходит в несколько шагов:
    1
    Заявка
    Вы оставляете заявку на участие
    2
    Анкетирование
    Мы связываемся с вами и проводим небольшое анкетирование, чтобы определить ваш уровень согласно предьявленным требованиям лаборатории.
    3
    Зачисление
    По результатам диагностики, мы пригласим вас к участию или дадим рекомендации по повышению уровня.
    О лаборатории
    Лабораторию проводит онлайн-школа Thinknetica.
    Мы занимаемся обучением разработчиков с 2013 года и имеем большой опыт в этом. Мы проводили как классические курсы, так и экспериментировали с форматами. И за это время, на опыте наших учеников, мы убедились, что важнейшая вещь, которая делает из вас хорошего разработчика - это много практики + проверка вашего кода наставником. И обычно, практики как раз очень не хватает начинающим разработчикам.

    Поэтому мы запускаем формат освоения навыков исключительно через практику, а необходимую теорию дать для самостоятельного изучения. Мы верим, что именно такой формат даст максимальный результат.
    Ведущий Лаборатории
    Михаил Бородин
    Team Lead в X5 Retail Group
    Профессионально занимается разработкой ПО более10 лет. За это время разрабатывал архитектуру и выступал ведущим разработчиком различных высоконагруженных информационные системы в области ГИС, финтех, e-commerce. Много лет пишет на Python, JavaScript, с недавних пор начал писать на Go и разрабатывать мобильные приложения на Swift.
    Начни обучение сейчас, плати потом
    Возможно получение рассрочки:
    • Первая оплата только через 1 месяц после оформления
    • Никаких дополнительных обязательств перед банком
    • Онлайн-оформление, одобрение в течение нескольких минут
    • Рассрочка до 12 месяцев
    • Без переплат
    Условия получения:
    • Для граждан РФ
    • Возраст от 18 лет
    • По паспорту, без справок
    • Одобрение в день обращения
    28 500 руб.
    * Также возможна банковская рассрочка.
    Стоимость участия для индивидуального проекта
    Стоимость участия
    Первые 5 мест
    В группе максимум 20 мест. Стоимость зависит от наполнения группы:
    30 500 руб.
    Места 6-15
    32 500 руб.
    Места 16-20
    Оставить заявку на участие
    Оставьте контакты и мы свяжемся с вами для анкетирования.
    Ваше имя
    Ваш e-mail
    Ваш телефон
    Как вас найти в Telegram?
    Нажимая кнопку, вы соглашаетесь с политикой конфиденциальности
    Подойдет ли мне этот формат?
    Если вы уже неплохо знаете Python и, возможно, подступались к Django, то скорее всего да. Но мы понимаем, что такой формат подойдет не каждому, поэтому у нас есть гарантия возврата средств в течение 14 дней. Поэтому если вы поймете, что вам не подходит такой формат, вы ничего не потеряете.
    В интернете полно бесплатной информации, зачем мне идти к вам?
    Абсолютно верно. В интернете действительно очень много информации (порой слишком много), в том числе очень хорошей. Но вот чего не найдешь на бесплатных ресурсах - так это реальной практики и обратной связи от опытного коллеги. Именно поэтому в Лаборатории мы не читаем лекций и не объясняем то, что уже где-то описано. Вместо этого мы даем вам ссылки на уже отобранные материалы, где вы можете ознакомиться с теорией и сосредотачиваемся на практике.
    Чем это отличается от обычных курсов?
    Тем, что здесь нет классической схемы "лекция с теорией - домашнее задание - проверка". Мы используем методики проектного обучения и перевернутого класса. Вместо прослушивания очередной лекции, на встречах вы сразу погружаетесь в практическую работу. У нас нет понятия "Домашнее задание", вместо этого у вас есть полноценный проект, над которым вы работаете. То есть вы осваиваете и закрепляете навыки исключительно на практике, а необходимую теорию осваиваете самостоятельно по предоставленным материалам
    Разве можно изучить что-то не изучив теорию? А если я не знаю, как что-то делать?
    Мы не говорим, что теория не нужна. Мы лишь утверждаем, что использовать встречи с наставником эффективнее для практической работы, а не для объяснения теории и что теория усваивается только через практику. Как говорится, теория без практики мертва, практика без теории - глупа.
    Поэтому мы обязательно даем вам необходимые для решения задач теоретические материалы, чтобы вы могли их освоить самостоятельно. Это заранее отобранные материалы, подобранные под конкретную задачу. Т.е. мы не вываливаем на вас кучу информации, а даем ровно то, что вам нужно для решения задачи. По нашему опыту, так получается гораздо эффективнее, ведь изученная теория тут же применяется на практике, что делает ее полезной и она не забывается.
    Сколько времени требуется уделять?
    Это зависит от вашей предыдущей подготовки, но в целом участие в Лаборатории довольно интенсивное и требует хотя бы 10-15 часов в неделю (2-4 ч в день). Чем больше времени вы сможете выделить, тем лучше.
    Каждый пишет свой проект индивидуально или это командный проект?
    В рамках этой лаборатории, каждый пишет свой проект индивидуально, так мы гарантируем, что каждый участник освоит все необходимые инструменты и технологии. Затем мы приступаем к командной работе*. Где отрабатываем полученные навыки на реальных ТЗ.

    *Командный проект приобретается отдельно.
    Короткие отзывы
    небольшая обратная связь:
    Что в Лаборатории вам нравится больше всего?
    Прикладные задачи, не оторванные от реальности. Доступность наставника и коллег для обсуждения вопросов.
    @katyfrolova
    Наличие практики, код-ревью
    @jakosoll
    Обратная связь и поддержка наставника
    @EGIZBAEVA_NAZIRA
    ощущение работы над реальным проектом
    @i_va_nov
    Имитация условий реальной разработки
    @zubanik
    практика, код-ревью, поддержка наставника
    @AlexanderShibelgut