General Matter
Waymo
Engenheiro de Software Sênior, Android Automotive
Sobre a oportunidade
Waymo é uma empresa de tecnologia de direção autônoma com a missão de ser o motorista mais confiável do mundo. Desde o seu início como o Google Self-Driving Car Project em 2009, a Waymo tem se concentrado em construir o Waymo Driver — o motorista mais experiente do mundo™ — para melhorar o acesso à mobilidade enquanto salva milhares de vidas atualmente perdidas em acidentes de trânsito.
O Waymo Driver impulsiona o serviço de transporte autônomo da Waymo e também pode ser aplicado a uma variedade de plataformas de veículos e casos de uso de produtos.
O Waymo Driver já realizou mais de dez milhões de viagens apenas com passageiros, possibilitado por sua experiência de direção autônoma por mais de 100 milhões de milhas em vias públicas e dezenas de bilhões em simulação em 15+ estados dos EUA.
A infraestrutura de bordo da Waymo é responsável pelo software de baixo nível e pela infraestrutura em vários componentes do sistema de direção autônoma da Waymo.
O escopo da equipe abrange desde software de sistema de baixo nível até registro de dados de alta largura de banda, IPC (baixa latência e alto rendimento), análise de desempenho e depuração de sistema completo.
Trabalhamos com as equipes de Hardware, Computação, Sensores, Percepção, Comportamento e Machine Learning para construir a solução de direção autônoma de maior desempenho e menor latência do setor.
Estamos buscando um Engenheiro de Software de Sistemas Android experiente para se juntar à nossa equipe no desenvolvimento da plataforma de Infotainment Veicular (IVI) para nosso System-on-Chip (SOC) interno de próxima geração. Esta função exige uma base sólida em fundamentos de SO de baixo nível, software embarcado e uma abordagem proativa para validar e garantir que o hardware atenda aos requisitos críticos de desempenho de software.
Nesta função, você irá:
- Inicialização e Integração de Sistema: Implementar e integrar software de baixo nível, incluindo configuração de bootloader, device trees e portabilidade de kernel durante a fase inicial de inicialização do hardware.
- Desenvolvimento e Otimização de SO/Kernel: Personalizar, otimizar e depurar o Kernel Linux e partes relevantes do Android Open Source Project (AOSP) para o SOC parceiro, garantindo uma operação robusta e eficiente.
- Implementação da Camada de Abstração de Hardware (HAL): Desenvolver e manter HALs de fornecedores confiáveis para interconectar o IP de hardware interno exclusivo (por exemplo, módulos de segurança, unidades de gerenciamento de energia, controladores de exibição) com o framework Android.
- Engenharia de Desempenho: Impulsionar a otimização de desempenho em nível de sistema, incluindo redução do tempo de inicialização, ajuste de agendamento, gerenciamento térmico e eficiência energética com base na arquitetura específica do SOC.
- Resolução de Ambiguidade: Gerenciar e esclarecer proativamente os requisitos técnicos para recursos que ainda estão sendo definidos internamente, documentando e estabilizando rapidamente as interfaces para a equipe de software mais ampla.
Requisitos mínimos
No mínimo, gostaríamos que você tivesse:
- Educação: Bacharelado em Ciência da Computação, Engenharia da Computação, Engenharia Elétrica ou uma área técnica estreitamente relacionada.
- Mínimo de 3+ anos de experiência profissional em desenvolvimento de software, com foco em sistemas embarcados, Android de baixo nível ou desenvolvimento de SO.
- Profundo conhecimento em Fundamentos de SO: Sólido conhecimento prático do Kernel Linux (por exemplo, drivers de dispositivo, gerenciamento de memória, IPC, agendamento) e conceitos de sistemas operacionais embarcados.
- Experiência em interface com equipes de hardware: Capacidade comprovada de ler especificações de hardware (datasheets, diagramas de blocos) e comunicar efetivamente os requisitos de software, fornecendo feedback técnico construtivo sobre as escolhas de design de hardware.
- Proficiência em C/C++ é essencial, juntamente com experiência em linguagens de script (Python/Shell) para ferramentas e automação.
- Sólida compreensão do desenvolvimento de sistemas Android: Experiência prática na modificação, depuração e construção do AOSP, incluindo familiaridade com HALs do Android, Treble/VNDK e ferramentas de depuração de sistema.
- Adaptabilidade e Iniciativa: Capacidade demonstrada de prosperar em um ambiente onde as especificações técnicas estão evoluindo, exigindo resolução proativa de problemas e definição de soluções.
É preferível se você tiver:
- Experiência direta no desenvolvimento ou integração de sistemas usando Android Automotive OS ou Android para ambientes embarcados/IVI.
- Experiência com fundamentos de segurança de sistema, particularmente na implementação ou depuração de inicialização segura (secure boot) e ambientes de execução confiáveis (TEEs).
- Experiência com tecnologias de virtualização em nível de sistema (por exemplo, KVM, hipervisores, separação segura) para plataformas embarcadas ou automotivas.
Experiência com pilhas de áudio (por exemplo, ALSA, Audio HAL, Android AudioFlinger) ou pilhas visuais/gráficas (por exemplo, SurfaceFlinger, V-sync, pipelines de exibição).
A faixa salarial base esperada para esta posição de tempo integral em locais nos EUA está listada abaixo. O pagamento inicial real será baseado em fatores relacionados ao trabalho, incluindo o local exato de trabalho, experiência, treinamento e educação relevantes e nível de habilidade. Seu recrutador pode compartilhar mais sobre a faixa salarial específica para o local da função ou, se a função puder ser realizada remotamente, a faixa salarial específica para o seu local preferido, durante o processo de contratação.
Os funcionários da Waymo também são elegíveis para participar do programa de bônus anual discricionário da Waymo, plano de incentivo de ações e generoso programa de benefícios da empresa, sujeito aos requisitos de elegibilidade.
Faixa Salarial
$204,000—$259,000 USD
