Почему банки выбирают java
Перейти к содержимому

Почему банки выбирают java

  • автор:

Какие языки наиболее востребованы в сфере финансов: мнения рекрутеров с Уолл-стрит

Специалисты портала Efinancial Careers попросили рекрутеров инвесткомпаний рассказать им о том, какие языки программирования являются сейчас наиболее востребованными Уолл-стрит. В нашем блоге — адаптированная версия этой заметки.

Java

Java — это наиболее востребованный язык программирования на Уолл-стрит в течение долгих лет.

«Специалисты по Java нужны для выполнения разных задач: от разработки систем высокочастотной торговли и управления заявками до создания собственных платформ риск-менеджмента финансовых компаний», — говорит Джаред Батлер, глава финансово-технологического рекрутинга для Северной Америки в Selby Jennings. Язык Java также хорош для проведения симуляций и моделирования работы торговых стратегий, считает Джон Рид, старший исполнительный директор Robert Half Technology.

Повышенный интерес компаний финансового сектора к Java-разработчикам связан с жесткой нехваткой квалифицированных специалистов этого профиля. «В конце прошлого года в нашей базе было только семь кандидатов на каждую должность, этот показатель гораздо ниже, чем в случае других языков программирования». Также Рид сказал о том, что разработчики Java могут требовать зарплату, которая на 10% выше по сравнению с другими специалистами на рынке.

Python

Этот язык программирования прошел долгий путь до того, как был впервые использован в программе Quartz Банка Америки и в системе Athena от J.P. Morgan. Python просто незаменим при создании аналитических инструментов и квантовых моделей, которые являются, по мнению Шиллер, важнейшими средствами, способствующими созданию эффективных торговых стратегий инвестиционных банков и хедж-фондов.

Кроме того, «Python применяется все больше из-за своей простоты, в отличие от традиционных языков», — говорит Батлер, который привел ряд аргументов, почему этот язык может вытеснить вышеупомянутый Java в деятельности инвестиционных банков.

«Программисты могут сделать при помощи десяти строк кода Python то же самое, что и двадцатью строчками С++, с гораздо меньшей вероятностью ошибки», — убежден рекрутер.

Банки Merrill Lynch и J.P. Morgan нанимают огромное количество Python-разработчиков. «Bank of America и J.P. Morgan построили большинство своих трейдинговых систем на Python и продолжают привлекать специалистов данного профиля. Другие банки и инвесткомпании начинают обращать больше внимания на Python-программистов», — сказал Ник Вермайер, главный технический рекрутер Pencom Systems.

C++ и C#

«С++ остается популярным языком программирования в высокочастотной торговле хотя бы потому, что это наиболее эффективный инструмент для создания хорошо оптимизированных систем бэктестинга и торговых движком для обработки большого объема данных», — говорит Батлер.

Шиллер согласилась с этими словами, но также добавила, что С++ часто используется еще и для создания приложений, работающих с устаревшими банковскими системами. «Из-за высоких затрат на внедрение новых технологий по-прежнему сохраняется спрос на специалистов, способных работать со старыми системами», — сказала она.

Как и Java, С# может использоваться для решения разных задач, в том числе и для создания финансовых моделей. Этот язык находится на втором месте по степени «дефицитности» квалифицированных специалистов, что дает им привилегию и возможность получения большей заработной платы. Рид сказал, что разработчики С# могут получать на 9-10% больше денег относительно своих коллег-экспертов в других языках.

«С# все еще используется, часто квантами и при разработке быстродействующих торговых систем», — поясняет Кристиан Гловер Уилсон, вице-президент технологий и стратегии в Tigerspik.

Другие языки

Под другими языками программирования в этом материале имеются в виду SQL, PHP и ETL.

«Мы видим, что инвесткомпании нанимают и специалистов, обладающих разными навыками, от знания более старых технологий ETL, таких как Informatica, и до более современных инструментов для работы с большими данными, вроде Hadoop, HBase, HDFS, MapReduce, Pig, Hive, Impala, Flume», — говорит Батлер. «Технологии ETL по-прежнему важны для хранения данных, а также для хранения крупных финансовых массивов информации, используемых, в частности, инвестиционными банками в глобальных масштабах».

С другой стороны, спрос на Microsoft Windows Presentation Foundation (WPF) снижается, а HTML5, вместе с Hadoop, Cassandra и Scala, становятся более востребованными на Уолл-стрит…

