Всем привет! Я Александр Белотуркин, работаю Дев Менеджером в ТехЦентре Дойче Банка, куда пришел более 4-х лет назад. В первый день было непривычно. По сравнению с IT компаниями, где большинство приходит в джинсах и футболках, было очень необычно увидеть людей в строгих рубашках и говорящих по телефону на английском. Но со временем атмосфера стала привычной и дружной. Меня заинтересовала, с одной стороны, близость к конечному пользователю, умение и желание этого пользователя объяснять суть проблем, которые мы совместно решаем, а с другой стороны — коллеги, которые так трепетно относятся к качеству своей работы. И, забегая немного вперед, скажу: нет, мы не пишем бухгалтерию под win98, мы делаем самую эффективную в мире платформу для торговли валютными деривативами и еще много всего интересного.
Итак, я работаю в Дойче Банке, в российском Технологическом Центре. Что значит работать IT специалистом в таком крупном инвестиционном банке? Это значит, что все ваши родственники и друзья будут уверены, что вы заранее знаете, что будет с рублем и какую картинку выберут на банкноты 2000 рублей (Владивосток). Но вы по каким-то причинам это скрываете и, скорее всего, по корыстным.
На самом деле, отвечать на этот вопрос можно очень долго: достаточно примерно представить, как много людей и всевозможных бизнес-процессов существует в банке. К примеру, в Дойче Банке работает более 80.000 человек. Есть примерно 40 стран, население которых меньше. Исландия, которая покорила всех на чемпионате мира по футболу, имеет население около 330 000. Учитывая только трудоспособное население, можно предположить, что среди людей, которые могут играть в футбол, Дойче Банк соизмерим с Исландией и в теории может собрать сборную уровня чемпионата мира. В теории…
Было бы странно думать, что организация такого масштаба может обходиться без серьезной IT-поддержки. Конечно, в таком крупном банке есть IT-инфраструктура и множество созданного программного обеспечения. Инвестиционные банки давно перестали быть организациями вокруг экономистов и банкиров. Сейчас в центре инвестиционных банков стоит IT. Именно IT становится тем, что определяет эффективность бизнес-процессов, определяет, чья заявка первой попадёт на биржу, кто лучше просчитает риски по сделкам или кто первым и более качественно предоставит инвестиционные решения своим клиентам.
Так что же всё-таки значит работать в инвестиционном банке? Для меня это в первую очередь работать рядом с большими профессионалами. Концентрация умных людей здесь очень высока. Некоторое время назад я работал с командой, которая занимается High Frequency Trading. Они борются за микросекунды для алгоритмов торговли на биржах. Вы читали статью «What every programmer should know about memory»? (Гуглим и читаем). Вот, я думаю, эти ребята могут сами всем рассказать, что нужно знать о памяти и обо всех остальных кишках современных систем, чтобы за 10 микросекунд среагировать на изменение цены, сделать сложный расчет и отправить заявку на биржу.
На моем проекте есть квант, живущий в Лондоне. Это один из тех людей, подобных которому во всем мире — единицы, а я могу общаться с ним каждый день и частенько не один час. Правда, после разговоров с ним чувствуешь себя первокурсником. Его знания математических расчетов финансовых инструментов и всей внутренней кухни просто поражают.
Ну, конечно, есть легаси код: Дойче Банк в России уже 135 лет. Язык программирования «С» изобрели в начале 70-х. Очевидно, что софт в банке писался не последние 5 лет, как в молодом стартапе, а значительно дольше. Но там, где нужны передовые решения и технологии, неэффективности очень быстро устраняются. В итоге, те легаси, что есть, — это хорошо написанные, стройные приложения, которые порой ничем не уступают современным решениям. Рядом со мной сидел человек, который по стечению обстоятельств занимался переписыванием одной легаси системы, в которой зачастую с помощью отладки было проще разобраться, чем с помощью исходников. Вот он получал заметное удовольствие от возможности раскопать что-то там, разобраться в исходной мысли автора и улучшить её сначала логически, а потом и в техническом плане. В итоге удалось сэкономить неприличную сумму на поддержке старого решения, улучшить поведение системы и просто гордиться проделанной работой. Но это работа не для всех.
Я всегда говорю, что нельзя написать хороший продукт, если вы не знаете, что и для кого вы делаете. Это, конечно, заставляет изучать некоторые банковские теории. Нужно ли это всем? Нет, есть проекты, которые к бизнесу имеют малое отношение и скорее представляют собой инфраструктурную составляющую. А есть проекты, где без понимания бизнеса нечего делать. И здесь, как говорится, на вкус и цвет… Я, например, очень интересуюсь расчетами всевозможных деривативов, соответственно, могу приносить намного больше пользы в проектах, где эти знания будут полезны. Что точно необходимо, так это знание английского языка, так как зачастую даже переписка внутри команды идет на английском, не говоря уже про общение с бизнес-пользователями.
Если коротко, то — разные. Есть, конечно, какие-то стратегические решения (никто ведь не хочет разношерстную IT-инфраструктуру), но в то же время в основном это зависит от проекта и его потребностей. Если есть аргументированное понимание, почему должен использоваться тот или иной софт, никто не будет заставлять вас использовать что-то совсем неподходящее. Плюс ко всему, есть достаточно крупные проекты, где есть необходимость и целесообразность использовать какие-то дорогие/крупные решения, и, соответственно, есть возможность пощупать такие системы и продукты. У меня, к примеру, в проекте 10000 CPU, которые постоянно что-то считают. Оптимизация алгоритмов на пару процентов экономит существенную сумму на электричестве от этих CPU.
В этом плане новый проект в банке не отличается от стартапа, git, mongo, hadoop,- все что нужно, если обосновано. Недалеко от меня, к примеру, коллеги используют Scala и Actors. Часто подслушиваю, что они там обо всем этом думают =).
Зависит от команды. Кто-то выбирает одно, кто-то другое. Мы не процесс-ориентированные. Если хотим и можем, используем одну методологию, если нет — другую. В нашем проекте извращенный Agile, мы его поменяли так, как нам всем удобно, и при этом продолжаем деливерить. Вообще, это конечно внутрикомандный вопрос. Дойче Банк периодически нанимает тренеров для обучения скрам мастеров, продукт оунеров и тп. Для команд, которые всем составом посещали подобные курсы, эффект был, конечно, заметен даже соседям. Мы хорошо понимаем, что надо писать код эффективный (смотрите про экономию электричества или про 10 микросекунд), но одновременно надежный и поддерживаемый. Нас могут разбудить в 4 часа ночи, чтобы разобраться в проблеме, и тут очень быстро начинаешь понимать ценность логов, диагностических утилит и т.п. Ошибки в этой сфере могут очень дорого стоить. Поэтому мы действительно вкладываемся в supportability и надежность систем и учимся на каждой поломке – чтобы устранить ее и ей подобные как класс.
Дойче — по-честному хорошее место для профессионального роста. Кто-то растет технически, кто-то как руководитель, кто-то из IT переходит в бизнес. Есть возможность переходить с одного проекта на другой. Я бы сказал, что все очень логично исходит из того, что есть необходимость, чтобы всем нравилось то, чем они занимаются, ведь никому не нужны недовольные сотрудники, которые ни с того ни с сего подают заявление об увольнении. У нас есть программы для студентов старших курсов и выпускников. Они проходят небольшое обучение, а потом попадают в полноценную команду, где при желании могут расти с огромной скоростью.
Мы открываем блог Дойче Банка на Хабре, чтобы рассказать вам о нас, о наших проектах, наших сотрудниках, о наших идеях и наблюдениях в IT, ну и, конечно, чтобы просто поговорить с вами об IT технологиях.
Итак, я работаю в Дойче Банке, в российском Технологическом Центре. Что значит работать IT специалистом в таком крупном инвестиционном банке? Это значит, что все ваши родственники и друзья будут уверены, что вы заранее знаете, что будет с рублем и какую картинку выберут на банкноты 2000 рублей (Владивосток). Но вы по каким-то причинам это скрываете и, скорее всего, по корыстным.
На самом деле, отвечать на этот вопрос можно очень долго: достаточно примерно представить, как много людей и всевозможных бизнес-процессов существует в банке. К примеру, в Дойче Банке работает более 80.000 человек. Есть примерно 40 стран, население которых меньше. Исландия, которая покорила всех на чемпионате мира по футболу, имеет население около 330 000. Учитывая только трудоспособное население, можно предположить, что среди людей, которые могут играть в футбол, Дойче Банк соизмерим с Исландией и в теории может собрать сборную уровня чемпионата мира. В теории…
Было бы странно думать, что организация такого масштаба может обходиться без серьезной IT-поддержки. Конечно, в таком крупном банке есть IT-инфраструктура и множество созданного программного обеспечения. Инвестиционные банки давно перестали быть организациями вокруг экономистов и банкиров. Сейчас в центре инвестиционных банков стоит IT. Именно IT становится тем, что определяет эффективность бизнес-процессов, определяет, чья заявка первой попадёт на биржу, кто лучше просчитает риски по сделкам или кто первым и более качественно предоставит инвестиционные решения своим клиентам.
Так что же всё-таки значит работать в инвестиционном банке? Для меня это в первую очередь работать рядом с большими профессионалами. Концентрация умных людей здесь очень высока. Некоторое время назад я работал с командой, которая занимается High Frequency Trading. Они борются за микросекунды для алгоритмов торговли на биржах. Вы читали статью «What every programmer should know about memory»? (Гуглим и читаем). Вот, я думаю, эти ребята могут сами всем рассказать, что нужно знать о памяти и обо всех остальных кишках современных систем, чтобы за 10 микросекунд среагировать на изменение цены, сделать сложный расчет и отправить заявку на биржу.
На моем проекте есть квант, живущий в Лондоне. Это один из тех людей, подобных которому во всем мире — единицы, а я могу общаться с ним каждый день и частенько не один час. Правда, после разговоров с ним чувствуешь себя первокурсником. Его знания математических расчетов финансовых инструментов и всей внутренней кухни просто поражают.
Некоторые говорят, что в банке много легаси (старья)
Ну, конечно, есть легаси код: Дойче Банк в России уже 135 лет. Язык программирования «С» изобрели в начале 70-х. Очевидно, что софт в банке писался не последние 5 лет, как в молодом стартапе, а значительно дольше. Но там, где нужны передовые решения и технологии, неэффективности очень быстро устраняются. В итоге, те легаси, что есть, — это хорошо написанные, стройные приложения, которые порой ничем не уступают современным решениям. Рядом со мной сидел человек, который по стечению обстоятельств занимался переписыванием одной легаси системы, в которой зачастую с помощью отладки было проще разобраться, чем с помощью исходников. Вот он получал заметное удовольствие от возможности раскопать что-то там, разобраться в исходной мысли автора и улучшить её сначала логически, а потом и в техническом плане. В итоге удалось сэкономить неприличную сумму на поддержке старого решения, улучшить поведение системы и просто гордиться проделанной работой. Но это работа не для всех.
Знание предметной области
Я всегда говорю, что нельзя написать хороший продукт, если вы не знаете, что и для кого вы делаете. Это, конечно, заставляет изучать некоторые банковские теории. Нужно ли это всем? Нет, есть проекты, которые к бизнесу имеют малое отношение и скорее представляют собой инфраструктурную составляющую. А есть проекты, где без понимания бизнеса нечего делать. И здесь, как говорится, на вкус и цвет… Я, например, очень интересуюсь расчетами всевозможных деривативов, соответственно, могу приносить намного больше пользы в проектах, где эти знания будут полезны. Что точно необходимо, так это знание английского языка, так как зачастую даже переписка внутри команды идет на английском, не говоря уже про общение с бизнес-пользователями.
Какие инструменты используют?
Если коротко, то — разные. Есть, конечно, какие-то стратегические решения (никто ведь не хочет разношерстную IT-инфраструктуру), но в то же время в основном это зависит от проекта и его потребностей. Если есть аргументированное понимание, почему должен использоваться тот или иной софт, никто не будет заставлять вас использовать что-то совсем неподходящее. Плюс ко всему, есть достаточно крупные проекты, где есть необходимость и целесообразность использовать какие-то дорогие/крупные решения, и, соответственно, есть возможность пощупать такие системы и продукты. У меня, к примеру, в проекте 10000 CPU, которые постоянно что-то считают. Оптимизация алгоритмов на пару процентов экономит существенную сумму на электричестве от этих CPU.
В этом плане новый проект в банке не отличается от стартапа, git, mongo, hadoop,- все что нужно, если обосновано. Недалеко от меня, к примеру, коллеги используют Scala и Actors. Часто подслушиваю, что они там обо всем этом думают =).
Agile или не Agile?
Зависит от команды. Кто-то выбирает одно, кто-то другое. Мы не процесс-ориентированные. Если хотим и можем, используем одну методологию, если нет — другую. В нашем проекте извращенный Agile, мы его поменяли так, как нам всем удобно, и при этом продолжаем деливерить. Вообще, это конечно внутрикомандный вопрос. Дойче Банк периодически нанимает тренеров для обучения скрам мастеров, продукт оунеров и тп. Для команд, которые всем составом посещали подобные курсы, эффект был, конечно, заметен даже соседям. Мы хорошо понимаем, что надо писать код эффективный (смотрите про экономию электричества или про 10 микросекунд), но одновременно надежный и поддерживаемый. Нас могут разбудить в 4 часа ночи, чтобы разобраться в проблеме, и тут очень быстро начинаешь понимать ценность логов, диагностических утилит и т.п. Ошибки в этой сфере могут очень дорого стоить. Поэтому мы действительно вкладываемся в supportability и надежность систем и учимся на каждой поломке – чтобы устранить ее и ей подобные как класс.
Куда расти
Дойче — по-честному хорошее место для профессионального роста. Кто-то растет технически, кто-то как руководитель, кто-то из IT переходит в бизнес. Есть возможность переходить с одного проекта на другой. Я бы сказал, что все очень логично исходит из того, что есть необходимость, чтобы всем нравилось то, чем они занимаются, ведь никому не нужны недовольные сотрудники, которые ни с того ни с сего подают заявление об увольнении. У нас есть программы для студентов старших курсов и выпускников. Они проходят небольшое обучение, а потом попадают в полноценную команду, где при желании могут расти с огромной скоростью.
Мы открываем блог Дойче Банка на Хабре, чтобы рассказать вам о нас, о наших проектах, наших сотрудниках, о наших идеях и наблюдениях в IT, ну и, конечно, чтобы просто поговорить с вами об IT технологиях.