Как на практике в Сириусе собрать команду и запустить продукт, если тебе всего 20
За месяц студенты прошли от «перепишите сервис на новый стэк» до полноценного решения, которое можно запускать в работу.
Некоторые компании подходят к производственной практике студентов формально — дают задачи “для галочки” и ставят росписи под нужными документами. Но это не самый грамотный с точки зрения бизнеса подход. Студенты вполне способны справляться со взрослыми задачами и создавать полезные продукты. Даже если времени всего месяц.
Так команда студентов 2–4 курсов Университета «Сириус» в рамках производственной практики в компании «Омега.С» (входит в ИТ-холдинг Т1) разработала веб-приложение «Корпоративные скидки». Решение упрощает доступ сотрудников к эксклюзивным скидкам от партнеров, позволяет фильтровать и выбирать актуальные предложения в разных категориях, предоставляет удобную систему добавления для администратора. Помимо самого сервиса, команда подготовила сопутствующую документацию: технические и системные требования, тест-кейсы и гайды.
Мы поговорили со студентками 3го курса ИТ-колледжа «Сириус» и попросили отрефлексировать свой опыт, а также дать советы таким же командам.
Как собиралась команда
Все мы учимся в ИТ-колледже при Университете «Сириус» и выбрали одно направление для практики. Мы уже знали друг друга, поэтому процесс адаптации проходил быстро, и как таковой притирки не было. Это хорошо, потому что создать продукт нам нужно было всего за месяц.
Что касается распределения ролей, то первоначально хотели пробовать себя во всех направлениях, но в итоге каждый сосредоточился на своей сильной стороне: системный аналитик, дизайнер, backend- и frontend-разработчики, тестировщик.
Здесь другим командам я хочу порекомендовать следующее: сразу распределять роли и, если есть возможность, над такими срочными проектами работать с теми, кого вы знаете и с кем уже взаимодействовали. Так процесс пойдет куда быстрее и слаженнее.
Организация работы
В основном использовали методики Agile, задачи вели на Kanban-доске для эффективного отслеживания текущих статусов и распределения обязанностей. Раз в 2—3 дня проводили созвоны, на которых каждый член команды рассказывал, что сделал за это время, а также задавал вопросы, если какие-то вещи были непонятны. Ежедневно в отдельном чате прописывали итог работы за предыдущий день и план на текущий. В этом же чате задавали вопросы и вместе искали ответы.
Ключевые решения по концепции продукта и требованиям обсуждали с кураторами, а когда у кого-то возникал вопрос, который мог повлиять на дальнейший ход работ, выносили его на обсуждение.
Если возникали разногласия, проводили голосование, в котором участвовали все члены команды. При этом любая из нас могла обосновать точку зрения, чтобы склонить других на свою сторону. Обычно проблемы решались быстро после небольшого обсуждения.
Сложности и как их преодолеть
Главным вызовом для нас стало освоение новых технологий. Мы работали на современном стеке: макеты рисовали в Figma, ER-диаграммы строили в draw.io, API документировали в Swagger.
Frontend написан на JavaScript и фреймворке React, для backend использовали С#, ASP.Net Core и фреймворк Entity как ORM для связи с базой данных, в качестве которой выбрали PostgreSQL. Аутентификация и авторизация в приложении происходили с использованием технологии JWT.
Недостаток опыта и знаний решали через погружение: изучали документацию, советовались с кураторами и применяли знания на практике.
Ближе к концу проекта возникла ещё одна проблема – нехватка времени. Мы устроили собрание, пересмотрели приоритеты и выбрали, что реализовать, а от каких функций стоит отказаться. Гибкость и командная работа помогли нам завершить проект вовремя.
Итоги и советы будущим командам
Проект дал нам много полезного опыта. Мы освоили работу по методологиям Agile и навык распределения ролей и задач. А с точки зрения «хардов» — анализ и составление бизнес-требований и документации к проекту, улучшили навыки разработки и программирования.
Если бы начали заново, то сразу бы чётко установили ключевые дедлайны для этапов разработки продукта. При этом хвалим себя за то, что не побоялись попробовать новые технологии, фреймворки и языки. Да, это заняло больше времени и потребовало больше сил, но дало полезный опыт для будущих проектов.
Самым приятным в работе было конечно получение приятных отзывов от ведущих экспертов холдинга. Так, Алексей Егоров, Lead QA проекта AIR ИТ-холдинга Т1, преподаватель курса по промышленному процессу производства ПО и руководитель производственной практики дал нам следующий отзыв:
Код и функционал, созданные во время практики для веб-приложения “Корпоративные скидки”, соответствуют по уровню качества промышленным стандартам холдинга и могут быть использованы для развития продуктов и систем в Т1