«Популярность технологий для обработке данных, такие как Hadoop, Cassandra и Scala растет, мы видим, что все больше и больше финансовых организаций внедряют их», — сказал Вермейр. «C++ и C#, как правило становятся основными средствами разработки, интерес к работе с WPF ослабевает, а к использованию HTML5 — растет».

Вермайер поддержал эту позицию: «Мы также наблюдаем рост спроса на технологии по передаче крупных массивов данных, поскольку компании ежедневно сталкиваются с огромными объемами информации. Очень часто они необходимы в качестве сопутствующих технологий в дополнение к основным языкам программирования, таким как Java или Python. Наиболее востребованными крупными технологиями по работе с данными являются Cassandra, Spark и Hadoop».

Другие материалы по теме финансов и фондового рынка от ITI Capital:

  • Аналитика и обзоры рынка
  • Фьючерсы, индексы и IPO: как на самом деле устроены биржи и зачем они нужны
  • Топ-10 книг для понимания устройства фондового рынка
  • Фьючерсы, индексы и IPO: как на самом деле устроены биржи и зачем они нужны
  • Инфраструктура российского рынка ценных бумаг (краткий ликбез)
  • How-to: роботы и API брокерской торговой системы
  • языки программирования
  • биржа
  • финансы
  • торговые роботы

Почему язык Java так популярен в коммерческой разработке ПО?

С момента своего создания Java является одним из наиболее распространенных языков программирования. По приблизительным подсчетам, около 3 миллиардов устройств по всему миру работают именно на этой технологии. А ежегодный отчет State of the Octoverse показал, что в 2020 году язык Java вошел в тройку лидеров по популярности. Причина, по которой уже на протяжении 26 лет язык программирования не сдает своих позиций, заключается в постоянном его развитии и обновлении. А участие мировых ИТ-гигантов в развитии технологии только подтверждает, что Java еще долго будет востребована многими бизнесами и программистами.

Что пишут на языке Java?

Т.к. Java считается универсальным языком программирования, сегодня его используют в различных сферах и для совершенно любых задач. Несколько десятков лет назад, технология применялась исключительно в индустрии цифрового и кабельного телевидения, затем получила широкое распространение в других отраслях, включая e-comm, fintech и даже igaming. Сегодня Java используется для разработки следующих продуктов:

  • Серверные/корпоративные приложения. Известные мировые компании уже давно выбирают Java для своих ИТ-проектов. Такие решения славятся своей надежностью, отказоустойчивостью, облегчают компаниям процесс масштабирования и обладают возможностью гибкой интеграции. Пользователи продуктов легко осуществляют необходимые финансовые и торговые операции.
  • Мобильные приложения. Хотя существуют и другие инструменты для разработки приложений для Android, большинство из них написаны на Java, с использованием API Google для Android.
  • Веб-приложения. Многие правительственные, медицинские, страховые, банковские, образовательные и оборонные структуры имеют свои веб-приложения, разработанные на Java. ИТ-продукты полностью удовлетворят запросам компаний и их пользователей.
  • Десктопные приложения. Такие продукты используются во всех отраслях: от ecommerce-проектов до крупных порталов, образовательных платформ и т.д. Это могут быть как программные продукты, например, для торгового учета, так и, скажем, системы контроля успеваемости обучающегося.

Язык программирования Java применяют многие технологические ИТ-гиганты, например, компании IBM и Google. Компании решили использовать Java в качестве основного языка программирования для своих ключевых программных продуктов. Известность корпораций способствовала ускоренному развитию Java, вследствие чего, технология оказалась в самом центре коммерческих разработок.

Топ-9 преимуществ языка программирования Java
Что пишут на языке Java?
1. Java прост и удобен в использовании

Зачастую Java становится самым первым языком программирования, который пытаются освоить “новички”. Его синтаксис близок к английскому языку, что делает написание кода сравнительно простым и понятным для многих специалистов. Java позволяет быстро создавать программные решения, а статическая типизация языка способствует своевременному выявлению багов в коде при компиляции. Java значительно проще, чем, например, языки C или C++, где легко допустить ошибки, которые приведут к дальнейшим сбоям в программе. Язык довольно прост для опытных разработчиков. Если специалист хорошо владеет C и C++, то изучение Java не займет много времени.

2. У языка Java хорошо проработанная документация

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

3. Java включает большой набор инструментов для разработки

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

