Как за 10 минут обновить программу у миллионов пользователей

DevOps британского финтех-стартапа рассказывает о своей профессии и зачем он нужен ИТ-компаниям 
3 минуты34831

Эта статья ― лишь небольшая часть того, что Арсланбеков Денис рассказал в интервью для нашего проекта GeekSpeak, доступного только студентам платных программ GeekBrains.

Арсланбеков Денис помогает автоматизировать разработчикам доставку их кода до пользователя. Работает в компании ANNA Money, британском финтех-стартапе. Занимается развитием инфраструктуры компании, автоматизацией, помогает разработчикам.


Сокращается время поставки

Я занимаюсь тем, что помогаю автоматизировать разработчикам доставку их кода до пользователя. Каждый день разрабатывается огромное количество кода, огромное количество фич, люди пытаются доставить этот код максимально быстро до пользователя, чтобы бизнес мог получить прибыль. Time to market ― это время доставки твоих изменений кода до продакшена, до пользователя.  Я занимаюсь тем, что сокращаю это время. Мой спортивный интерес ― это сократить количество часов, потраченных на доставку кода. Часов, минут, секунд. Любая секунда важна. Потому что когда становится много команд, если компания успешная, кода начинают писать много, и этот код нужно доставлять до пользователя

Раньше это занимало несколько дней

Вообще я занимаюсь инфраструктурой ― это все, что позволяет запускать тот код, который пишут разработчики. Каждый разработчик делает определенные фичи, будь то frontend, будь то backend, будь то data science ― очень популярное последнее время направление. Им всем нужно доставлять то, что они написали на сервера, с серверов пользователи уже непосредственно получают этот экспериенс взаимодействия с продуктом. 

Раньше разработчики разрабатывали код и чтобы задеплоить его, доставить его на сервер, чтобы пользователи могли получить его и воспользоваться этим продуктом, приходилось проходить определенное количество этапов. Эти этапы получения на сервер, создание релиза в Github, после этого нужно было каким-то образом протестировать это, все это занимало несколько часов в лучшем случае, иногда это занимало несколько дней.

Сейчас при использовании подхода DevOps, при использовании подхода sRE, инфраструктуры автоматизации, мы можем делать автоматически все эти шаги, которые раньше выполнялись руками. И на основе автоматических результатов принимать дальнейшее какое-то решение. 

Раскатываем релиз за 10 минут

Допустим, мы создали релиз на Github, мы протестировали этот релиз, но релиз плохой, что мы делаем дальше? В этом случае приходится подключаться разработчику, либо тестировщику, для того чтобы в ручном режиме решить ― доставлять этот код для пользователей или нет. 

В нашей компании мы релизим сотни изменений в день, и один релиз занимает от 10 до 15 минут. Мы написали какую-то фичу, нажали кнопку ―  через 10 минут это раскатывается на всех пользователей при условии того, что твои тесты проходят, при условии, что у тебя есть живые тесты и они покрывают твой функционал.

Нужна программистская база 

Важно изучение того, как работает операционная система изнутри, каким образом их можно автоматизировать, каким образом мы можем решать те проблемы, которые мы ловим в операционных системах. Также мы должны уделять должное время разработке, потому что DevOps ― это совмещение программирования, автоматизации и операционных систем, плюс понимание того, как это работает. 

Я думаю, что в этой сфере 70% внимания надо уделять операционной системе, а 30% уделять программированию. Но это подходит только тем, кто уже с программированием знаком. Нужно начать с изучения программирования, чтобы в эту историю погружаться, сначала нужна программистская база, а потом уже можно начинать.

Полная версия интервью доступна только студентам GeekBrains

Это лишь небольшая часть того, что Арсланбеков Денис рассказал в интервью для нашего проекта GeekSpeak. В рамках этого проекта мы общаемся с известными учеными, разработчиками и бизнесменами, которые делятся своими знаниями и опытом, а также подробно рассказывают о таких темах, для понимания которых нужно прочитать десятки научных книг и статей, написать сотни тысяч строчек кода или основать несколько стартапов.

К каждому интервью прилагаются полезные материалы, которые спикеры советуют для саморазвития: книги, фильмы, лекции, презентации, подкасты и многое другое.

Посмотреть расширенное интервью и получить подборку материалов могут только студенты платных программ GeekBrains. Хотите стать одним из них? Выберите свою программу обучения здесь.

программированиеаналитикатестирование
Нашли ошибку в тексте? Напишите нам.
Спасибо,
что читаете наш блог!