C Software engineer - Network ASIC's

Sé de los primeros solicitantes.
MBR Partners
Comunidad Valenciana
A distancia
EUR 50.000 - 70.000
Sé de los primeros solicitantes.
Hace 5 días
Descripción del empleo

Our client's team is developing the network OS that drives switches and routers designed and manufactured by their company. Their networking solutions (incl. the NOS) are deployed in on-premise cloud data centre environments of our enterprise and MSDC customers.

They are looking for software engineers with solid experience in the packet networking field to join our team and work on the software design and development of components of the OS directly interacting with the hardware.

Responsibilities

  1. Design and develop the networking OS that drives our data centre switches and routers; specifically — the component of the NOS that programs the network ASIC.
  2. Fix bugs in the software within the area of responsibility and improve performance of the product.
  3. Collaborate with hardware engineers to ensure seamless integration of software and hardware components; with control plane engineers in order to support provisioning of control plane information into the chip.
  4. Participate in code reviews and contribute to the development of best practices.
  5. Help with troubleshooting and resolve issues that arise in the networking operating system.
  6. Support the Quality Control team in automated test development to ensure quality and reliability of the networking software.
  7. Stay up-to-date with the latest networking trends and technologies, and incorporate them into the software design.

Qualifications required to start

  1. Bachelor's degree or equivalent experience in Computer Science, Electrical Engineering or related field.
  2. Familiarity with Ethernet and IP-based protocols, dynamic routing protocols (BGP, OSPF at a minimum).
  3. Ability to work with industry standards such as IETF RFC, IEEE etc. — understand standard requirements, implement the described behaviour and messaging in C code.
  4. Proficiency in C programming language.
  5. Experience of developing software for Linux OSes (this implies at advanced Linux user as well).
  6. Experience in developing and maintaining software operating systems in data centre / telecom environment.
  7. Ability to work with a large codebase : navigate the code in an efficient manner, interpret the code on the fly.
  8. Experience debugging complex and multithreaded software.
  9. Strong problem-solving and analytical skills.
  10. Ability to work independently and collaboratively in a team environment.

Ways to stand out

  1. Hands-on experience with microchip vendor SDKs (ASICs) and driver development (CPLDs, FPGAs).
  2. Understanding of the Linux kernel networking architecture.
  3. Hands-on experience with I2C, SMBus / PMBus interfaces, ACPI.
  4. Experience with network protocols such as BGP, OSPF, STP, MPLS, LDP.
  5. Experience developing multithreaded Linux applications.
  6. Some experience with embedded (being able to interpret a device data sheet, common on-board hardware components interconnection principles and mechanisms).
  7. Experience with distributed systems and / or cloud computing systems.
  8. Familiarity with virtualisation / containerisation technologies such as KVM / QEMU and Docker, Kubernetes.

The client can sponsor work permits in the UAE but the role can be located remotely in other countries.

Obtenga la revisión gratuita y confidencial de su currículum.
Selecciona un archivo o arrástralo y suéltalo
Avatar
Asesoramiento online gratuito
¡Mejora tus posibilidades de entrevistarte para ese puesto!
Adelántate y explora vacantes nuevas de C Software engineer - Network ASIC's en