4. Язык Java обладает высоким уровнем безопасности и надежности

В условиях развития киберпреступности, требования к безопасности приложений постоянно растут. Язык Java имеет широкий выбор встроенных механизмов и подходов, позволяющих разработчикам писать более безопасные программы. Например, в Java нет возможности прямого доступа к адресам памяти, в отличие от C/C++, что позволяет избежать множества непредвиденных ситуаций. Также в языке реализована продвинутая модель управления памятью и сборкой мусора. Кроме большого количества встроенных решений, программистам доступны различные библиотеки и инструменты, которые можно использовать для обеспечения требуемого уровня безопасности приложений и сервисов. Например, реализованные алгоритмы шифрования данных, библиотеки для авторизации и аутентификации сетевых запросов, средства для санитайзинга входящих данных. Наличие таких возможностей позволяет Java отлично справляться с различными киберугрозами.

5. Java — это многопоточный язык программирования

В современной разработке все актуальнее становится вопрос эффективной утилизации серверных мощностей и повышения производительности приложений. Один из способов решения этих вопросов – написание многопоточных приложений. Именно такой подход при написании программ позволяет распараллелить выполнение различных частей кода и эффективнее использовать ресурсы центрального процессора. Java-программистам доступно множество инструментов для простого и удобного использования этого способа. В стандартной библиотеке языка есть как низкоуровневые, так и высокоуровневые примитивы для написания многопоточных приложений. Такие особенности делают Java идеальным языком для решения широкого круга задач.

6. Java – кроссплатформенный язык

Наиболее известной особенностью языка Java является его кроссплатформенность – код можно писать и запускать практически на всех платформах и устройствах, для которых существует виртуальная машина Java (JVM). Благодаря этой возможности, Java по праву считается самым универсальным и гибким языком программирования. Например, написанную программу для Windows можно беспрепятственно запустить на устройстве, работающем под управлением Mac OS или Linux.

7. Java поддерживает обратную совместимость

Java – один из немногих языков, который обеспечивает обратную совместимость. Говоря другими словами, приложение, написанное 10 лет назад, может быть с легкостью запущено на современной версии JVM. Данный подход дает пользователям языка уверенность в том, что разработанные решения можно будет поддерживать долгие годы.

8. Язык Java активно развивается

Несколько лет назад, порядок выхода новых версий Java изменился. Теперь все обновления попадают в сам язык значительно быстрее и тем самым делают его развитие еще более динамичным. Также, благодаря preview feature, у разработчиков языка появилась возможность протестировать новые фичи и получить обратную связь по ним от пользователей перед тем, как добавлять их в основную ветку.

9. Язык Java популярен у разработчиков

Т.к. Java является одним из самых популярных языков программирования в мире, подбор разработчиков будет сравнительно менее трудозатратным, ввиду более широкого пула кандидатов, по сравнению, например, с C++ или C-программистами. Выбор более редкого языка программирования приведет к сокращению числа профильных специалистов, затруднит поиски компетентных кадров и, как следствие, увеличит стоимость проекта.

Существует множество языков программирования, которые используются для разработки корпоративного программного обеспечения. Одни из них более популярны, другие – менее. С момента своего появления в начале 90-х годов, Java удается успешно конкурировать с более молодыми языками программирования и по-прежнему оставаться основной технологией для разработчиков и многих мировых корпораций. Благодаря своей гибкости, простоте, безопасности и способности адаптироваться к различным задачам, Java стал универсальным решением для разнообразных коммерческих проектов. А регулярные обновления и возможность сохранения обратной совместимости между версиями лишь добавляют дополнительные баллы в общую копилку его преимуществ. Многолетняя положительная репутация Java дает основания полагать, что язык не потеряет свою актуальность еще несколько десятилетий и всегда будет востребованным среди компаний и программистов.

Сбербанк готов заплатить Java-разработчикам 3 миллиарда рублей

Сбербанк собирается привлечь до 15 команд разработчиков на Java, чтобы модернизировать действующее и создать новое ПО для своих многочисленных сервисов. На эти цели банк выделил 3 млрд руб.

Миллиарды для ПО на Java

Как выяснил CNews, Сбербанк готов потратить порядка 3 млрд руб. на разработку и модификацию уже существующего прикладного ПО, создание которого подразумевает использование инструментов и технологий Java. Эта сумма заявлена в качестве начальной цены договоров в рамках тематического конкурса организации, разбитого на 15 лотов.

