
Dataplane Software Engineer, Routing IP
- Ottawa, ON
- $99,200-158,400 per year
- Permanent
- Full-time
- Work collaboratively in all stages of the software development process, including requirements analysis, functional specification, design, coding, integration, verification and support.
- Design and develop software written in C/C++ for advanced Layer 2, MPLS and IP services, including drivers, APIs and dataplane applications.
- Develop software which runs in a real-time embedded Linux environment.
- Contribute towards the release of new products and new networking features as well as enhancements of existing software.
- Provide basic project management for your own work, including effort estimation, tracking, monitoring, status reporting, communicating advancements and raising potential issues that may have an influence on product functionality or target dates.
- Engineer software using the Agile methodology.
- Develop and maintain carrier-grade software through test driven development, automated unit testing, and comprehensive integration testing.
- Participate in backlog defect reduction.
- Troubleshoot issues and work with hardware, software and system engineers to identify the root cause.
- Help investigate and collect information to resolve process or design issues found in the codebase.
- Bachelor’s degree in Electrical/Computer Engineering
- 5+ years work experience focused on embedded software development in a networking or telecommunications environment
- Extensive C programming language experience
- Familiarity with developing software on multi-processor, highly concurrent systems running in an embedded Linux environment
- Experience with real-time, embedded software development for some or all of the following data plane technologies:
- Hardware-based Layer 2/3 forwarding engines (ASICs, NPUs, FPGAs, TCAMs)
- End-to-end slow path forwarding and packet exception handling
- MPLS, BGP and Segment Routing centric solutions
- IPv4, IPv6, E-VPN and IP-VPN
- Embedded fast protection mechanisms such as BFD, BGP-PIC and FRR
- Other data-plane services including traffic management, metering, ACLs
- Experience with Broadcom DNX/XGS packet processing chipsets is a strong asset
- Experience with Datapath programming using DPDK is an asset
- Good knowledge of mutual exclusion, synchronization, interrupt handling, inter-process communication, etc.
- Enthusiastic, highly motivated, and innovative
- Self-motivated problem solver, seeks answers with a willingness to learn and work independently
- Strong verbal and technical writing skills
- Collaborates well in a multi-site, multi-geography team environment