Pular para o conteúdo

Agile Robots SE

Engenheiro de Performance Sênior em C++ (todos os gêneros)

C++
Tradução automática. Consulte o original.

Sobre a vaga

Na Agile Robots, construímos frameworks de software poderosos para orquestrar sistemas robóticos complexos e resolver tarefas desafiadoras. As soluções são vendidas para diversos clientes internacionais para permitir que controlem suas células de trabalho robóticas. Integração fluida e implantação escalável são objetivos fundamentais.

O AgileCore foi projetado para ser uma plataforma escalável que suporta múltiplos projetos em paralelo. Isso só funciona se a plataforma subjacente escalar junto — se ela permanecer rápida, thread-safe e diagnosticável à medida que projetos, dispositivos e condições operacionais se multiplicam.

Estamos buscando um Engenheiro de Performance Sênior em C++ para se juntar à nossa equipe principal do AgileCore Runtime. Esta é uma função em formato T em uma pequena equipe sênior: você é um membro pleno da equipe principal primeiro — contribuindo para o Runtime, revisando contribuições das equipes que constroem sobre nossa plataforma e compartilhando nossas tarefas de suporte e lançamento — e, dentro da equipe, você assume a prática de performance e estabilidade como sua especialização.

No lado da especialização, você impulsionará a performance do núcleo do Runtime — o Blackboard, o Behavior Engine e os caminhos de execução abaixo deles —, tornará o sistema comprovadamente thread-safe sob carga e fará com que falhas em campo sejam rápidas de diagnosticar. Você é o dono da prática: a metodologia, as ferramentas, os benchmarks, as auditorias e a educação. Você trabalha lado a lado com o arquiteto da plataforma, que detém os orçamentos de performance e os contratos de interface de caminho crítico no nível da arquitetura — você transforma esses orçamentos em uma realidade medida e aplicada, moldando-os com suas descobertas. Você define o padrão para performance, concorrência e solução de problemas, e aumenta a capacidade da equipe de alcançá-lo sem desacelerar o desenvolvimento de funcionalidades. Esta é uma função de entrega, não de pesquisa: o sucesso é medido em melhorias mescladas, escalações de campo encerradas e gates de regressão verdes — não em tabelas de classificação de microbenchmarks. Otimizamos para o orçamento que o produto precisa, não para zero.

Por que esta vaga

  1. Infraestrutura de performance do zero: as suítes de benchmark, orçamentos e gates de regressão de CI são seus para construir, não para herdar
  1. Um problema físico e mensurável: seu profiling e seus benchmarks rodam contra robôs reais em nossos rigs de hardware-in-the-loop — onde plugins de terceiros encontram loops de controle de fornecedores de 1 kHz
  1. Uma pequena equipe principal sênior com propriedade real: seu trabalho se torna o padrão sobre o qual toda a plataforma é construída

Suas Responsabilidades

  1. Assumir a latência, throughput e jitter dos componentes principais do Runtime — o Blackboard (nosso plano de dados em processo, tipado e assinável) e o Behavior Engine (árvore de execução de habilidades, tratamento de gatilhos) — e conduzir melhorias de ponta a ponta: do flame graph à mudança mesclada e a um gate de regressão que a mantém corrigida
  1. Construir a base de tempo real para a plataforma: políticas e prioridades de agendamento, afinidade de CPU, alocação e disciplina de page-fault em caminhos críticos, e estruturas lock-free onde elas valem a pena
  1. Ser um membro pleno da equipe principal do Runtime: desenvolver componentes principais, revisar contribuições de equipes de funcionalidades que constroem sobre a plataforma e participar das rotações de suporte e lançamento da equipe
  1. Tornar a performance mensurável e aplicada — suítes de benchmark, orçamentos por subsistema e gates de regressão em CI em vez de surpresas no site do cliente
  1. Ser a autoridade prática em thread safety: modelos de propriedade, hierarquias de lock, raciocínio de ordem de memória e eliminação de classes inteiras de condições de corrida por meio de sanitizers, testes de estresse e soak testing
  1. Garantir que o produto se sustente em todo o domínio operacional em que é usado — cada dispositivo suportado, perfil de carga e topologia de implantação, não apenas as configurações que aparecem em uma demonstração
  1. Melhorar a capacidade de depuração para que a implantação na fábrica e o suporte escalem: tracing, logs estruturados, métricas de runtime, tratamento de crash e core-dump, símbolos para binários de release stripados
  1. Levar performance e estabilidade para o SDK de Plugin e sua C ABI, onde plugins de terceiros encontram loops de controle de fornecedores rodando a 1 kHz
  1. Investigar problemas complexos através de fronteiras de software, SO, rede e hardware — incluindo as escalações mais difíceis vindas de campo
  1. Parceirar com o arquiteto da plataforma em design crítico de performance: propor e implementar melhorias dentro dos orçamentos de performance e contratos de interface de caminho crítico da plataforma, e retroalimentar as medições em como esses orçamentos são definidos
  1. Mentorar engenheiros em performance, concorrência e solução de problemas por meio de revisões de código, sessões de aprofundamento, discussões de design e orientação técnica — sem gerar sobrecarga

