
Imagem:
DAVID HOLT ,
CC BY 2.0Segundo as estatísticas do portal Stack Overflow, o setor financeiro está entre as dez indústrias mais populares entre os desenvolvedores. Hoje falaremos sobre o que esperar de especialistas que planejam iniciar uma carreira em empresas financeiras.
Condições de trabalho
Empregos em finanças são definitivamente diferentes de empregos em startups ou grandes corporações de TI. Aqui está uma abordagem mais tradicional para a organização do processo de trabalho; raramente é possível encontrar escritórios de "design" ou muito entretenimento para os funcionários. Muitas vezes, também existe um certo código de vestimenta, o que pode ser incomum para desenvolvedores que trabalham em startups.
Por exemplo, há pouco tempo, jornalistas do Business Insider analisaram a popularidade de empresas financeiras entre os candidatos ao LinkedIn e descobriram que o Morgan Stanley, que ocupava o 4º lugar, atraiu muitos devido à falta de um código de vestimenta excessivamente rigoroso (em comparação com outros bancos).
Quando você consegue um emprego em um banco de investimento, fundo de hedge ou empresa de corretagem, também é difícil contar com um
escritório de design com grandes áreas de jogos e esportes, salas de massagem, quartos de dormir e comida completamente grátis. Muito provavelmente, isso acontecerá, mas não em uma escala como no Google condicional.

Por exemplo,
o escritório da Goldman Sachs possui uma academia e os funcionários podem obter descontos nos cartões do clube. Um fato interessante: mesmo nas telas dos simuladores, monitora notícias econômicas:

Como você pode ver, do ponto de vista dos atributos externos da “frieza”, o trabalho no campo financeiro pode ser inferior às startups de TI e às grandes empresas de tecnologia. Por que, então, muitos desenvolvedores ainda vêm a essa área? Isso é facilitado pela capacidade de usar tecnologias avançadas no trabalho em projetos interessantes.
Em quais projetos posso participar?
O mercado financeiro é representado por uma ampla gama de empresas: existem bolsas, bancos, fundos de investimento, corretoras e desenvolvedores de software independentes (por exemplo, robôs de negociação). Dessa forma, os desenvolvedores podem participar de uma variedade de projetos, desde a criação de sistemas e ferramentas de negociação para trabalhar com Big Data até a construção de infraestrutura usando o hardware mais moderno.
Usando o ITI Capital como exemplo, você pode entender o que os profissionais de TI enfrentam nas empresas de corretagem. Estamos desenvolvendo nosso próprio sistema de negociação Matrix, o terminal
SmartX (mais informações sobre a história deste projeto podem ser encontradas
aqui ), está desenvolvendo uma API para nossa infraestrutura chamada
SmartCOM . Uma área separada é a criação de aplicativos móveis para negociação online.
Interface do terminal de negociação SmartXNo campo das finanças, velocidade e produtividade máxima são importantes, portanto, muito esforço é gasto na melhoria desses indicadores dos produtos de software criados. No blog, falamos repetidamente sobre como, por exemplo, a
otimização do terminal de negociação
funciona .
Linguagens de programação comuns
Uma parte significativa da infraestrutura das corretoras e bolsas é criada usando a linguagem C ++ - com sua ajuda, uma variedade de produtos é criada a partir de bibliotecas para calcular modelos de preços de derivativos a módulos para processar fluxos de dados. Especialistas que conhecem esse idioma estão em grande demanda. Além disso, o criador da linguagem, Bjarne Stroustrup,
trabalha no Morgan Stanley Investment Bank como diretor de tecnologia.
Além do C ++, o C # e o Java são difundidos - com sua ajuda, eles geralmente implementam certas partes de aplicativos de negociação ou serviços de front-end de empresas financeiras (por exemplo, GUIs de terminais de negociação).
Linguagens de script, como Python, MATLAB e R, também são usadas para descrever estratégias de negociação e modelos de prototipagem.As linguagens de script também são populares, que podem ser incorporadas em terminais de negociação, como o
TradeScript , com o qual os robôs de negociação podem ser escritos diretamente. dentro do terminal SmartX.
Uma estratégia simples do TradeScript registrada na janela do terminal de negociaçãoAlém disso, de acordo
com os recrutadores de empresas financeiras pesquisadas pelo portal Efinancial Careers, os desenvolvedores de Python estão em demanda - essa linguagem é indispensável para criar ferramentas analíticas e modelos quânticos - tecnologias de processamento de dados como Hadoop, Cassandra e Scala também estão ganhando popularidade.
O que mais você precisa para poder
Cada empresa tem seus próprios requisitos, mas algumas tendências nessa direção também podem ser formuladas. Os especialistas em trabalhar com infraestrutura ao ingressar no campo das finanças não precisarão ser reconstruídos seriamente, mas os desenvolvedores podem precisar de algum conhecimento específico.
Para conseguir um emprego em uma empresa financeira séria, você deve necessariamente conhecer perfeitamente OOP e algoritmos padrão. O desenvolvimento de sistemas financeiros cliente-servidor também anda de mãos dadas com a programação multithread. Portanto, o especialista não deve ter medo de tarefas que envolvam, por exemplo, a gravação de um servidor TCP padrão, um servidor de balanceamento de carga e um servidor de alto desempenho.
No coração dos sistemas para o setor financeiro estão os bancos de dados; portanto, os desenvolvedores precisarão de um conhecimento profundo de SQL. O conhecimento de operadores de seleção simples não será suficiente - muitas vezes, no decorrer do trabalho, você terá que lidar com a criação de procedimentos de armazenamento, lidar com índices e vários tipos de bloqueios.
Os sistemas de negociação geralmente usam a plataforma UNIX (geralmente Linux). Para o Windows, geralmente são criados terminais de negociação com interfaces gráficas, enquanto o UNIX é usado para desenvolver o "mecanismo" do software de negociação. Além disso, os especialistas envolvidos no desenvolvimento de software comercial precisam trabalhar com
GPUs ,
coprocessadores e placas de rede modernas (por exemplo, Mellanox e Solarflare).
Não se esqueça do conhecimento tecnológico que se aplica especificamente ao setor financeiro - antes de procurar um emprego em uma corretora condicional, você precisa entender, por exemplo, protocolos de transferência de dados como o FIX ou, no caso da Bolsa de Moscou, a Ponte ASTS em nossa O blog publicou toda uma série de materiais sobre essas tecnologias (
FIX ,
Fast ,
Plaza II ,
ASTS Bridge ).
Outros materiais relacionados ao mercado financeiro e de ações da ITI Capital :