Desenvolvedor(a) de software embarcado — defesa | presencial-campinas/sp
OBRIGATÓRIOS:
1. Superior completo, ou em conclusão, em Engenharia de Computação, Ciência da Computação, Engenharia Elétrica, Mecatrônica ou área afim.
2. Domínio de C para embarcados: ponteiros, gerenciamento de memória, interrupções, acesso a registradores e código determinístico, sem alocação
dinâmica.
3. Experiência com microcontroladores ou processadores embarcados (ex.: ARM Cortex) e com periféricos (SPI, I2C, UART, Ethernet).
4. Python para automação de testes, scripts e análise de dados.
5. Uso de depurador (JTAG/SWD), osciloscópio e analisador lógico.
6. Git e disciplina de controle de versão.
7. Inglês Avançado/Fluente
DESEJÁVEIS:
- Experiência com normas de software de segurança crítica (DO-178C, IEC 61508, ISO 26262, EN 50128 ou similares).
- MISRA C ou CERT C e ferramentas de análise estática.
- Rust, para ferramentas e componentes de apoio.
- Go, para serviços e ferramentas de suporte.
- Criptografia aplicada (AES, RSA, ECC), gerenciamento de chaves e mitigação de ataques de canal lateral.
- RTOS (FreeRTOS, Zephyr) ou Linux embarcado (Yocto, Buildroot).
- Interface hardware/software ou FPGA.
1. Desenvolver e manter firmware em C para sistemas embarcados com requisitos de tempo real e de segurança.
2. Escrever código a partir de requisitos, mantendo a rastreabilidade entre requisito, projeto, código e teste.
3. Criar testes unitários e de integração e ferramentas de automação de bancada e de verificação em Python.
4. Desenvolver ferramentas e software de apoio ao desenvolvimento, à integração e aos testes.
5. Aplicar práticas de codificação segura e mecanismos de proteção contra ataques físicos e lógicos.
6. Participar de revisões de código e de documentação técnica e registrar evidências para auditorias de qualidade.
7. Trabalhar junto com as equipes de hardware, sistemas e qualidade na integração e nos ensaios dos equipamentos.