AND Digital
AND Digital
A AND Digital é uma empresa de consultoria em tecnologia que ajuda organizações a fortalecer suas capacidades digitais e a desenvolver produtos digitais melhores. Seu trabalho abrange consultoria, engenharia de software, desenvolvimento de aplicativos móveis, design de experiências e soluções de dados, atendendo clientes no Reino Unido, na Europa e nos Estados Unidos. Por meio de sua abordagem “Orientar, Construir e Capacitar”, a AND Digital combina entrega prática com desenvolvimento de capacidades, trabalhando em clubes integrados que unem relacionamentos próximos com os clientes ao acesso a uma expertise técnica mais ampla.

Desenvolvedor C++ contratado - Híbrido em Londres

Vaga para Desenvolvedor C++ contratado na AND Digital, desenvolvendo software confiável em Linux embarcado para tecnologia médica crítica para a segurança. O trabalho abrange componentes de aplicação em C++17, alarmes, persistência, supervisão e gerenciamento de falhas.

Descrição

  • Desenvolver condições de alarme técnico a partir da telemetria do hardware e do sistema operacional
  • Implementar alarmes para sensores de pacientes, qualidade do sinal e monitoramento externo
  • Integrar interfaces de alarme do hardware, incluindo controles de silenciamento, validação do nível de alarme e telemetria
  • Criar mecanismos de tratamento e recuperação de falhas
  • Desenvolver autotestes de inicialização, compatibilidade de hardware, GPU e sistema
  • Implementar estados à prova de falhas, gerenciamento de falhas, watchdogs e supervisão do sistema
  • Dar suporte à detecção e recuperação de sessões interrompidas
  • Desenvolver registro da aplicação, registro de auditoria e rotação de logs
  • Criar interfaces de armazenamento com gravações atômicas e com soma de verificação
  • Gerenciar leitura, exclusão e listagem de sessões em partições de armazenamento fixas
  • Desenvolver empacotamento, enfileiramento, descarregamento, retenção e recuperação de dados de pacientes
  • Dar suporte ao preenchimento retroativo de dados e à apresentação de dados históricos
  • Criar interfaces versionadas entre os dados do backend e a interface gráfica
  • Gerenciar os ciclos de vida dos sensores de pacientes e das sessões
  • Dar suporte a metadados de sessão, recuperação e desligamento normal
  • Desenvolver o tratamento do botão liga/desliga e processos controlados de desligamento
  • Dar suporte à exportação de dados por USB, ferramentas de serviço e manipuladores de serviço do dispositivo
  • Dar suporte a atualizações de software, confirmação e procedimentos de reversão
  • Implementar extração de logs e registro de auditoria
  • Ser responsável por uma área de aplicação independente, do projeto ao código integrado, testado e documentado
  • Colaborar com o arquiteto de software e engenheiros que trabalham em componentes adjacentes
  • Contribuir para um produto de tecnologia médica altamente regulamentado e crítico para a segurança

Requisitos

  • Sólida experiência no desenvolvimento de aplicações modernas em C++17 para Linux embarcado
  • Sólido conhecimento de RAII, tipos de largura fixa, std::atomic, programação multithread e filas sem bloqueio ou limitadas
  • Experiência na criação de software em que comportamento determinístico e confiabilidade são essenciais
  • Experiência com ambientes de execução sem alocação ou com baixa alocação, incluindo memória pré-alocada e contêineres de capacidade fixa
  • Experiência com arquitetura de portas e adaptadores ou hexagonal, interfaces e injeção de dependência
  • Sólida experiência em integração de sistemas Linux, incluindo serviços, watchdogs e gerenciamento de falhas em nível de sistema
  • Experiência com tecnologias de IPC e serialização, como FlatBuffers, sockets de domínio Unix ou named pipes
  • Experiência com CMake, testes automatizados e pipelines de CI/CD
  • Experiência com compilação cruzada, idealmente para plataformas aarch64
  • Sólida experiência com testes unitários, cobertura de código e gates de qualidade
  • Conforto em trabalhar com processos formais de engenharia, incluindo revisão por pares, mudanças rastreáveis e decisões de projeto documentadas
  • Experiência no desenvolvimento de software crítico para a segurança, de missão crítica ou altamente regulamentado
  • Experiência no desenvolvimento de dispositivos médicos ou outros sistemas críticos para a segurança (desejável)
  • Experiência em ambientes regulamentados ou ciências da vida (desejável)
  • Alta proficiência em IA (desejável)
  • Conhecimento de IEC 62304, ISO 13485 ou padrões comparáveis de desenvolvimento de software regulamentado (desejável)
  • Experiência com sistemas de alarme médico ou outros sistemas de alarme e gerenciamento de falhas (desejável)
  • Conhecimento da IEC 60601-1-8 ou de um padrão de segurança equivalente (desejável)
  • Experiência com supervisores orientados por máquinas de estados e sistemas de gerenciamento de falhas (desejável)
  • Experiência com NVIDIA Jetson, CUDA ou processamento acelerado por GPU (desejável)
  • Experiência com Yocto e pacotes de suporte de placas Linux embarcado (desejável)
  • Experiência com systemd, sd_notify, D-Bus e journald (desejável)
  • Experiência com OpenSSL, TensorRT ou tecnologias externas semelhantes (desejável)
  • Experiência usando Docker para ambientes de desenvolvimento (desejável)
  • Experiência com GoogleTest, testes orientados a comportamento ou Gherkin (desejável)
  • Experiência com Python para ferramentas e scripts de implantação (desejável)
  • Experiência contribuindo para atividades de FMEA de software e implementando controles de risco (desejável)

Benefícios

  • Empregador que oferece igualdade de oportunidades e está comprometido com um ambiente de trabalho inclusivo
  • Ajustes razoáveis estão disponíveis durante todo o processo seletivo quando necessários

Vagas relacionadas

Centorrino Technologies

Especialista em gestão de riscos — Austrália (remoto)

Centorrino Technologies

Implementa um sistema de gestão de riscos para organizações australianas reguladas, traduzindo necessidades de governança em configuração, testes, relatórios e adoção. Atua com as partes interessadas em todo o ciclo de implementação, trabalhando com dados de risco, controles e relatórios executivos.

Abrir