Uma empresa em rápido crescimento, que está aproveitando o poder da tecnologia para ajudar os proprietários de veículos a gerenciarem melhor seus pagamentos relacionados a automóveis, está procurando contratar um Engenheiro de Integração. O candidato selecionado colaborará com equipes multifuncionais para fornecer produtos de alta qualidade voltados para o usuário. Para ajudar os consumidores a gerenciarem seus impostos sobre veículos, seguros, estacionamento, pedágios e taxas de congestionamento, a empresa está desenvolvendo uma plataforma abrangente de pagamentos. Ela conseguiu arrecadar cerca de £8 milhões em investimentos até agora. Esta será uma função de longo prazo em tempo integral, exigindo mais de 4 horas de sobreposição com o fuso horário PST, sendo uma vaga de trabalho online ideal para engenheiros de software brasileiros.
Responsabilidades:
- Proteger-se contra inputs e erros inválidos e gerenciá-los adequadamente ao desenvolver programação defensiva
- Ajudar com design baseado em modelo, incluindo máquinas de estado, diagramas de tempo e diagramas de sequência (UML/SysML)
- Utilizando ferramentas de linting, criar software que atenda aos padrões do setor, como MISRA, BARR e CERT
- Assumir a responsabilidade pela avaliação crítica das necessidades e compensações de um projeto antes de escolher uma toolchain, fazendo orientações, inspeções e revisões de código
- Elaborar os requisitos solicitados pelos stakeholders
- Utilizar o conhecimento adquirido por meio da conformidade com a IEC62304 para desenvolver software de acordo com as melhores práticas do setor (equivalentes industriais ou automotivos)
Requisitos:
- Bacharelado ou Mestrado em Engenharia ou Ciência da Computação (ou experiência equivalente)
- Pelo menos 3 anos de experiência relevante como engenheiro de integração
- Experiência trabalhando com ThreadX, C e C++
- Experiência trabalhando com Ultra Low Power Electronics
- Conhecimento sobre Sistemas Críticos de Segurança
- Amplo conhecimento sobre os princípios operacionais e compensações, incluindo RTOS
- Conhecimento sobre determinística em tempo real com tempo de resposta máximo definido
- Experiência elaborando e integrando periféricos, além de escrevendo drivers e APIs de baixo nível
- Experiência com documentação de design como Doxygen etc.
- Experiência otimizando o consumo de energia para ultra baixo
- Experiência com práticas de design orientado a objetos, incluindo encapsulamento, ocultação de dados, abstração e design de ótimas interfaces
- Elaborar e implementar unit tests automatizados e experiência com test harnesses (on-target, cross-platform)
- Acompanhar as principais métricas de cobertura, como requisitos, declarações, ramificações, geração de relatórios de teste e RVTM
- Conhecimento sobre verificação de fluxo de controle em tempo de execução usando ferramentas de rastreamento embarcadas
- Experiência usando o debugger e acompanhando o stack
- Apoiar o desenvolvimento de testes de integração em nível de sistema
- Conhecimento sobre testes de regressão automatizados durante o processo de integração contínua e para cada confirmação
- Experiência com rastreamento de bugs e controle de versão de código, como Git ou,por exemplo, JIRA
- Capacidade de trabalhar fluidamente com outras áreas de engenharia, como engenharia mecânica, engenharia eletrônica, bioengenharia, etc.
- Excelente gerenciamento de projeto, de tempo e de recursos, de modo a se responsabilizar pela duração de cada tarefa
- Bons conhecimentos básicos de eletrônica digital, RF e compensações de integração mecânica
- Excelentes habilidades de comunicação em inglês, tanto verbais quanto escritas