Logo
Juniper Networks

Software Engineer Staff - C, C++ Embedded/Platform Software Development

Juniper Networks, Sunnyvale, CA


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 timing and synchronization, 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 8+ 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 developmentProficient in working close to hardware - device drivers, system bring-up, Linux/OS fundamentals.Proficient in troubleshooting and debugging complex issues.Good understanding firmware, hardware level details for timing protocols (SyncE, PTP), Ethernet Interfaces (10ge - 400ge),  Optics, PCIe, SPI, Retimers, FPGA, CPLD, MDIO,  is preferable.Experience of working on PTP, SyncE, IEEE-1588, ITU-T timing standards will be plus.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 ASICExperience working on paradigms to design fault-tolerant and resilient systems will be a big plusExcellent debugging skills and rich experience using various software, hardware, memory debugging toolsAbility to articulate technical details via good communication and documentation skills.Quick learner, self-driven, and a team playerMinimum Salary: $159,200.00Maximum Salary:$228,850.00The pay range for this position is expected to be between $159,200.00 and $228,850.00/year; however, the base pay offered may vary depending on multiple individualized factors, including market location, job-related knowledge, skills, and experience. The total compensation package for this position also includes medical benefits, 401(k) eligibility, vacation, sick time, and parental leave. Additional details of participation in these benefit plans will be provided if an employee receives an offer of employment.If hired, employee will be in an “at-will position” and the Company reserves the right to modify base salary (as well as any other payment or compensation program) at any time, including for reasons related to individual performance, Company or individual department/team performance, and market factors.Juniper’s pay range data is provided in accordance with local state pay transparency regulations. Juniper may post different minimum wage ranges for permanent residency petitions pursuant to US Department of Labor requirements.Posting Date: 2024-08-20