Habilidades Essenciais

  1. 7+ anos de experiência profissional em engenharia de software, com forte desenvolvimento prático em C++
  1. Baseado em Munique ou aberto a realocação — apoiamos realocação e patrocínio de visto
  1. Fortes habilidades de comunicação escrita e verbal em inglês
  1. Forte experiência com C++ moderno, idealmente C++17 ou C++20, incluindo templates e design em tempo de compilação
  1. Engenharia de performance comprovada: profiling antes de otimizar, leitura de flame graphs e contadores de hardware, e raciocínio sobre latência de cauda e jitter em vez de médias
  1. Um histórico de trabalho de performance entregue: melhorias que você conduziu desde a medição até o código mesclado e a aplicação sustentada em CI — não benchmarks isolados
  1. Forte experiência com programação multithread e concorrente: modelos de memória, atomics, padrões lock-free e o discernimento para saber quando um mutex simples é a resposta certa
  1. Exposição a sistemas de tempo real ou quase tempo real em Linux é fortemente preferida: políticas de agendamento, preempção, inversão de prioridade, afinidade de CPU e as fontes usuais de jitter — experiência prévia profunda em RT é um diferencial, não um requisito; os fundamentos de performance importam mais
  1. Fortes habilidades de depuração usando GDB, sanitizers (ASan/TSan/UBSan), Valgrind, perf, strace, ltrace, tcpdump e core dumps
  1. Sólido entendimento dos internos do Linux: processos, threads, IPC, sinais, agendamento, gerenciamento de memória, buffering e vinculação dinâmica
  1. Experiência com CMake e toolchains de compiladores (GCC, Clang)
  1. Experiência escrevendo testes automatizados, incluindo testes unitários, testes de integração e estratégias de teste relacionadas a hardware, bem como benchmarks e testes de estresse/soak
  1. Uma mentalidade sênior pragmática e focada na equipe: você otimiza as coisas que importam para o produto e para quando o orçamento é atingido; você compartilha revisões, suporte e tarefas de lançamento em uma pequena equipe sênior; você torna sua especialidade uma capacidade de toda a equipe em vez de um silo — e você prefere entregar um ganho de 30% esta semana do que discutir um ganho de 3% por um mês

Habilidades Benéficas

  1. Internos de banco de dados: estruturas de armazenamento e índice, controle de concorrência, MVCC, design de transação e cache — nosso Blackboard é essencialmente um armazenamento tipado em processo
  1. Contribuições para software de alta performance ou de sistemas: alocadores, runtimes, engines, bancos de dados, pilhas de rede, kernels
  1. Um background em baixa latência: sistemas de trading, áudio ou vídeo em tempo real, telecomunicações ou controle de movimento embarcado
  1. Extensa metaprogramação de templates e computação em tempo de compilação
  1. Conhecimento de Linux de tempo real, agendamento de kernel, tratamento de IRQ, fronteiras entre kernel/user-space e medição de latência com cyclictest, ftrace ou eBPF
  1. Design de ABI de C++ e API de plugin/biblioteca compartilhada que permanece estável entre compiladores e versões de toolchain
  1. Experiência prática com profilers de instrumentação como Tracy (nós o usamos), bem como perf, VTune ou similares
  1. Internos de Windows e a toolchain MSVC — partes da plataforma também são enviadas em Windows
  1. Fundamentos de rede: TCP/IP, UDP, sockets, latência, buffering e fluxo de pacotes
  1. Experiência projetando arquiteturas sustentáveis — propriedade clara, separação de preocupações, testabilidade — em sistemas limitados pelo tempo, não apenas por funcionalidades

O que oferecemos

  • Uma empresa de alta tecnologia dinâmica, combinada com solidez financeira e investidores de classe mundial.
  • Junte-se a uma equipe interdisciplinar e internacional com 60+ nacionalidades diferentes em um ambiente de trabalho colaborativo.
  • Muitas oportunidades de desenvolvimento à medida que continuamos a crescer.
  • Tarefas desafiadoras e projetos impactantes ao lado de especialistas que permitem o crescimento profissional e pessoal.
  • Programa de Benefícios Corporativos cobrindo saúde, mobilidade e aprendizado por 100€ líquidos por mês.
  • Instalações de escritório modernas com um terraço na cobertura com vista para Munique, bebidas e frutas gratuitas e eventos regulares da empresa contribuem para um bom ambiente de trabalho

Sobre nós

Agile Robots SE é uma empresa internacional de alta tecnologia sediada em Munique, Alemanha, com um local de produção em Kaufbeuren e mais de 3500 funcionários em todo o mundo. Nossa missão é preencher a lacuna entre inteligência artificial e robótica desenvolvendo sistemas que combinam tecnologia de ponta de detecção de força-momento e processamento de imagem líder mundial. Esta combinação única de tecnologias nos permite fornecer soluções robóticas fáceis de usar e acessíveis que permitem a montagem de precisão inteligente.

Isso é possível graças aos nossos funcionários, que trazem o melhor de si a cada dia com criatividade e entusiasmo. Torne-se parte desta equipe e molde o futuro da robótica conosco!

Orgulhamo-nos da nossa diversidade e recebemos sua candidatura independentemente de gênero e identidade sexual, nacionalidade, etnia, religião, idade ou deficiência.

Mais oportunidades com um só perfil

Quer aparecer para várias vagas sem repetir todo o processo? Crie seu perfil e seja encontrado pelas empresas que usam a Nort.

Criar meu perfil

Vagas Dev é mantido gratuitamente pela equipe NortJobs.

Seu próximo empregopode estar na NortJobs.

Vagas Dev

Vagas para desenvolvedores e programadores. Brasil em primeiro lugar. Sua próxima oportunidade.

NortJobs · mantenedoraInstagramLinkedInTwitter
LegalSobre o projetoPrivacidadeVagas Dev © 2026