ANALISTA DESENVOLVIMENTO SOFTWARE EMBARCADO PL | ARAÇATUBA
Salve esta vaga e mantenha sua pesquisa organizada
Crie uma conta gratuita para salvar vagas, criar alertas e retornar a esta listagem a partir do seu painel.
Ao continuar, você concorda com nossos Termos & Política de Privacidade.
Job description
Junte-se à Revolução Tecnológica no Agronegócio com a Solinftec
A Solinftec é uma líder global em tecnologia para o agronegócio, desenvolvendo soluções inovadoras de inteligência artificial e SaaS que revolucionam a forma como os alimentos são produzidos.
Com atuação em mais de 11 países , monitoramos milhões de hectares em tempo real , promovendo mais sustentabilidade e eficiência no setor. Somos movidos pela paixão de conectar tecnologia ao campo , criando um futuro mais sustentável para todos.
Main responsibilities
Buscamos um(a) Analista de Software Embarcado para atuar no desenvolvimento de soluções em Linux embarcado , com foco em C++ , integração entre hardware e software e comunicação com serviços em nuvem. Esse profissional será responsável por projetar, desenvolver e manter os serviços que compõem o núcleo dos nossos dispositivos conectados, garantindo alto desempenho, confiabilidade e escalabilidade das soluções utilizadas em campo. Se você gosta de entender o que acontece "por baixo" — da leitura de um datasheet até a otimização de um serviço em produção — e quer trabalhar próximo do hardware sem abrir mão de boas práticas de engenharia de software, esta vaga é para você.
Local de Trabalho: Araçatuba - SP
Confira como será o seu dia a dia de trabalho:
- Projetar, desenvolver e manter serviços, daemons e ferramentas para plataformas Linux embarcado, priorizando desempenho, estabilidade e uso eficiente de recursos;
- Desenvolver software em C++ moderno (e C , quando necessário), aplicando boas práticas de arquitetura, organização de código, testes e tratamento de erros;
- Implementar e depurar comunicação em rede entre dispositivos e serviços, utilizando protocolos como TCP/IP, UDP, MQTT, , entre outros;
- Integrar dispositivos a APIs externas e serviços de backend , realizando autenticação, serialização de dados e tratamento de falhas de comunicação;
- Desenvolver e evoluir a camada de telemetria , responsável pela coleta, agregação, transporte e monitoramento de métricas e eventos dos dispositivos;
- Realizar integrações de baixo nível com hardware , interpretando datasheets, configurando periféricos e validando o comportamento do software junto aos circuitos eletrônicos;
- Colaborar com as equipes de Hardware, Firmware e Backend na definição de arquiteturas, interfaces e requisitos técnicos;
- Utilizar Git e fluxos colaborativos de desenvolvimento, incluindo branches, code reviews e integração contínua;
- Diagnosticar e solucionar problemas em campo e em bancada, propondo melhorias que aumentem a robustez, confiabilidade e desempenho das soluções embarcadas;
- Contribuir para a evolução contínua das plataformas, adotando boas práticas de engenharia de software e desenvolvimento de sistemas embarcados.
Requirements and skills
- Experiência comprovada em desenvolvimento para Linux embarcado (serviços, ferramentas, integração de sistema).
- Boa base em C++ para criação de serviços e ferramentas, com domínio de conceitos de gerenciamento de memória, concorrência e tratamento de erros.
- Conhecimento de protocolos de rede e comunicação entre sistemas (TCP/IP, UDP e protocolos de aplicação).
- Experiência prática com Git e fluxos de trabalho colaborativos.
- Experiência de integração com APIs externas (consumo e/ou disponibilização de serviços).
- Familiaridade com conceitos de telemetria (coleta e envio de métricas, logs e eventos).
- Conhecimento básico de hardware o suficiente para leitura de datasheets e realização de integrações básicas.
- Experiência com programação concorrente (threads, mutexes, condition variables).
- Conhecimento de IPC no Linux (sockets Unix, shared memory, pipes, D-Bus, etc.).
- Familiaridade com systemd (serviços, timers, journal).
Diferencias:
- Experiência com desenvolvimento para microcontroladores (MCU) — como STM32, ESP32 e ATmega — preferencialmente utilizando HALs ou SDKs nativos, sem depender de frameworks de alto nível como o Arduino.
- Experiência com sistemas de build para embarcado (Yocto, Buildroot, CMake).
- Vivência com depuração de baixo nível (GDB, JTAG/SWD, analisadores lógicos, osciloscópio).
- Conhecimento de segurança em dispositivos conectados (comunicação criptografada, provisionamento, atualização OTA).
- Familiaridade com pipelines de CI/CD aplicados a firmware/embarcado.
- Inglês técnico para leitura de documentação e colaboração.