[ASAAS] – Engenheiro(a) de Software Fullstack Sênior (Arquitetura)

2 de maio de 2025
Aplicar Agora

Descrição da oportunidade

#Por que ser um Engenheiro de Software no ASAAS:

  • O#Asaas se posiciona como a infraestrutura financeira para o crescimento das PMEs no Brasil. A conta digital completa para empresas.
  • Ajudamos mais de 155 mil empreendedores em todo o Brasil a automatizar a gestão financeira das suas empresas e melhorar o relacionamento com seus clientes.
  • O #Asaas vem ampliando sua atuação para além do core de automação financeira e cobrança para soluções completas de gestão e serviços financeiros, como: conta digital, cartão, antecipação de recebíveis, crédito
  • O que define o refactor estratégico da sua base tecnológica para preparar a plataforma para um nível de escala muito maior e migrando para uma arquitetura celular, também chamada de “modular monolith com microserviços desacoplados”, inspirada em empresas como Nubank e Spotify.
  • Com isso, estamos atraindo competências em Engenharia de Software na estruturação e evolução do ambiente de engenharia / infra de tecnologia, com foco em arquitetura. 

#O seu desafio na ASAAS será:

  • Colaborar com o Squad DNA (Design’N’Architecture) para projetar, desenvolver e manter serviços centrais, com impacto direto em toda a engenharia de produtos do #Asaas.
    • Pensar e desenvolver padrões de engenharia para escalabilidade, performance, segurança e confiabilidade dos serviços centrais do #Asaas e sua respectiva integração com os serviços internos.
    • Definir padrões arquiteturais, protocolos de uso, gestão de acesso e privilégios, organização do ambiente cloud, containers, segurança. 

#Estamos atraindo vivências e experiências em:

  • Arquitetura distribuída e monolítica com foco em escalabilidade e alta volumetria 
  • Modelagem de bancos de dados – relacional e não relacional 
  • Concorrência – tomada de decisão sobre tecnologia e padrões arquiteturais 
  • Atuar com independência, sem depender de validações constantes, assumindo a responsabilidade por problemas e entregas, gerenciando o ciclo completo do produto (discovery, entrega e manutenção).
  • Sustentar decisões técnicas com base em dados, contexto de negócio e trade-offs, em RFCs (Request for Comments), code reviews e decisões de stack ou ferramentas,
  • Envolver pares, lideranças e stakeholders em torno de ideias e iniciativas sem usar autoridade formal, ao promover boas práticas de engenharia (ex: cobertura de testes, padronização de APIs REST vs gRPC).
  • Escolher e executar caminhos técnicos com confiança, considerando riscos, urgência e impacto, ao definir se um serviço será implementado como monólito modular ou microserviço separado, dependendo do momento do produto.
  • Comunicar ideias, problemas e decisões com clareza, objetividade e empatia, ao escrever documentação técnica ou decisões de arquitetura.

#O que você vai fazer todos os dias:

  • Transformar lógica de negócio em código de alta qualidade, respeitando os padrões e práticas estabelecidos;
  • Participar da definição e implementação de novas funcionalidades e correção de bugs;
  • Compreender e discutir os problemas e soluções propostas, buscando sempre a melhor solução técnica para os desafios encontrados;
  • Revisar o código entregue pelos colegas de equipe;
  • Dividir grandes entregas em pequenos entregáveis coesos;
  • Monitorar a solução implementada em produção, avaliando erros, performance e disponibilidade;
  • Colaborar com melhorias ou novos padrões na base de conhecimento da Engenharia;
  • Identificar e resolver problemas estruturais no código dos produtos (cross-cutting concerns);
  • Acompanhar monitoramento das aplicações e implementar melhorias de performance;
  • Implementar componentes e abstrações reutilizáveis para a engenharia;
  • Prestar consultorias para os times de engenharia em decisões técnicas;
  • Comunicar decisões técnicas com base em trade-off arquiteturais.

#O que você precisa conhecer e saber fazer:

  • Desenvolvimento WEB, com foco em: HTML, CSS e Javascript;
  • Frameworks, bibliotecas e ferramentas, tais como Java, Python, JS, Ruby entre outros;
  • Programação orientada a objetos e integração entre serviços via APIs Rest e filas;
  • Modelagem de bancos de dados relacional;
  • Pipeline de Deploy e versionamento de código com Git;
  • Aplicação de boas práticas, padrões e princípios de Engenharia de Software;
  • Cloud (AWS, Azure ou Google Cloud);
  • Práticas de integração e entrega contínuas e testes automatizados;
  • Estilos arquiteturais de software;
  • Inglês técnico.