Essa é uma oportunidade para um Engenheiro de Software Sênior com foco em Ruby on Rails trabalhar em um projeto de expansão da capacidade dos sistemas e melhoria contínua da experiência de desenvolvimento. O trabalho é 100% remoto, modelo de contratação CLT, e o inglês avançado em conversação é fundamental pois os interlocutores são internacionais.
O ideal é que você tenha experiência sólida em design e desenvolvimento de APIs, com preferência por conhecimento em GraphQL. Além disso, é necessário ter conhecimento avançado em Ruby on Rails e capacidade de explicar e aplicar técnicas padrão de programação (OOP, funcional, etc.). A experiência completa no ciclo de vida de aplicações em nuvem (deploy, testes, manutenção) também é essencial.
Responsabilidades:
* Ajudar no treinamento e mentoria de outros desenvolvedores, mantendo abertura para aprender com os colegas;
* 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, incluindo geolocalização, mapeamento e correlação de dados de localização, aplicação de regras com base em geofences (cercas virtuais) para envio de notificações, gestão de relacionamentos comerciais que permitam o compartilhamento de ativos e acesso seguro a interfaces web e APIs;
* 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 (diversas versões);
* 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 (monolito vs microserviços, por exemplo);
* Dominio de versionamento de código (Git);
* Entendimento sobre diferentes mecanismos de armazenamento de dados (PostgreSQL, Redis) e suas vantagens/desvantagens;
* Vivência com sistemas baseados em mensagens (bus, streaming, pub/sub);
* Experiência com metodologias ágeis (Agile/Lean).
Diferenciais:
* Experiência com softwares GIS como PostGIS, shapefiles, KML, MapServer, OpenLayers;
* Conhecimento em desenvolvimento IoT;
* Experiência com Kubernetes (EKS) e serviços AWS;
* Background com dispositivos GPS ou sistemas embarcados;
* Experiência com Docker, Kafka, Resque, serviços RESTful;
* Conhecimento em infraestrutura como código (Terraform, Terragrunt).
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.