Platform Software Developer

  • Bengaluru
  • Juniper Networks

Team Overview:
Be part of a team, which is shaping Juniper's vision of next generation switching and routing products and solutions. You will be part of a highly energetic team responsible for designing and developing Platform & System software for Juniper cloud-ready products and will go through an end-to-end life cycle of the products. These best-in-class networking products run on state-of-the-art distributed Junos Evolved Network Operating system with emphasis on high performance, high scalability, fault tolerance, and high availability of these products.

Responsibilities for this role will involve a complete life cycle of product development spanning, (but not limited to) the following:

  • You will be required to work with cross-functional teams to develop detailed software functional specifications, articulate system/software architecture specifications, for product features, to meet product requirements.
  • SW development in the areas of platform infrastructure, device drivers, kernel, chassis control, device management, link, and interface management.
  • You will be required to carry out detailed design and implementation, unit testing, integration of packet forwarding, related device/kernel drivers, and other related software components for products and features.
  • Work closely with system and solution test teams to ensure correct and complete verification of software and components, for the feature to meet real-life network deployments.
  • You will be required to work closely with Juniper Technical Assistance Team, for providing engineering assistance in supporting critical customer escalations for customer deployments.

Requirements:

  • Bachelors or master’s in computer science or similar field with 5-10+ years’ experience in Platforms/System software development.
  • Strong technical, analytical, and problem-solving skills are key.
  • Strong in C, C++, Embedded Systems and Linux Kernel/Driver development
  • Proficient in working close to hardware - device drivers, system bring-up, Linux/OS fundamentals.
  • Proficient in troubleshooting and debugging complex issues.
  • Good understanding and experience of firmware, Optics, SPI, Retimers, FPGA, CPLD, MDIO, Ethernet Interfaces (10ge - 400ge), timing protocols (SyncE, PTP, etc.), Serdes, Fabric anagement, Chassis management is preferable.
  • Knowledge of how system hardware works is a plus:
    buses, hardware queues/FIFOs, interrupts, BIOS, PCIe, I2C, etc.
  • Experience on bringing up new hardware and/or ASIC
  • Experience working on paradigms to design fault-tolerant and resilient systems will be a big plus
  • Excellent debugging skills and rich experience using various software, hardware, memory debugging tools
  • Ability to articulate technical details via good communication and documentation skills.
  • Quick learner, self-driven, and a team player.


Location :
Bangalore