Mais que educação e inovação: unimos tecnologia, pesquisa e responsabilidade social para inspirar e transformar o Brasil.
Fique por dentro do que acontece no Instituto, acesse https://inatel.br/noticias/ e acompanhe nossas notícias.
/n
Ensino Superior em Engenharia Elétrica, Engenharia da Computação, Ciências da Computação, Sistemas de Informação ou áreas correlatas.
Experiência em:
* Desenvolvimento de software embarcado de microcontroladores e microprocessadores, com ou sem sistema operacional embarcado,
* Etapas de um ciclo completo de desenvolvimento de um sistema embarcado microcontrolado ou microprocessado;
Domínio em:
* Desenvolvimento de software embarcado para microcontroladores (majoritariamente em C/C++),
* Sistema operacional Linux para desenvolvimento (instalação, configuração, desenvolvimento de scripts),
* Conceitos gerais de sistemas operacionais de tempo real (filas, semáforos, tasks, interrupções) comumente utilizados em sistemas microcontrolados (FreeRTOS, Nuttx, Zephyr, etc.),
* Desenvolvimento de projetos com Linux embarcado (device drivers, scripts de build, montagem de ambiente de build com Buildroot, geração de distros customizadas com Yocto, etc.);
Conhecimento de protocolos de rede utilizados em projetos de IoT (TCP, UDP, MQTT, HTTP, etc.)
/n
* Atuar na liderança técnica de diversas etapas do ciclo de desenvolvimento de projetos de firmware e software embarcado: análise de propostas, definição de escopo junto ao cliente, arquitetura da solução, planejamento e divisão de atividades do time de desenvolvimento, definição de componentes e ferramentas de desenvolvimento;
* Desenvolver firmware (majoritariamente em C) para microcontroladores de fabricantes diversos (ST, NXP, Espressif, Microchip, etc.), de sistemas em bare-metal e com RTOS;
* Realizar processos de bring-up e integração entre HW e SWE em projetos com hardware recém-desenvolvido;
* Propor e justificar novas tecnologias aplicáveis ao projeto, auxiliar no planejamento de atividades e estimar o tempo de implementação de atividades de qualquer natureza ou complexidade atribuídas a ele ou a outros desenvolvedores;
* Realizar a documentação técnica dos artefatos entregáveis e de uso interno do time de desenvolvimento;
* Realizar testes funcionais em ambiente de desenvolvimento ou orientar a equipe sobre a execução;
* Desenvolver programas de testes unitários para plataformas embarcadas e API de abstração de hardware.