Почему разработчику лучше развиваться в Банке

В современном мире навыки разработчиков необходимы в компаниях из различных
отраслей и видов деятельности. При выбора места работы для разработчика
основными факторами являются заработная плата, возможность применения своих
навыков, а также возможность развиваться и увеличивать квалификацию в тех
направлениях, которые позволят ему быть востребованным в будущем. Предлагаем
рассмотреть факторы, которые могут стать причиной выбора Банка как места работы
для программиста.
1. Ультрасовременный стек технологий
Постоянная потребность в разработке новых, а также поддержка актуальных
продуктов для компании позволяют не только изучать огромный спектр технологий в
различных сферах, но и предлагать и внедрять новые. Так, за недолгое время мы
успешно обновили свой стек Kotlin’ом, Apache Kafka, Postgres DB в back-end’е и
расширили технологии front-end’а с помощью Angular Framework и Vue.JS
В других компаниях, где ведется IT разработка, могут жертвовать новыми
технологиями в угоду скорости разработки. Отсутствие временных ресурсов на
обучение, а также нежелание перехода отдельными частями команды, могут сильно
влиять в менее масштабных проектах. В нашем же случае, количество команд и
продуктов позволяет найти подходящую, согласно желаемому набору технологий.
2. Промышленные системы
Большое количество банковских пользователей, а также огромное количество
интернет транзакций вынуждает выстраивать строгие критерии к продуктам нашей
компании:
● серверная архитектура должна выдерживать огромные нагрузки и моментально
масштабироваться
● пользовательские данные должны храниться в защищенном месте и быть
доступны 24/7
3. Различная специфика
В нашей команде работает большое количество различных специалистов,
вследствие, появляется возможность изучать интересующие направления, не меняя
места работы, что является большим плюсом для начинающих профессионалов,
которые выбрали направление, но не определились с точечной специализацией.
Незатруднительным будет переход даже между такими разношерстными
казалось бы сферами как:
● многопоточное программирование
● аналитика, прогнозирование,machine learning
● data science
● big data
● криптография
● базы данных
● web разработка
● мобильные приложения
4. Требования к архитектуре
Архитектуры банковских проектов должны проходить испытание временем, именно
поэтому в продукты компании Halyk Bank разработчики закладывают возможность
масштабирования, изменения и гибкости системы. В IT компаниях зачастую нет
проектов, поддержкой которых занимаются на протяжении 7-10 лет. Именно поэтому в
банковской сфере молодые разработчики могут получить опыт работы над
долгосрочными проектами
5. Тестирование
Специфика сервисов и услуг Банка это работа с финансами Клиентов соответственно
информационные сервисы не имеют права на ошибки. Для реализации этого сервисы
подвергаются полноценному всестороннему тестированию:
● unit тесты
● интеграционные
● функциональные
● нагрузочные
Для этого разработчику необходимо владеть методиками и инструментами.
Работа в банке позволяет проводить масштабные A/B тестирования с целью улучшить
существующий User Experiences Design. Масштабы этих тестирований могут расти по
экспоненте и достигать несколько десятков тысяч пользователей. Тем самым, работа
в банковской сфере дарит колоссальный опыт любому Software инженеру и дизайнеру.
В IT компаниях A/B тестирований подобных масштабов не проводится.
6. Кибербезопасность
Финансовые сервисы и инструменты привлекают кибер преступников, благосостояние
которых зависит от уровня уязвимости сервисов. Разработчики обязаны изучать
методы защиты сервисов и требования к безопасной разработке.
7. Аналитика
Качество сервисов Банка достигается в том числе и за счет постоянного анализа и
мониторинга за их работой. Для реализации этого разработчики закладывают в свои
сервисы полноценное логирование всех действий и операций, используя при этом
различные технологии (Elasticsearch). Затем для анализа результатов работы
используются специальные инструменты (Grafana, Prometheus).
Также в сферу аналитики входит работа, не только с действующими внутренними
данными, но и различные средства продвижения, примером которых могут являться
GoogleAds,Yandex Метрики и прочее.
8. Работа с другими командами
Реализация крупных проектов предполагает работу с командами разработчиков из
других компаний (ИТ, аутсорс, вендоры). При этом происходит обмен опытом,
изучение лучших практик и методик.
9. Быстрый профессиональный рост
Возможность перенятия опыта у более квалифицированных специалистов из разных
сфер и система менторинга.
Большая команда работающих людей над проектом, позволяет быстро находить
ответы на вопросы, возникающие во время выполнения задач
10. Методология разработки, CI\CD
Разработка банковских продуктов ведется совместно с бизнес заказчиком по
современным стандартам проектного управления с применением гибких методологий
разработки, в том числе и Agile. Учет задач ведется в системе Atlassian Jira, в качестве
корпоративной базы знаний используется система Confluence.
Непрерывная доставка кода является обязательной частью эффективной разработки
продукта. Используя современный стек технологий, основанный на Gitlab, Jenkins мы
осуществляем прозрачное и бесшовное обновление наших сервисов. В процессе
сборки сервисы проходят весь необходимый путь, включающий проверку качества
кода, проверку на уязвимости и автоматическое тестирование. Жизненный цикл
сервиса включает несколько площадок для тестирования, с целью обеспечить лучшее
качество приложений для наших клиентов.
После прохождения всех стадий тестирования, код доставляется на рабочие
площадки, где непрерывно мониторится с использованием Prometheus и
анализируются все поступающие ошибки. Весь полученный объем знаний мы
используем для улучшения наших продуктов.
На постоянной основе ведется работа по улучшению процессов доставки кода,
улучшению взаимодействия между командами. На новых проектах внедряются
современные системы оркестрации и управления инфраструктурой. Общее развитие
инфраструктуры осуществляется по модели Infrastructure as a Code.
11. Обширная предметная область
Разработка продуктов предполагает изучение предметной области — продуктов и
сервисов Банка.
12. Работа с клиентами, пользователями
В отличие от работы в вендорской компании мы работаем над собственными
продуктами и сервисами, которые предлагаем клиентам. В режиме реального времени
получаем фидбек от пользователей, видим как развивается продукт нашей
деятельности и получаем удовлетворение от разработки того, что используется.
13. Результат работы, бизнес показатели, доходы
Продукты приносят доход Банку и соответственно работникам. В зависимости от
качества работы команды, скорости, стабильности и удобстве сервисов увеличивается
востребованность продуктов Банка у клиентов.
Благодаря развитию уже запущенных проектов, появляется возможность наблюдать
за жизнью процессов и результатами работы команды. Разработанными
интерактивными сервисами банка пользуется большое количество людей — растет
собственная мотивация разработки подобных ресурсов.
14. Hardware & Software
Не редко Банковские процессы реализуются на стыке Hardware и Software технологий.
В качестве примера можно привести аппаратное шифрование, реализованное в
Onlinebank. Или реализация Apple Pay в Home Bank.
15. Финансовые возможности
Финансовые возможности банка позволяют быстро и оперативно внедрять новые
технологии. Например Hardware инженеры в банковской сфере могут получить опыт
работы с очень дорогим оборудованием.
16. Online сервисы
Современные тенденции предполагают уход многих банковских услуг в
дистанционные (онлайн) сервисы. В свою очередь, это обязывает оперативно
перестроить огромное количество бизнес процессов под новые реалии. Разработчики
в банковской сфере получают колоссальный и почти что неизведанный в Казахстане
опыт перестройки банковских проектов в онлайн формат. В качестве примера можно
привести функции «открытие счета» или «онлайн кредитование» прямо в приложении
Onlinebank, работа над которыми ведётся в стенах нашей компании.


Последние новости


Комментарии: 0

Комментариев пока нет.

Оставьте комментарий