Изображение: ДЭВИД ХОЛТ , CC BY 2.0
По статистике портала Stack Overflow, финансы входят в десятку самых популярных отраслей среди разработчиков.
Сегодня мы поговорим о том, чего следует ожидать профессионалам, планирующим начать карьеру в финансовых компаниях.
Рабочие условия
Работа в сфере финансов определенно отличается от работы в стартапах или крупных ИТ-корпорациях.Существует более традиционный подход к организации рабочего процесса; редко встретишь «дизайнерские» офисы или много развлечений для сотрудников.
Часто существует определенный дресс-код, который может быть необычен для разработчиков, работавших в стартапах.
Например, не так давно журналисты Business Insider выполненный анализ популярности финансовых компаний среди соискателей работы от LinkedIn и установил, что Morgan Stanley, занявший 4-е место, привлек многих именно отсутствием чрезмерно строгого дресс-кода (по сравнению с другими банками).
Устраиваясь на работу в инвестиционный банк, хедж-фонд или брокерскую фирму, тоже сложно рассчитывать на дизайнера.
офис с огромными игровыми и спортивными площадками, массажными кабинетами, комнатами для сна и совершенно бесплатным питанием.
Скорее всего, что-то из этого произойдет, но не в таких масштабах, как в условном Google.
Например, в Офис Голдман Сакс есть тренажерный зал, и работники могут получить скидку по клубным картам.
Интересный факт: экономические новости даже отображаются на экранах мониторов симуляторов:
Как видите, по внешним атрибутам «крутости» финансисты могут уступать IT-стартапам и крупным технологическим компаниям.
Почему же тогда многие разработчики до сих пор выходят в эту сферу? Этому способствует возможность использовать передовые технологии при работе над интересными проектами.
В каких проектах вы можете принять участие?
Финансовый рынок представлен широким спектром компаний: есть биржи, банки, инвестиционные фонды, брокерские фирмы и независимые разработчики программного обеспечения (например, торговых роботов).Соответственно, разработчики могут участвовать в самых разных проектах: от написания торговых систем и инструментов для работы с большими данными до построения инфраструктуры с использованием самого современного оборудования.
На примере ITI Capital можно понять, с чем сталкиваются ИТ-специалисты в брокерских компаниях.
Мы разрабатываем собственную торговую систему Matrix, терминал СмартХ (подробнее об истории этого проекта можно прочитать Здесь ), разрабатывает API для нашей инфраструктуры под названием СмартКОМ .
Отдельное направление — создание мобильных приложений для онлайн-торговли.
Интерфейс торгового терминала SmartX
В финансах важна скорость и максимальная производительность, поэтому много усилий тратится на улучшение этих показателей создаваемых программных продуктов.
В блоге мы неоднократно рассказывали о том, как, например, оптимизация работы торговый терминал.
Общие языки программирования
Значительная часть инфраструктуры брокерских компаний и бирж создана с использованием языка C++ — с его помощью создаются самые разные продукты: от библиотек для расчета ценовых моделей производных инструментов до модулей обработки потоков данных.Специалисты, владеющие этим языком, пользуются большим спросом.
Более того, сам создатель языка Бьёрн Страуструп, работает в инвестиционном банке Morgan Stanley в должности технического директора.
Помимо C++ широко используются C# и Java — они часто используются для реализации отдельных частей торговых приложений или интерфейсных сервисов финансовых компаний (например, графического интерфейса торговых терминалов).
Языки сценариев, такие как Python, MATLAB и R, также используются для описания торговых стратегий и моделей-прототипов.
Языки сценариев также популярны и могут быть встроены даже в торговые терминалы, такие как Трейдскрипт , с помощью которого можно писать торговых роботов прямо внутри терминала SmartX.
Простая стратегия на TradeScript, написанная в окне торгового терминала
Помимо этого, по данным данные Среди рекрутеров финансовых компаний, опрошенных порталом Efinancial Careers, востребованы разработчики Python — этот язык незаменим для создания аналитических инструментов и квантовых моделей; технологии обработки данных, такие как Hadoop, Cassandra и Scala, также набирают популярность.
Что еще нужно знать?
У каждой компании свои требования, но некоторые тенденции в этом направлении сформулировать можно.Специалистам по инфраструктуре не придется вносить какие-либо серьезные коррективы при переходе в финансы, но разработчикам могут потребоваться некоторые специфические знания.
Чтобы устроиться на работу в серьезную финансовую компанию, необходимо отлично знать ООП и стандартные алгоритмы.
Разработка клиент-серверных финансовых систем также идет рука об руку с многопоточным программированием.
Поэтому специалисту не стоит бояться задач, связанных, например, с написанием стандартного TCP-сервера, сервера балансировки нагрузки и высокопроизводительного сервера.
Финансовые системы основаны на базах данных, поэтому разработчикам потребуются глубокие знания SQL. Знания простых операторов выбора будет недостаточно — довольно часто в процессе работы вам придется сталкиваться с созданием процедур хранения, работой с индексами и различными типами блокировок.
Торговые системы обычно используют платформу UNIX (часто Linux).
Как правило, торговые терминалы с графическим интерфейсом создаются под Windows, а UNIX используется для разработки «движка» торгового ПО.
Кроме того, специалисты, занимающиеся разработкой торгового программного обеспечения, должны уметь работать с графический процессор , сопроцессоры и современные сетевые карты (например, Mellanox и Solarflare).
Не забывайте о технологических знаниях, применимых именно к финансовой сфере — прежде чем искать работу в обычной брокерской компании, стоит разобраться, например, в протоколах передачи данных типа FIX или, в случае с Московской биржей, ASTS Bridge. - в нашем блоге опубликована целая серия материалов об этих технологиях ( ИСПРАВИТЬ , Быстрый , Плаза II , Мост АСТС ).
Другие материалы по финансам и фондовому рынку от ИТИ Капитал :
- Аналитика рынка и обзоры
- Назад в будущее: проверка работоспособности торгового робота на исторических данных
- Событийное бэктестирование в Python шаг за шагом ( Часть 1 , Часть 2 , Часть 3 , Часть 4 , Часть 5 )
-
Идеальные Бизнес-Решения В Deducta
19 Oct, 24 -
Преимущества Сетевого Обучения
19 Oct, 24 -
Первый Воодушевитель
19 Oct, 24 -
Умер Александр Исаевич Солженицын
19 Oct, 24