Всем привет, я Виталий Трепыхалин – CIO в МКБ. Сегодня расскажу о том, как работает ИТ-дирекция нашего банка: как ИТ-специалисты разных направлений могут получать интересные задачи, а бизнес при этом наследует удобный продукт высокой стабильности, а также о том, как мы организовали обмен опытом с высокой прозрачностью тех инструментов, которые производим в созданной нашей командой с нуля ИТ–Академии. Статья для широкого круга разработчиков, желающих попробовать свои силы в FinTech. Если это направление вас интересует, приглашаю под кат.

Пишем код

Пожалуй, стоит начать с разработчиков и тех инструментов и технологий, которыми пользуются разработчики каждый день, когда пишут, проверяют и заливают свой код в GIT.

Первое – это языки. Для разных продуктов мы применяем разные ЯП, не загоняя себя в узкие рамки, например, Kotlin/Swift хорошо подходят для Android и iOS соответственно — и дают возможность разрабатывать быстрые приложения с плавной работой интерфейса. Python можно использовать как для датасаенс-скриптов, так и для прототипирования, а GoLang/Java/.net для backend и части сервисов.

Разные команды, работающие на конкретном направлении, имеют устоявшийся стек, включая язык, а тимлид при этом помогает обеспечить соблюдение стиля и поддерживаемость написанного кода. Скажу сразу, что legacy с COBOL, который во многом стал притчей во языцех (вот пример), или чего-то подобного у нас нет, а техдолг, неизбежно формирующийся в процессе разработки, мы планово, без суеты и откладываний «на потом», устраняем. Подвал с нашими ДБ-линками распланирован в бэклоги специализированных и продуктовых команд.

Используем стандартные Jira и Confluence для организации рабочих задач и вики по существующим сервисам, чтобы любой разработчик мог проверить, какой функционал нужно реализовать самому, а какой уже можно получить из решений других команд.

Хранение кода, проверка и доставка обновлений происходит в TeamCity и GitLab CI/CD, которые в последние годы уже во многом стали стандартом индустрии. GitLab сервисы уж точно.

Храним данные и собираем метрики

Второе, но не менее важное в работе любого сервиса – СУБД. Тут так же, как и с ЯП, по потребностям и без лишних догм, то есть если структура данных и предполагаемые запросы позволяют использовать SQL, то применяем Postgres или Oracle. В ином случае целый спектр: от Druid/ClickHouse для аналитики до Tarantool и Redis для in-memory и Neo4j для сложных графовых связей.

Метрики и логи с сервисов, как правило, собираем во всем известный ELK (ElasticSeach, LogStash, Kibana). Это удобное и гибкое решение, позволяющее собрать с большого количества сервисов данные об их работе, а потом, в зависимости от потребности, фильтровать их в поиске. Но в целом не ограничиваем себя в стеках по мониторингу и использованию, как централизованных, так и точечно под проект.

Очереди, пайплайны и стримы – все, что нужно для обработки данных в реальном времени или регулярно, – хранятся в RabbitMQ и Kafka.

Развиваем и поддерживаем

Все разнообразие сервисов и сопутствующей инфраструктуры помогают поддерживать как упомянутые выше тимлиды, так и члены совета по архитектуре на ежеквартальном собраниии решают, как в компании улучшить разрабатываемые сервисы. Привычные для всех митапы у нас тоже есть: можно послушать истории о разработке, новых технологиях, которые применили коллеги, а также узнать о плюсах и минусах разных решений.

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

Держим в курсе

Если ты захочешь  подтянуть свои знания в смежной по твоему направлению теме, подробнее изучить какую-то технологию или новый ЯП, в МКБ мы создали ИТ-Академию – это курсы внутри банка, доступ к которым открыт всем работникам по желанию, также на них можно поступить, если ты не являешься сотрудником МКБ, для изучения интересующей темы с возможностью начать работу у нас. Для студентов, в свою очередь, это отличная возможность, так как в отличие от большинства других курсов в сети, вопрос трудоустройства решается на берегу перед началом обучения.

Плюс встречаются кейсы, когда человек может понять для себя, что текущая сфера деятельности ему уже не так интересна и хочется попробовать себя в чём-то другом. Зачастую подобные решения откладываются в долгий ящик из-за страха неопределённости, сопутствующей обучению чему-то новому и поиск нового места работы. В МКБ если сотрудник хочет работать в ином направлении, то мы его только поддержим: обсудим его желания, разъясним те обязанности, которые у него будут на новой позиции. Новые знания он может получить в том числе на платформе ИТ-Академии, а далее все просто – собеседование с новым руководителем.

Вместо заключения или «очень ждем»

Итак я вкратце рассказал о том, как работает дирекция под моим началом и чем мы занимаемся. Банковские сервисы – комплексные продукты, которые нужно обновлять, поддерживать и рано или поздно переписывать. Чтобы все это делать качественно, нужны люди – инициативные, интересные и желающие развивать и развиваться. Сию повесть я написал, чтобы заинтересовать именно таких, пишите в комментариях, удалось ли это, ну и буду рад ответить на вопросы и узнать, что вам было бы интересно прочесть нового в нашем блоге.

Комментарии (0)