About The Job
Corinex is seeking a dynamic and creative Senior Firmware Engineer to join our team in developing next-generation smart grid communication devices. In this role, you will play a key part in the full product lifecycle- from system architecture and design through to development, testing, and optimization. You will collaborate closely with hardware, product management, and testing teams to deliver reliable, high-performance embedded solutions for our cutting-edge energy technology.
The ideal candidate has strong expertise in embedded systems, particularly in C/C++, Bash, and Python within Embedded Linux environments. You will be expected to translate complex requirements into scalable firmware components, contribute to system-level design discussions, and drive continuous improvements in quality and efficiency. This role is suited for a hands-on engineer with a passion for smart infrastructure and a desire to help modernize global energy systems.
Corinex is hiring range for this role is CAD $100,000 - $120,000 annually, commensurate with your education and job-related knowledge, skills, and experience.
Duties & Responsibilities:
- Lead the design, development, and implementation of embedded firmware applications, security suites DLMS/cosem, metering data processing and profile collection algorithms.
- Collaborate with hardware and product test teams to ensure seamless integration and testing of end products.
- Optimize firmware for performance, memory usage, reliability, and power efficiency.
- Conduct code reviews, debugging, and testing to ensure code quality and stability.
- Participate in system architecture design and provide technical leadership in embedded systems.
- Drive continuous improvement initiatives and contribute to firmware development best practices.
- Work with product management to understand requirements and translate them into functional firmware solutions.
- Mentor and guide junior engineers in firmware development practices.
- Train and work with field engineers to ensure products are deployed in accordance with customer expectations.
- Stay current with emerging technologies and trends in embedded systems and firmware development.
Qualifications:
- Bachelor's or master's degree in electrical engineering, Computer Engineering, or a related field.
- 5+ years of experience in firmware or embedded software development, specifically within the energy or utility sector.
- Experience developing firmware for embedded devices (e.g., ARM microcontrollers, RTOS), with knowledge of IPv6, SNMPv3, TLS, and network security.
- Strong understanding of wired communication protocols (SPI, I2C, UART, etc.).
- Experience with TCP/IP protocols, RFCs, and security protocols.
- Proven experience solving real-time embedded issues, including threading, optimization, memory management, and interrupt handling.
- Hands-on experience with networking protocols such as TCP/IP, DNS, DHCP, and SSL.
- Experience with internet peering and inter-domain networking.
- Familiarity with network modeling and programming using YANG, OpenConfig, and NETCONF.
- Knowledge of network security design, system performance characterization, and testing.
- Experience with data flow and telemetry design, deployment, and operations.
- Solid understanding of Linux and application development for embedded Linux systems.
- Proficient with standard embedded debugging tools (e.g., terminal programs, GDB, JTAG debuggers).
- Proficiency with code version control tools and development practices (Git, SVN, pull requests, etc.).
- Strong experience using Git-based revision control systems.