В частности 410,8 млн руб. банком зарезервировано на развитие функциональности процессинга, 440 млн руб. — развитие сервисов для бизнеса, 316,4 млн руб. — развитие сервисов по обслуживанию физических лиц, 261,5 млн руб. — развитие функциональности фронтальной системы, 179,8 млн руб. — развитие сервисов по обслуживанию платежей, 185,3 млн руб. — развитие функциональности сервисов банковских карт, 204,4 млн руб. — развитие функциональности системы терминальных устройств, 120,4 млн руб. — развитие функциональности эквайринга, 138,4 млн руб. развитие процессинга зарплатного проекта, 58,9 млн руб. — развитие фронтальных систем зарплатного проекта.

Кроме того, 153,8 млн руб. выделено на создание и развитие процессинга лояльности, 176,7 млн руб. — развитие инфраструктуры партнеров программы лояльности, 98,1 млн руб. — развитие функциональности по начислению бонусов «Спасибо», 130,6 млн руб. — развитие функциональности начисления бонусов по карточным операциям, 120,9 млн руб. — развитие функциональности программы лояльности.

sber600.jpg

Сбербанк привлечет до 15 команд на ПО-проекты на Java

Тендер по выбору подрядчиков стартовал 21 мая 2020 г. Прием заявок от претендентов продлился до 16 июня. На определение победителей банк отвел себе более двух месяцев — итоги конкурса будут подведены в срок до 26 августа. Исполнителям работ необходимо будет выполнить весь фронт работ до 31 декабря 2022 г.

Некоторые подробности нового тендера

Как следует из тендерной документации, новые Java-проекты сбербанка будут реализованы в офисах банка в Москве и Новосибирске. В зависимости от локации стоимость работы специалистов была оценена по-разному. Например, если в столице условный день работы главного разработчика со всеми многочисленными налогами и сборами в предельном значении стоит 28,4 тыс. руб., то в Сибири — лишь 24,1 тыс. руб. (см. таблицу).

Начальные максимальные ставки Java-специалистов для Сбербанка

Роль в проекте Предельная стоимость человекодня в Москве, включая все применимые налоги, сборы и т. п., тыс. руб. Предельная стоимость человекодня в Новосибирске, включая все применимые налоги, сборы и т. п., тыс. руб.*
Главный разработчик 28,36 24,10
Ведущий аналитик 20,73 17,62
Разработчик 11,33 10,20
Ведущий разработчик 20,73 17,62

Юрий Мацыгин, НОТА: Российские инхаус-решения не имеют аналогов на мировом рынке
Цифровизация

* применимо к лотам 11-14

Одним из важных ограничений в условиях тендера можно считать указание на то, что каждый специалист из проектной команды участника конкурса (в том числе коллективного), признаваемого победителем более чем по одному лоту, может быть задействован только в одном проекте и только в одной роли. «Не допускается заявлять одних и тех же специалистов проектной команды на несколько лотов», — говорится в документах.

Интерес Сбербанка к Java

Напомним, летом 2019 г. Сбербанк уже искал Java-разработчиков для модернизации и создания нового ПО. Тогда по итогам сверхажиотажного конкурса с начальной ценой договора в 755 млн руб. соглашения были подписаны сразу с семью организациям на общую сумму примерно в 640 млн руб. В частности «Философия.ИТ» получила 144 млн руб. (речь и далее о предельной, но не гарантированной сумме), «Айфэлл» — 91,9 млн руб., «Бэлл интегратор» — 151,1 млн руб., «Эпам системз» — 101,7 млн руб., «Техно диасофт» — 100,7 млн руб., «Джет софт» — 100,2 млн руб., «Корус консалтинг СНГ» — 50,4 млн руб.

Также отметим, что 1 июня 2020 г. CNews писал о проекте входящей в экосистему Сбербанка компании «Корус консалтинг СНГ» по организации учебного процесса для начинающих технических специалистов по направлениям Java и JavaScript, который подразумевает участие студентов в реальных проектах компании, а также включение молодых разработчиков в штат «Коруса».

Самые востребованные языки программирования в банковской сфере

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

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

Вас также могут заинтересовать наши подборки:

  • Новые вакансии на должность SQL-аналитика
  • Вакансии на должность IT специалист или программист
  • Работа для программистов 1С

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *