What are the responsibilities and job description for the Firmware Engineer position at Corinex Communications?
About The Company
Corinex is at the forefront of the global decarbonization movement, empowering prosumers to generate and consume electricity from distributed energy resources (DERs) such as renewable energy, EVs, heat pumps, and batteries. This decentralized approach to electricity generation and consumption introduces challenges like unpredictable power quality fluctuations and surges, creating significant opportunities for innovation. As a leading Cleantech company, Corinex provides advanced technology solutions that enhance grid flexibility and visibility. Our high-speed, secure connectivity solutions enable comprehensive monitoring and control of DERs over existing utility powerline infrastructure. Our standardized solutions have positioned us as industry leaders, demonstrated by our rapid international growth and sustained profitability.
We pride ourselves on fostering a fast-paced, dynamic, and collaborative work environment that thrives on an entrepreneurial spirit. Certified as a Great Place to Work, our employees are integral to our success. We seek professionals who are passionate about making a global impact, bringing energy, enthusiasm, creativity, and an open mind to their work. We work hard but also know how to play and laugh, always with respect. We enjoy leading in our field and value risk-takers, visionaries, and those with strong execution skills.
If you are excited about contributing to global decarbonization through innovative, market-validated technology, we want to hear from you!
About The Job
We are currently seeking a Senior Firmware Engineer to join our Research and Development Engineering team located in the Downtown Vancouver office. In this role, you will be responsible for designing, developing, and optimizing firmware for our metering and Data concentrator products, working closely with cross-functional teams to ensure robust and efficient software-hardware integration. The ideal candidate will have a passion for embedded systems and firmware development and a proven track record in delivering high-quality solutions in a fast-paced environment.
Duties & Responsibilities:
- Participate in the development of next-generation smart grid communication devices and equipment
- Participate in system design discussions and provide comprehensive solutions for new and existing products
- Translate open-ended user requirements into clear and specific product functional components
- Communications and Control Software Design and Development in C/C , Bash, and Python targeting embedded environments, including Embedded Linux
- 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.
- Stay current with emerging technologies and trends in embedded systems and firmware development
Qualifications:
- Bachelor’s Degree in Computer Engineering/Science, Electrical or Systems Engineering, or equivalent degree
- Minimum 3 years of relevant work experience in embedded programming languages such as C/C
- Experience with firmware for embedded devices (ARM microcontrollers, RTOS)
- knowledge of IPv6, SNMPv3, TLS, and Network Security
- Knowledge of wired communication protocols (SPI, I2C, UART, etc.)
- Experience in TCP/IP RFCs and Security protocols
- Proven experience solving real-time embedded issues, including threading, optimization, memory management, interrupt handling, etc.
- Experience with networking protocols such as TCP/IP, DNS, DHCP, and SSL.
- Experience with Internet peering and inter-domain networking.
- Experience with network modelling and programing – YANG, OpenConfig, NETCONF. Knowledge of network security design, system performance characterization and testing.
- Knowledge of data flow and telemetry design, deployment and operation.
- Understanding of Linux and application development for embedded Linux systems
- Knowledge of standard embedded debugging tools (terminal programs, gdb, JTAG debuggers, etc.)
- Excel at code revision software and code development practices (Git, SVN, pull-requests, etc.)
- Experience with Git-based revision control
Why Join Us?
- Impactful Work: Contribute to global decarbonization efforts with innovative technology.
- Collaborative Environment: Work in a dynamic, entrepreneurial setting with a supportive team.
- Professional Growth: Opportunities for continuous learning and career development.
- Great Culture: Certified as a Great Place to Work, we value respect, creativity, and having fun while making a difference.