Senior Embedded Software Engineer
$95,800–$153,000 year
On-siteOttawa, Ontario, Canada
Job Summary
Participate in the software development lifecycle from development through customer delivery by implementing cross-platform software and services for embedded CPUs, SoCs, Ethernet PHYs, FPGAs, and optical technologies. Design, code, and maintain drivers, diagnostics, and applications using C, C++, and Python while applying Linux kernel, TCP/IP stack, forwarding table, IP filtering, VLAN, and memory management concepts. Debug software defects and analyze system throughput and performance, and port common operating system components across product families within Ciena. Develop scripts, test utilities, and development tools that improve engineering efficiency. This fully in-office position in Ottawa requires on-site presence four days per week.
Required Qualifications
- Bachelor's degree in Engineering, Computer Science or equivalent
- 6+ Years of experience with embedded C and C++ programming language
- Linux kernel driver and user-space driver development
- Experience with BSP, security, and board bring-up
- Fundamentals of structured programming and design concepts
- Interest and aptitude for software development
- Enthusiasm and willingness to learn
- This is a fully in-office position based in Ottawa
- Employees are required to work on-site 4 days per week
Desired Qualifications
- Real-time operating systems concepts
- Experience developing drivers in Zephyr
- Ability to interpret CPU hardware architectures, hardware functional specifications, and hardware timing diagrams
- Exposure to software development methodologies such as Agile or Waterfall
- Familiarity with datacom and telecom concepts including DWDM, SONET/SDH, OTN, Ethernet, OSI Model, TCP/IP, and MPLS
Hiring someone like this?
Get your role in front of qualified candidates on Sorce.