Buscamos um Engenheiro de Software Sênior com foco em desenvolvimento de sistemas de alta disponibilidade para nosso cliente. O candidato deve ter experiência sólida em design e desenvolvimento de APIs, com preferência por conhecimento em GraphQL.
Responsabilidades:
* Ajudar no treinamento e mentoria de outros desenvolvedores;
* Participar de discussões de requisitos, arquitetura e design;
* Colaborar na definição da arquitetura com foco na flexibilidade de curto prazo e ganhos sustentáveis de longo prazo;
* Atuar como referência técnica com conhecimento sólido em design e arquitetura de software;
* Projetar, implementar e testar sistemas de alta disponibilidade para processamento de dados de telemetria, mapeamento e correlação de dados de localização, aplicação de regras com base em geofences e gestão de relacionamentos comerciais;
* Apoiar o time na resolução de problemas e solicitações de clientes;
* Utilizar a base de código atual para aprofundar o conhecimento sobre funcionalidades existentes;
* Implementar soluções com foco em AWS e práticas DevOps;
Conhecimentos e Habilidades Necessárias:
* Experiência em design e desenvolvimento de APIs, com preferência por conhecimento em GraphQL;
* Experiência sólida com Ruby on Rails;
* Conhecimento desejável em JavaScript, Typescript, Angular, React e Next.js;
* Pelo menos 7 anos de experiência profissional em desenvolvimento de software;
* Experiência com CI/CD, Gitlab, Docker, AWS e PostgreSQL;
* Conhecimento em microserviços, micro frontends, automação de testes e revisão de código;
* Experiência com sistemas transacionais de alto volume;
* Ter trabalhado com tecnologias como Telemática, IoT ou voltadas para veículos será considerado um diferencial;
* Experiência com produtos B2B SaaS;
Pré-requisitos Fundamentais:
* Experiência sólida com design e desenvolvimento de APIs (GraphQL);
* Conhecimento avançado em Ruby on Rails;
* Capacidade de explicar e aplicar técnicas padrão de programação (OOP, funcional, etc.);
* Capacidade de traduzir preocupações de negócio para o contexto tecnológico;
* Experiência completa no ciclo de vida de aplicações em nuvem (deploy, testes, manutenção);
* Capacidade de avaliar diferentes abordagens arquiteturais;
* Domínio de versionamento de código (Git);
* Entendimento sobre diferentes mecanismos de armazenamento de dados e suas vantagens/desvantagens;
* Vivência com sistemas baseados em mensagens;
* Experiência com metodologias ágeis;
Diferenciais:
* Experiência com softwares GIS;
* Conhecimento em desenvolvimento IoT;
* Experiência com Kubernetes e serviços AWS;
* Background com dispositivos GPS ou sistemas embarcados;
* Experiência com Docker, Kafka, Resque e serviços RESTful;
* Conhecimento em infraestrutura como código;
Formação e Experiência
* 7+ anos de experiência com Ruby e/ou Ruby on Rails;
* 5+ anos de experiência com AWS, PostgreSQL ou tecnologias similares;