O nosso papel como Engenheiro de Software Backend é desenvolver software do início ao fim, incluindo definições de arquitetura, testes e rollout em produção.
Funções e Responsabilidades
* Desenvolver projetos com arquitetura de microsserviç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 à 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.
Sobre as Competências Esperadas
1. Conhecimento avançado em desenvolvimento em Golang ou Node Typescript;
2. Conhecimento sobre desenvolvimento de consumidores e produtores de eventos para Event Streaming (Kafka);
3. Conhecimento em Docker & Kubernetes;
4. Conhecimento com ferramentas de monitoramento e observabilidade;
5. Conhecimento sobre testes unitários e de integração;
6. Preocupação com a qualidade e desempenho das soluções propostas;
7. Capacidade de trabalhar em um ambiente multifuncional e colaborativo, de maneira autônoma;
8. Conhecimento sobre desenvolvimento e implementação de APIs;
9. Conhecimento sobre desenvolvimento de microsserviços distribuídos;
10. 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.);
11. Familiaridade com metodologias ágeis.
E aqui estão algumas habilidades adicionais que seriam uma ótima surpresa
* Conhecimento em desenvolvimento em C#;
* Google Cloud Continuous Integration;
* Continuous Delivery.