×
Register Here to Apply for Jobs or Post Jobs. X

Embedded Software Engineer

Job in Montréal, Province de Québec, H2B, Canada
Listing for: Ciena Corporation
Full Time position
Listed on 2026-02-23
Job specializations:
  • Software Development
    Embedded Software Engineer, Software Engineer, DevOps, C++ Developer
Salary/Wage Range or Industry Benchmark: 79800 CAD Yearly CAD 79800.00 YEAR
Job Description & How to Apply Below
They gather information about your interactions on the site, such as which pages you visit frequently, how long you stay, and the links or buttons you click. They help us record any difficulties you have with the website and help us to evaluate the effectiveness of our advertising.  By analyzing this data, we can understand what aspects of our site are effective and identify areas for improvement.
* This is a secondary processing purpose.
* This is a secondary processing purpose.
* This is a primary processing purpose.
* This is a secondary processing purpose.

Embedded Software Engineer page is loaded## Embedded Software Engineer locations:
Ottawa time type:
Full time posted on:
Publié hierjob requisition :
R029425

As the global leader in high-speed connectivity, Ciena is committed to a people-first approach. Our teams enjoy a culture focused on prioritizing a flexible work environment that empowers individual growth, well-being, and belonging. We’re a technology company that leads with our humanity—driving our business priorities alongside meaningful social, community, and societal impact.

Ciena is a global leader in optical and routing systems, services, and automation software, driving innovation to enable the adaptive network of the future. We are looking for a highly skilled Embedded Software Engineer specializing in Linux device drivers to join our dynamic platform software team. This role involves designing, developing, and maintaining low-level software for Ciena's next-generation networking platforms. A deep understanding of the Linux kernel, hardware/software interaction, and system-level debugging is essential.
** How You Will Contribute
*** Design, develop, debug, and maintain robust Linux kernel device drivers using

C.
* Collaborate with hardware teams to understand device specifications, support hardware bring-up, and develop software for new ASICs and FPGAs.
* Triage and resolve complex low-level software defects during system integration, validation, and customer deployments.
* Utilize advanced debugging tools (e.g., gdb, kgdb, ftrace, perf, JTAG/ICE) to address hardware/software interaction challenges.
* Optimize driver performance for latency, throughput, and resource utilization.
* Upgrade and refine existing codebases while conducting rigorous peer reviews to ensure quality and maintainability.
* Partner with cross-functional teams, including hardware design, QA, and system architects, to define software requirements and specifications.
** The Must Haves
*** Bachelor’s or Master’s degree in Electrical Engineering, Computer Science, or a related field.
* Minimum of 5+ years of experience in embedded system development, with a strong focus on Linux device drivers.
* Expertise in C/C++ programming for embedded systems.
* Deep understanding of Linux kernel internals, including memory management, scheduling, interrupt handling, and device models.
* Proven experience with real-time software implementation and RTOS concepts (e.g., Linux with PREEMPT RT, VxWorks).
* Demonstrated ability to debug complex hardware/software interaction issues, including reading schematics and device datasheets.
* Comprehensive knowledge of OS coding techniques, IP protocols, interfaces (I2C, SPI, MDIO, PCIe), and hardware subsystems.
** Nice to Haves
*** Experience developing Ethernet switch, PHY, or MAC device drivers.
* Familiarity with high-speed Ser Des interfaces.
* Knowledge of platform boot software, such as U-Boot.
* Experience with scripting languages like Python or Bash for test automation.
* Familiarity with YANG modeling language and associated tool chains (e.g., ConfD).
* Contributions to the upstream Linux kernel community.
** Pay Range
** The pay range for this role is competitive and commensurate with experience.  Canada: $79,800.
#LI-JDPay ranges at Ciena are designed to accommodate variations in knowledge, skills, experience, market conditions, and locations, reflecting our diverse products, industries, and lines of business. Please note that the pay range information provided in this posting pertains specifically to the primary location, which is the top location listed in case multiple locations are available.

Non-Sale…
Note that applications are not being accepted from your jurisdiction for this job currently via this jobsite. Candidate preferences are the decision of the Employer or Recruiting Agent, and are controlled by them alone.
To Search, View & Apply for jobs on this site that accept applications from your location or country, tap here to make a Search:
 
 
 
Search for further Jobs Here:
(Try combinations for better Results! Or enter less keywords for broader Results)
Location
Increase/decrease your Search Radius (miles)

Job Posting Language
Employment Category
Education (minimum level)
Filters
Education Level
Experience Level (years)
Posted in last:
Salary