Overview
Somos um Centro de Engenharia e Desenvolvimento de Produto que concebe, desenvolve e produz novas tecnologias, produtos e serviços para uma sociedade mais sustentável. Trabalhamos conectando cidades, indústria e universidades em programas de desenvolvimento e industrialização de produtos e serviços, a partir de Portugal, em sectores de alta tecnologia como a mobilidade, a aeronáutica e o espaço. Esta oportunidade de Engenheiro |Embedded Linux (Yocto) (m/f/d) será integrada na equipa de Eletrónica e Conetividade.
Estamos à procura de um engenheiro (m/f/d) experiente em Embedded Linux para integrar a nossa equipa de desenvolvimento de software embarcado. O colaborador/a será responsável pela criação, customização e manutenção de distribuições Linux baseadas em Yocto, bem como pela integração de aplicações e serviços para dispositivos embarcados utilizados em diferentes produtos do CEiiA.
Responsibilities
- Desenvolver, personalizar e manter builds Linux embarcados utilizando Yocto Project
- Criar, adaptar e otimizar camadas, recipes e imagens Yocto para diferentes plataformas de hardware
- Integrar aplicações (Flutter, C/C++, Python, etc.) com o sistema operativo embarcado
- Trabalhar em conjunto com equipas de firmware e hardware para garantir compatibilidade e estabilidade do sistema
- Desenvolver e integrar drivers, serviços do sistema e middleware conforme necessário
- Realizar troubleshooting e debugging a níveis kernel, userspace e build system
- Garantir segurança, atualizações OTA e fiabilidade do sistema embarcado
- Manter-se atualizado com as melhores práticas em Embedded Linux, Yocto e integração de aplicações
Qualifications
- Licenciatura em Engenharia Eletrónica, Física ou similar
- Experiência comprovada em Embedded Linux (userspace, kernel, systemd, filesystem)
- Sólidos conhecimentos e experiência com o Yocto Project (BitBake, layers, recipes, BSPs)
- Familiaridade com C/C++, Python e Shell Script para desenvolvimento e integração com o sistema
- Experiência com cross-compilation, toolchains e processos de build para sistemas embebidos
- Experiência com redes e protocolos de comunicação (TCP/IP, MQTT, gRPC, DBus, etc)
- Capacidade de diagnosticar problemas complexos no sistema (boot, drivers, integração de apps, performance)
- Competência para trabalhar de forma independente e em equipa, com forte capacidade de análise e resolução de problemas
Differentiators
- Conhecimento de frameworks de testes automáticos para sistemas embarcados
- Contribuições para projetos open-source relacionados com Yocto, Linux ou sistemas embarcados
- Experiência em CI/CD para builds de sistemas embarbds
- Experiência prévia no desenvolvimento de aplicações em C++ para sistemas embebidos, incluindo otimização de desempenho e integração com middleware de baixo nível
- Conhecimento e experiência em ROS 2 (Robot Operating System), incluindo criação de nós, integração com DDS, gestão de executores e deployment em dispositivos Embedded
Information Adicional
- Ambiente de trabalho descontraído, equipas dinâmicas e multidisciplinares. Facilitamos e promovemos um estilo de vida equilibrado e saudável, articulando o trabalho com a vida pessoal.
- Seguro de saúde
- Parcerias com ginásios, Nutrium, entre outros
- Até três dias de férias adicionais
- Dia de aniversário livre