Analista de Desenvolvimento de Sistemas Pleno
Python & Node.js.
Será que seu currículo passa pelo filtro desta vaga?
Envie seu CV e descubra, em segundos, sua compatibilidade real com Analista de Desenvolvimento de Sistemas Pleno | Python & Node.js — o que já atende, e onde seu currículo pode estar perdendo aderência.
Descricao da vaga
Inovar para simplificar. 🚀
Na Finnet, tecnologia é parte essencial do nosso negócio. Desenvolvemos soluções que simplificam processos financeiros, integram empresas, automatizam operações e ajudam nossos clientes a trabalhar de forma cada vez mais eficiente.
Somos clientocêntricos e buscamos constantemente entender as necessidades dos nossos clientes para transformar problemas complexos em soluções simples, seguras e escaláveis.
Nossas soluções estão presentes na operação financeira de empresas de diferentes segmentos, apoiando processos como:
CONTAS A RECEBER ● CONTAS A PAGAR ● GESTÃO FINANCEIRA ● PAGAMENTOS ● INTEGRAÇÕES ● MARKETPLACE ● BANKING
Estamos buscando uma pessoa para atuar como Analista de Desenvolvimento de Sistemas Pleno, integrando nosso time de Tecnologia.
Procuramos alguém hands-on, curioso, colaborativo e com boa capacidade de análise, que goste de entender problemas, investigar causas, propor soluções e participar ativamente das decisões técnicas do time.
Aqui você terá espaço para contribuir com ideias, desenvolver soluções, evoluir arquiteturas e compartilhar conhecimento.
Estamos crescendo! Venha ser um #Finneter 🚀
Saiba mais sobre a Finnet: https://finnet.com.br/
Responsabilidades e atribuicoes
Seu principal desafio será atuar de ponta a ponta na evolução das nossas soluções, desde a análise de uma necessidade ou problema até seu desenvolvimento, implementação e acompanhamento em produção.
Você encontrará desafios envolvendo APIs, integrações bancárias, mensageria, arquiteturas distribuídas, bancos de dados, segurança e resiliência de aplicações.
Buscamos alguém que não queira apenas receber tarefas, mas que tenha curiosidade para entender o contexto, autonomia para investigar problemas e iniciativa para propor soluções que gerem valor para o negócio e para os clientes.
No dia a dia, você será responsável por:
Desenvolvimento e integrações:
- Desenvolver, evoluir e manter sistemas, APIs e serviços utilizados nas soluções da Finnet;
- Atuar no desenvolvimento backend utilizando Python e Node.js como principais stacks da posição;
- Desenvolver, consumir e manter APIs REST;
- Construir e evoluir integrações entre sistemas internos e externos;
- Trabalhar com arquiteturas distribuídas, microsserviços, comunicação entre serviços e soluções baseadas em mensageria;
- Interagir, quando necessário, com aplicações e serviços desenvolvidos em Java;
- Implementar soluções considerando segurança, disponibilidade, desempenho e facilidade de manutenção.
Arquitetura e qualidade de software
- Participar da definição e da evolução da arquitetura das soluções;
- Aplicar boas práticas de desenvolvimento, Clean Code, Design Patterns e princípios de arquitetura de software;
- Criar e manter testes unitários e de integração;
- Participar de code reviews e discussões técnicas;
- Avaliar impactos, riscos, dependências, esforço e complexidade das soluções propostas;
- Contribuir para a evolução sustentável das aplicações e para a redução de débitos técnicos;
- Apoiar a documentação das soluções, integrações e decisões técnicas.
Resiliência e segurança
- Implementar mecanismos de tratamento de falhas e resiliência, como Retry, Timeout, Circuit Breaker e Fallback;
- Aplicar padrões ou frameworks de resiliência adequados às tecnologias utilizadas;
- Contribuir para a estabilidade das aplicações diante de falhas e indisponibilidades de serviços integrados;
- Aplicar conceitos de segurança no desenvolvimento de aplicações, serviços e APIs;
- Avaliar riscos técnicos e possíveis impactos antes da implementação das soluções.
Sustentação e troubleshooting
- Acompanhar aplicações em produção e contribuir para a resolução de incidentes;
- Investigar problemas em aplicações, serviços, integrações e bancos de dados;
- Analisar logs e fluxos de processamento para identificar falhas e inconsistências;
- Identificar causas-raiz e propor soluções definitivas, contribuindo para evitar recorrências;
- Atuar na resolução de incidentes considerando impacto, criticidade, prioridade e senso de urgência;
- Contribuir para a evolução dos mecanismos de observabilidade e monitoramento das aplicações.
Bancos de dados
- Trabalhar com bancos de dados relacionais;
- Criar, revisar e analisar consultas SQL;
- Apoiar diagnósticos relacionados a dados, consultas e performance;
- Avaliar impactos das implementações sobre a integridade e o processamento das informações;
- Contribuir para a confiabilidade dos fluxos e processos que dependem de dados.
DevOps e entrega contínua
- Utilizar Azure DevOps ao longo do ciclo de desenvolvimento;
- Trabalhar com Git, versionamento, branches, pull requests e processos de revisão;
- Participar da construção e da evolução de pipelines de CI/CD;
- Apoiar os processos de publicação, validação e acompanhamento das aplicações;
- Identificar oportunidades de automação e melhoria do ciclo de desenvolvimento e entrega.
Colaboração e evolução técnica
- Trabalhar em conjunto com Desenvolvimento, Produto, Qualidade, Infraestrutura, Segurança e demais áreas;
- Participar ativamente das discussões técnicas e arquiteturais;
- Compartilhar conhecimentos, aprendizados e boas práticas com o time;
- Contribuir para a evolução técnica das pessoas ao redor;
- Identificar oportunidades de automação, modernização e melhoria dos sistemas e processos;
- Atuar com autonomia, envolvendo o time e outras áreas sempre que necessário.
Requisitos
Buscamos uma pessoa com experiência em desenvolvimento de sistemas e bons fundamentos de engenharia de software.
É importante possuir experiência ou bons conhecimentos em:
- Desenvolvimento backend utilizando Python e/ou Node.js;
- Disponibilidade técnica para atuar com Python e Node.js no dia a dia, independentemente da stack de maior domínio;
- Desenvolvimento e consumo de APIs REST;
- Integração entre sistemas internos e externos;
- Arquiteturas distribuídas e microsserviços;
- Mensageria e processamento assíncrono;
- Bancos de dados relacionais e SQL;
- Análise e diagnóstico de problemas em bancos de dados;
- Testes unitários e testes de integração;
- Git e controle de versão;
- Azure DevOps;
- Pipelines de CI/CD;
- Design Patterns, Clean Code e boas práticas de engenharia de software;
- Tratamento de falhas e padrões de resiliência, como Circuit Breaker, Retry, Timeout e Fallback;
- Segurança aplicada ao desenvolvimento de aplicações e APIs;
- Troubleshooting de aplicações e análise de logs;
- Acompanhamento e sustentação de aplicações em produção.