Contexto
A carreira como Engenheiro de Software Backend oferece uma oportunidade única para desenvolver habilidades técnicas e trabalhar em projetos desafiadores.
O papel envolve a responsabilidade por implementar soluções tecnológicas eficazes, garantindo funcionalidade, manutenibilidade e velocidade.
Neste contexto, é fundamental conhecer arquiteturas de software, consumo e geração de eventos em Streaming, API's e desenvolver sistemas escaláveis.
A experiência em desenvolvimento de microsserviços distribuídos e conhecimento sobre práticas de teste e qualidade são essenciais para garantir a excelência técnica.
Além disso, a capacidade de trabalhar em um ambiente colaborativo e multifuncional, com foco na resolução de problemas complexos, é crucial para o sucesso nessa função.
O desenvolvimento contínuo das habilidades técnicas do time também é uma prioridade.
Responsabilidades:
* Desenvolver programação do início ao fim, incluindo definições de arquitetura, testes e rollout em produção;
* Desenvolvimento de projetos com arquitetura de microserviços, consumo e geração de eventos em Streaming, API's;
* Garantir a funcionalidade, manutenibilidade e velocidade, além de práticas de teste e qualidade;
* Garantir que todas as soluções técnicas estejam alinhadas a estratégia do negócio e entender iniciativas relacionadas ao produto;
* Ajudar o time no desenho de soluções com arquitetura evolutiva, além de investigar constantemente novas tecnologias e formas de trabalho;
* Colaborar com a evolução das habilidades técnicas do time e esforços de melhoria contínua que impactam vários times;
* Trabalhar em um ambiente colaborativo, em que práticas de pareamento, feedbacks e motivação para se desenvolver são comuns a todos os squads.
Requisitos:
* Conhecimento avançado em desenvolvimento em Golang ou Node com TypeScript;
* Conhecimento sobre desenvolvimento de consumidores e produtores de eventos para Event Streaming (Kafka);
* Conhecimento em Docker & Kubernetes;
* Conhecimento com ferramentas de monitoramento e observabilidade;
* Conhecimento sobre testes unitários e de integração;
* Preocupação com a qualidade e desempenho das soluções propostas;
* Capacidade de trabalhar em um ambiente multifuncional e colaborativo, de maneira autônoma;
* Conhecimento sobre desenvolvimento e implementação de APIs;
* Conhecimento sobre desenvolvimento de microsserviços distribuídos;
* Embasamento teórico, habilidade e preocupação com a excelência técnica e boas práticas de desenvolvimento (DDD, Arquitetura, Design de Código, Paradigmas, etc.);
* Familiaridade com metodologias ágeis.
Pretenciosos conhecimentos adicionais:
* Google Cloud Continuous Integration;
* Continuous Delivery.