Likeremote

Subscribe to the latest remote jobs:

  • Likeremote jobs on https://LinkedIn.com/
  • Likeremote jobs on https://telegram.org/
  • Likeremote jobs on Reddit.com

Senior Embedded Software Engineer

Corinex Communications
🇨🇦 Canada
On-site
Senior
3 weeks ago
  • Linux
  • UART
  • TCP
  • UDP
  • CI/CD
  • VLANs
Not scoredNo CV on file. Upload one and this job gets a score out of 100.Upload CV

About The Company

At Corinex, we are driving the future of energy with cutting-edge Broadband over Power Line (BPL) technology. As a global leader in smart grid solutions, we enable utilities to enhance grid visibility, flexibility, and decarbonization, supporting the seamless integration of renewable energy, electric vehicles, and heat pumps into the power grid.


Headquartered in Vancouver, Canada, Corinex is the market leader in Europe, particularly in Spain, where our BPL solutions are deployed by major DSOs (Distribution System Operators) to improve grid operations. With successful implementations across global markets, our technologies accelerate the transition to a more sustainable, decentralized, and efficient energy infrastructure. Recognized as a key contributor to industry standards and a 2024 Deloitte Technology Fast 50 winner, Corinex is shaping the future of smart energy.


About the Job

Corinex is seeking an experiencedSenior Embedded Software Engineer to join our engineering team in developing next-generation smart grid communication devices. In this role, you will work on low-level embedded software and platform development across the full product lifecycle, from board bring-up and BSP development to system integration, debugging, validation, and production support.


The ideal candidate has strong hands-on experience withEmbedded Linux, C programming, Linux kernel and device drivers, BSP development, bootloaders, and hardware bring-up. You will work closely with hardware, firmware, networking, and test teams to develop reliable and high-performance embedded platforms for our smart grid communication products.


This is a hands-on engineering role suited for someone comfortable working close to the hardware, debugging complex system-level issues, and taking ownership of embedded platforms from initial board bring-up through production deployment.


Duties & Responsibilities

  • Design, develop, integrate, and maintain embedded software for Linux-based communication devices.
  • Develop and maintainBoard Support Packages (BSPs), platform software, and low-level firmware components.
  • Performnew board bring-up, hardware-software integration, and system-level debugging.
  • Develop, configure, and maintainLinux kernel components and device drivers.
  • Configure and maintainU-Boot, bootloaders, Device Tree (DTS/DTB), and Linux kernel configurations.
  • Debug hardware and embedded software using tools and interfaces such asJTAG, UART/serial console, GDB, and OpenOCD.
  • Investigate and resolve system-level issues involving hardware, firmware, kernel, drivers, and networking.
  • Work with embedded interfaces and peripherals includingSPI, I²C, GPIO, UART, and Ethernet.
  • Support embedded networking functionality, including troubleshootingEthernet, VLAN/bridge configuration, IP addressing and routing, TCP/UDP, multicast, and network management protocols.
  • Develop and maintain Embedded Linux builds using technologies such asYocto Project, OpenEmbedded, and BitBake.
  • Collaborate closely with hardware engineers during schematic review, board validation, and product bring-up.
  • Perform structured root-cause analysis and troubleshoot complex hardware-software integration issues.
  • Participate in system architecture and technical design discussions.
  • Develop scripts and automation tools to support build, validation, flashing, testing, and manufacturing processes.
  • Contribute to CI/CD pipelines and automated hardware or firmware testing.
  • Conduct code reviews and contribute to engineering best practices, coding standards, and technical documentation.
  • Support manufacturing, factory flashing, recovery tooling, and production testing when required.
  • Mentor junior engineers and provide technical guidance on embedded software development and debugging.


Qualifications

  • Bachelor’s or Master’s degree inElectrical Engineering, Computer Engineering, Computer Science, or a related technical field.
  • 5+ years of professional experience in embedded software, firmware, or Embedded Linux development.
  • Strong programming experience inC, with solid understanding of low-level programming concepts.
  • Strong hands-on experience developing software forEmbedded Linux systems.
  • Experience withLinux kernel development, BSP development, and/or Linux device drivers.
  • Proven experience withboard bring-up and hardware-software integration.
  • Hands-on experience withU-Boot or other bootloaders andDevice Tree configuration.
  • Strong experience debugging embedded systems throughUART/serial console and JTAG.
  • Experience working directly with hardware, schematics, processors, peripherals, and board-level interfaces.
  • Strong understanding of embedded communication interfaces such asSPI, I²C, UART, GPIO, and Ethernet.
  • Strong troubleshooting skills and ability to perform structured root-cause analysis across hardware and software layers.
  • Proficiency withGit-based version control and modern software development practices.


Nice to Have

  • Experience withYocto Project, OpenEmbedded, and/or BitBake.
  • Experience withEthernet or networking driver development.
  • Strong understanding of networking concepts includingTCP/IP, UDP, VLANs, bridges, routing, multicast, and network management protocols.
  • Experience usingOpenOCD, GDB, or similar low-level debugging tools.
  • Experience withfactory flashing, firmware recovery, and production tooling.
  • Experience scripting inPython or Shell.
  • Experience withCI/CD and automated hardware or firmware testing.
  • Experience supportingmanufacturing or production test environments.
  • Experience withC++, bare-metal firmware, orRTOS-based systems.
  • Experience with embedded communication, telecommunications, networking equipment, industrial networking, or smart grid technologies is an asset.

Senior Embedded Software Engineer · Corinex Communications

Auto apply with Likeremote