A missão
Ser co-dono(a) do software de baixo nível do nosso robô de campo: o controle de movimento, a comunicação entre módulos e a integração dos sensores e atuadores que fazem o Leopard se mover de forma confiável. Você trabalhará na fronteira entre os computadores embarcados e o hardware — a camada onde autonomia vira movimento real.
Como Embedded Software Engineer, você irá:
Desenvolver, integrar e depurar a comunicação e o controle de baixo nível dos motores do robô: controladores, encoders, telemetria e interfaces CAN com o sistema de atuação
Desenvolver, integrar e depurar drivers e interfaces para os sensores e atuadores do robô
Manter a integração entre os computadores embarcados (Linux, NVIDIA Jetson/Orin) e o sistema de controle de movimento, garantindo operação confiável de motores, atuadores e sensores de feedback
Selecionar, integrar e validar sensores e dispositivos embarcados — câmeras, LiDARs, sistemas de posicionamento e demais equipamentos da plataforma
Integrar e validar firmware de fornecedores com o stack do robô, incluindo análise de causa raiz de falhas em subsistemas de baixo nível
Otimizar desempenho, latência e confiabilidade de sistemas robóticos em tempo real
Evoluir a arquitetura de computação e comunicação embarcada conforme o robô cresce
Validar em bancada e em campo, com suporte à operação: debug remoto e atualização de dispositivos rodando na fazenda
Qualificações requeridas:
Residência na cidade de São Paulo, com disponibilidade para trabalho híbrido três vezes na semana no escritório em Pinheiros;
Disponibilidade para viagens ocasionais, incluindo áreas agrícolas;
Experiência sólida em software embarcado sobre Linux (Jetson ou similares), com C/C++ e Python de mão na massa
Conhecimento de sistemas de controle de motores, encoders e mecanismos de feedback de posição e velocidade
Experiência na integração e depuração de sistemas de controle de movimento baseados em CAN — drivers de motor, encoders e telemetria
Domínio de protocolos de comunicação embarcada (CAN, I2C, SPI, serial) e capacidade de debugar do log ao osciloscópio
Autonomia técnica: pegar um problema mal definido, propor a solução e entregar funcionando
Inglês para documentação técnica e contato com fornecedores internacionais
Diferenciais:
Conhecimento de odometria, cinemática e controle de movimento em plataformas robóticas
Experiência com controle de motores DC ou sistemas de tração para robôs móveis
Firmware de microcontroladores (STM32/ARM, FreeRTOS) e leitura de esquemáticos
Redes embarcadas: arquitetura, configuração e troubleshooting
ROS2 e mensageria de robótica