Unity Technologies
Arista Networks
Engenheiro de Software Sênior/Líder (Packet Forwarding Engines)
Descrição da Empresa
A Arista Networks é líder do setor em redes baseadas em dados, do cliente à nuvem, para grandes data centers, campus e ambientes de roteamento. O que nos diferencia é nossa busca incansável pela inovação. Aproveitamos os mais recentes avanços em computação em nuvem, inteligência artificial e redes definidas por software para oferecer aos nossos clientes uma vantagem competitiva em um mundo cada vez mais interconectado. Nossas soluções são projetadas não apenas para atender às demandas atuais do cenário digital, mas também para antecipar e se adaptar a desafios futuros.
Na Arista, valorizamos a diversidade de pensamentos e perspectivas que cada colaborador traz. Acreditamos que promover um ambiente inclusivo, onde indivíduos de diversas origens e experiências se sintam bem-vindos, é essencial para impulsionar a criatividade e a inovação.
Nosso compromisso com a excelência nos rendeu vários prêmios de prestígio, como Melhor Equipe de Engenharia, Melhor Empresa para Diversidade, Remuneração e Equilíbrio entre Vida Pessoal e Profissional. Na Arista, orgulhamo-nos do nosso histórico de sucesso e nos esforçamos para manter os mais altos padrões de qualidade e desempenho em tudo o que fazemos.
Descrição da Vaga: Com quem você trabalhará
A Arista Networks está em busca de engenheiros de software de classe mundial para se juntarem à nossa equipe de desenvolvimento de Packet Forwarding Engines (PFE) e software de sistema. Como membro central da equipe de software PFE e software de sistema, você fará parte de uma equipe ágil e de alto calibre, construindo mecanismos de encaminhamento de pacotes e software de sistema para gerenciar os ASICs de rede mais complexos do mundo, usados para construir as maiores redes de data center do setor. Seu software será um componente chave do Extensible Operating System (EOS) da Arista, o sistema operacional de rede exclusivo da Arista, baseado em Linux, que roda em todos os produtos de rede de data center da Arista. A equipe de Packet Forwarding Engines e software de sistema é responsável por todos os aspectos do desenvolvimento e entrega do nosso software de mecanismo de encaminhamento baseado em ASIC. Você trabalhará com seus colegas engenheiros para entender os requisitos funcionais e técnicos para os próximos projetos. Você escreverá especificações funcionais, especificações de design, planos de teste e o código para dar vida a tudo isso. Você também trabalhará com clientes para triar e corrigir problemas em suas redes. Internamente, você desenvolverá testes automatizados para seu software, monitorará a execução desses testes e triará e corrigirá problemas encontrados por seus testes. Na Arista, você será dono de seus projetos desde a definição até a implantação, e será responsável pela qualidade de tudo o que entregar.
O que você fará
Esta função exige fundamentos sólidos de engenharia de software e um bom entendimento de mecanismos de encaminhamento de pacotes baseados em ASIC, componentes de hardware (como sensores de temperatura, controladores de ventoinha, etc.), software de gerenciamento de sistema de placa, como o software que os gerencia é implementado e as redes nas quais eles são usados. Sua função não se limitará a nenhum aspecto único do gerenciamento de mecanismos de encaminhamento de pacotes baseados em ASIC na Arista, mas cobrirá todos os aspectos de inicialização de novo hardware, desenvolvimento de todos os recursos que exigem suporte de encaminhamento de hardware (incluindo drivers de hardware de baixo nível), teste do software e hardware, e suporte aos nossos clientes que usam os produtos que você constrói.
Responsabilidades
- Escrever especificações funcionais e especificações de design para recursos de mecanismos de encaminhamento de pacotes de pequeno porte e software de sistema para gerenciar componentes de hardware.
- Implementar de forma independente soluções para problemas de pequeno porte em nosso software de mecanismo de encaminhamento de pacotes e software de sistema usando as linguagens de programação C, C++ e python.
- Entender, utilizar, testar e depurar bibliotecas de software fornecidas pelo fornecedor de mecanismos de encaminhamento de pacotes e componentes de hardware em suas soluções.
- Escrever especificações de plano de teste para recursos de mecanismos de encaminhamento de pacotes de pequeno porte e software de sistema, e implementar programas de teste automatizados para executar os casos descritos no plano de teste.
- Depurar problemas encontrados por nossos programas de teste automatizados e corrigir os problemas.
- Trabalhar em uma equipe implementando, testando e depurando soluções para problemas maiores de software de mecanismo de encaminhamento de pacotes e problemas de software de sistema.
- Trabalhar com Engenheiros de Suporte ao Cliente para analisar problemas em redes de clientes e fornecer correções para esses problemas quando necessário, na forma de novas versões de software ou patches de software.
- Trabalhar com a equipe de hardware e fornecedores de componentes de hardware para inicializar versões iniciais de novos sistemas usando mecanismos de encaminhamento de pacotes e software de sistema.
- Trabalhar com a equipe de software de diagnóstico para projetar e desenvolver software para a validação de novos ASICs de mecanismo de encaminhamento de pacotes e componentes de hardware.
- Trabalhar com os Engenheiros de Teste de Sistema para analisar problemas encontrados em seus testes e fornecer correções para esses problemas.
- Orientar engenheiros novos e juniores para ajudá-los a se familiarizar com o ambiente de desenvolvimento de software da Arista.
- Revisar e contribuir com as especificações e implementações escritas por outros membros da equipe.
- Ajudar a criar um cronograma para as tarefas de implementação e depuração, atualizando esse cronograma semanalmente e reportando-o ao líder do projeto.
Qualificações
Bacharelado em Ciência da Computação/Engenharia Elétrica/Engenharia da Computação + 8 anos de experiência, ou Mestrado em Ciência da Computação/Engenharia Elétrica/Engenharia da Computação + 6 anos de experiência, ou Doutorado em Ciência da Computação/Engenharia Elétrica/Engenharia da Computação + 3 anos de experiência, ou experiência de trabalho equivalente.
Experiência ou conhecimento no seguinte:
- C ou C++
- Conhecimento de UNIX ou Linux
- Compreensão de redes IP ou sistemas distribuídos
- Compreensão aplicada de princípios de engenharia de software
- Fortes habilidades de resolução de problemas e solução de problemas de software
- Capacidade de projetar uma solução para um problema de pequeno porte e implementar essa solução sem ajuda externa.
- Capaz de trabalhar em uma pequena equipe resolvendo um problema de médio porte com supervisão limitada.
Informações #LI-PA1Additional
O salário base para esta função tem uma faixa de $120,000 a $195,000 em todo o Canadá. A Arista oferece diferentes faixas salariais com base no local de trabalho, para que possamos oferecer uma remuneração consistente e competitiva adequada ao mercado. O salário base real oferecido será baseado em uma ampla gama de fatores, incluindo habilidades, qualificações, experiência relevante e local de trabalho.
A faixa salarial fornecida reflete apenas o salário base e, além disso, certas funções também podem ser elegíveis para bônus discricionários da Arista e participação acionária. Os colaboradores em funções de Vendas são elegíveis para participar do Plano de Incentivo de Vendas da Arista, que paga comissões calculadas como uma porcentagem das vendas elegíveis. Os colaboradores também têm direito a benefícios, incluindo assistência médica, odontológica, oftalmológica, bem-estar, proteção de renda e um Plano de Poupança para Aposentadoria em Grupo. A equipe de recrutamento pode compartilhar mais detalhes durante o processo de contratação, específicos para a função e local.
