Как в MGA в 5 раз быстрее реализуют проекты при помощи GitLab
Благодаря переходу на GitLab в MGA внедрили практики CI/CD, повысили качество ПО, создали процесс обмена знаниями и сэкономили средства.
Oбзор
В MGA перешли на GitLab с целью улучшения качества и сокращения сроков разработки с использованием автоматизированных процессов CI/CD.
Трудности
В MGA искали экономичную Continuous Integration платформу, которая позволила бы усовершенствовать рабочий процесс, расширить знания и повысить качество кода.
Pешение
GitLab EE
Преимущества
- Автоматические сканеры кода в конвейере CI
- Улучшенные возможности совместной работы
- Повышение эффективности операционных процессов
- Улучшение качества продуктов
- Простота интегрирования
C 80 до 240 ? Увеличение объема проектов
10 ? В 10 раз больший коэффициент успешного выполнения, чем при ручном развертывании CD
80% ? Экономия времени при переходе на CD
Kлиент ? Разработчик корпоративного логического ПО
MGA разрабатывает, создает и внедряет компьютерные приложения для крупных и средних коммерческих и промышленных предприятий. Компания MGA, основанная в 1993 году, создала логическое программное обеспечение, которое использует преимущества реляционной базы данных (Oracle), работающей на операционной системе Linux. В 1999 году MGA создала подразделение аутсорсинга и начали предоставлять бухгалтерские услуги, кадровую поддержку и услуги по расчету заработной платы более чем 30 компаниям.
Tрудности ? Недостатки в совместной работе, поддержке и качестве кода
В MGA сами писали код и использовали Mercurial. Команда разработчиков протестировала бесплатные инструменты, которые позволяли проверять код и поддерживали CI и CD. Это оказалось сложным процессом, так как у программистов не было опыта в использовании подобных инструментов, а поддержка при их установке и применении не предоставлялась. У MGA возникли серьезные проблемы, поскольку Mercurial был слишком сложным, а у разработчиков не хватало опыта в использовании инструментов CI/CD.
ИТ-администраторы были перегружены работой. В команде разработчиков было 25 человек, на которых приходилось всего три системных администратора. Любую связанную с ИТ проблему, возникающую внутри компании, приходилось решать ИТ-администраторам. Не было установленного способа связи между разработчиками и ИТ-отделом, поэтому задержки были обычным делом. В MGA искали инструмент, который позволил бы автоматизировать как можно больше составляющих производства. Также требовалась платформа, которая оптимизировала бы совместную работу для устранения проблемы контроля версий.
Из-за невозможности совместной работы и отсутствия общего доступа к документации снижалось качество кода. «Мы начали искать инструменты, которые позволяли бы нам просто осуществлять проверку кода и создавать политику утверждения для управления кодом. Вторым приоритетом было системное использование CI/CD с целью упростить работу и свести к минимуму штат администраторов», – рассказывает главный ИТ-администратор Якуб Тадея.
У команд также возникали проблемы с распределением знаний. В MGA справочная информация хранилась на внутренних вики-сайтах, в задачах Redmine, записях от руки и некоторых приложениях. Ресурсы были разрозненны, неорганизованны и их было трудно найти. Новым сотрудникам приходилось самостоятельно разыскивать документацию о внутренних системах. ИТ-специалисты и разработчики MGA теряли время и деньги, не имея подходящих инструментов для решения всех проблем.
Pешение ? Динамичный инструмент по выгодной цене
В MGA протестировали различные инструменты. Обнаружив простой пользовательский интерфейс GitLab, в компании приняли решение перейти с Mercurial на GitLab. Еще одним аргументом в пользу GitLab был Deviniti – официальный партнер GitLab в Польше. Проработав неделю с этим хорошо зарекомендовавшим себя партнером, в MGA окончательно решили продолжить работу с GitLab. «Для покупки MGA требовалась польская валюта и польские счета. Большинство польских клиентов ищут местного партнера, который сможет продавать им продукцию», – поясняет директор по продажам Deviniti Радослав Косец. Поддержка и знания местных особенностей со стороны Deviniti способствовали быстрому переходу MGA на новую платформу. В MGA до сих пор очень довольны партнерством. «Работать с Deviniti – одно удовольствие. Рекомендую!», – добавляет Тадея.
Тарифный план GitLab подходил MGA больше всего. Это стало важным фактором в принятии окончательного решения. «Мы зарабатываем меньше, чем компании на Западе… Мы искали решение, которое бы позволило размещать приложения на нашем сервере. Насколько мне известно, GitHub и прочие облачные решения не позволяют этого сделать. Их невозможно использовать локально», – поясняет Тадея.
До начала использования GitLab программисты работали в небольших командах над мелкими проектами. Но по мере роста компании увеличивались объемы проектов и численность команд. Внедренные инструменты уже не справлялись с такими масштабами. «Благодаря GitLab, создание наших проектов полностью изменилось», – утверждает Тадея. «Первоначально у нас не было больших ожиданий. Нам просто был нужен новый инструмент, который дает возможность создавать конвейер CI/CD и политику проверку кода. Большего мы не ждали. Однако, как выяснилось, GitLab может предложить намного больше. Постепенно мы начали экспериментировать с функциями, и нам понравилось».
Благодаря GitLab, команды смогли планировать дорожную карту ПО и устанавливать сроки окончания проектов. «Мы начали планировать проекты, используя непрерывную интеграцию и развертывание. GitLab полностью изменил архитектуру нашего решения», – говорит Тадея.
«У CD как минимум в 10 раз больший коэффициент успешного выполнения, чем у развертывания вручную. У нас есть проекты, где ни разу не подвело автоматическое развертывание». Якуб Тадея, Главный ИТ-администратор
Pезультаты ? Лучшие программы, больше разработчиков и единая база знаний
«Успех с самого начала – все шло как по маслу. В этом было самое большое преимущество, потому что мы легко установили GitLab и обновили его. Начать работу было очень просто», – рассказывает Якуб. Подготовка серверов к переходу на GitLab заняла у MGA примерно неделю. В течение года все проекты перенесли в новый инструмент. «Было очень просто начать работу. У нас не возникало никаких проблем», – добавил Тадея.
До перехода на GitLab было 3 ИТ-администратора и 30 разработчиков. Теперь у нас более 60 разработчиков, которых легко обслуживают три ИТ-администратора, и много других серверов. Задержки больше не возникают, поскольку большая часть проблем больше не ложится на плечи ИТ-администраторов.
С начала использования GitLab количество проектов увеличилось с 80 до 240. «В запущенных проектах все выполняется через CI и CD. По мере необходимости мы просто решаем проблемы и учим разработчиков пользоваться инструментами GitLab», – поясняет Тадея. «Теперь наша работа более эффективна, и мы можем уделять больше внимания коду, не отвлекаясь на простейшие задачи, которые можно автоматизировать».
Качество программ повышается, так как разработчики имеют возможность повысить качество кода. «Я убежден, что мы обеспечиваем гораздо лучшее качество кода, и что еще важнее – стала возможной совместная работа по созданию кодов для более крупных проектов», – говорит Тадея. «Теперь мы можем проверять коды и текстовые заметки, а также делиться ими… Я считаю, что это значительно упрощает работу».
Новым сотрудникам теперь гораздо проще войти в курс дела, поскольку MGA все документирует. Разработчики могут проверить конфигурацию CI и, исходя из YML, определить, как все настроено. Каждый программист знает, где найти необходимые знания, что экономит время и избавляет от лишних проблем. «Теперь, вместо нескольких недель обучения, адаптация новых сотрудников сводится к тому, чтобы показать им, где стоит кофеварка и где находится туалет», – отмечает Якоб.
Благодаря поддержке GitLab, MGA быстрее создает более качественные программы, улучшив процессы тестирования и проверки качества кода. ИТ-специалисты и команды разработчиков стали специалистами в области CI/CD и создают оптимизированные системы автоматизации, при этом сводя к минимуму потребности в ИТ-администрировании и повышая эффективность затрат.
Вся информация и лица, упомянутые в приведенном примере, соответствуют действительности на момент публикации.
aamonster
Я один прочитал заголовок как "в MGA затягивали разработку проектов в 5+ раз"?
JordanoBruno
Именно так по факту и читается. Уж боюсь представить, какой ад у них был раньше.
aamonster
Честно говоря, подозреваю, что всё было не так плохо – просто написать эту статью доверили авторке без опыта разработки.
Не ругая GitLab (охрененное решение на самом деле) – не поверю, что всё могло быть настолько плохо. Когда разработчики чуют такое торможение – они или начинают делать какой-то свой CI на коленке, или находят готовое решение и ставят его. Или увольняются к хренам, потому что работать в таких условиях (когда на ровном месте тратишь в 5 раз больше времени, чем надо) решительно невозможно.
JordanoBruno
Да не, там не в статье дело.
Мне вот интересно, чему они раньше неделями обучали. Загадочная контора.