Задать вопрос
@grigor

Как создать команду и организовать современный процесс разработки на C#/.NET?

Как на сегодняшний день устроена работа команды разработчиков при создании внутреннего продукта (финансы, собственные платёжные карты, API, коммуникация с банками)? Интересует минимальное и/или среднее количество специалистов с их позициями (например, несколько разработчиков, тестировщик, тим лид, менеджер проекта), а также то, как должен быть организовать процесс работы и взаимодействия между ними + стек ПО (C# + Windows преимущественно), который необходимо использовать.

На входе имеется: команда из четырёх C# разработчиков, одного разработчика баз данных (T-SQL), двух лидов (один отвечает за поддержку продуктов, другой - за разработку, но оба -- C# разработчики), пары менеджеров проектов, троих специалистов тех. суппорта, одного системного администратора. Количество лидов для такой команды, возможно, высоко потому, что из команды ушли 3 разработчика в отдельный проект и ещё 1 уйдёт через 2 месяца. На данный момент планируется нанять 1-2 новых разработчиков и 1 тестировщика, как минимум. При разработке используется методология agile/scrum со спринтами, но без ежедневных стенд-апов. Также в команде как вид отсутствует тестирование и CI/CD. Используется SVN (не git), культуры разработки нет. Также имеется ещё одна команда разработчиков на аутсорсе.

На выходе хочется: полноценную команду, которая будет заниматься поддержкой старых проектов и разработкой новых по современным стандартам. Однако, понимая, что команда застряла где-то в каменном веке, хочется хотя бы с чего-то начать.

Подойдут любые ссылки, любой опыт, любое мнение.
  • Вопрос задан
  • 507 просмотров
Подписаться 1 Простой 1 комментарий
Пригласить эксперта
Ответы на вопрос 3
petermzg
@petermzg
Самый лучший программист
Вот зачем вам 2 менеджера проекта, если приходится этот вопрос задавать здесь?
Ответ написан
Однако, понимая, что команда застряла где-то в каменном веке, хочется хотя бы с чего-то начать.

Ну вот с гита и начните - он вам даст нормальные возможности и для тестирования и для CI.
Вы можете сказать - гит штука гибкая, нужно иметь какие-то требования к организации процесса чтобы подстроить под себя. Это верно, поэтому пока будете объяснять людям чем гит может быть полезен, сами поймёте что вам нужно.

Современный процесс разработки диктуется не языком и даже не платформой, а требованиями бизнеса к гибкости, коротким релизам и быстрому MVP, а также пониманием того, что "если они могут выкатываться 2 раза в день - то и нам бы надо почаще, чем раз в 3 месяца".
Ответ написан
Kubatai
@Kubatai
Техник-программист
Очень сильно не хватает структуризации.
Вам нужно поднять систему управления проектами, в которой вы сможете описать ваши проекты. Например, Redmine.(так как у него есть интеграция в svn, в комментариях к задачам будут отображаться коммиты)
Это поможет вам структурировать ваши проекты, будет некое физическое представление о проекте: список задач/идеи/багов.
Будет очень сложно, так как людей нужно будет приучить все свои действия отражать в системе, указывать свои трудозатраты. Лидам и менеджерам проектов постоянно создавать и распределять задачи.

Очень важную роль правильно использование таких систем, что вам очень поможет в scrum.
Выбираете проект -> Создаете версию на будущий релиз -> Накидываете туда задач(очень важную роль играет правильно выставленная оценка трудозатрат, что позволит не перегружать программистов и оценивать фронт работ)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы