ABOUT HMS NETWORKS
We shape the connected world!
HMS stands for Hardware Meets Software and we work to make the world more connected, productive, and sustainable. HMS industrial communication products enable millions of machines such as robots, drives and air-conditioners to get connected to software and systems – A necessity to meet the future demands for energy efficiency and sustainability.
We build the products that make industrial equipment talk to each other. Our communication cards and modules sit inside machines, robots and control cabinets around the world, connecting them to networks such as EtherNet/IP and PROFINET.
HMS Networks is a global leader in industrial ICT, connecting devices and systems across factory automation. Our Waterloo site is a center of expertise in industrial communications interfaces, working as part of HMS's global hardware community alongside teams in Sweden, France, and other locations around the world.
ROLE PURPOSE
We're looking for an embedded software developer to join our R&D team in Waterloo. You'll develop the embedded software that runs on our industrial communication products - PCIe interface cards and PLC communication modules - from initial investigation, design, and specification through to testing, user documentation, and conformance.
KEY RESPONSIBILITIES
- Develop and maintain embedded C software for our industrial communication products, on bare-metal and RTOS targets.
- Integrate and port industrial protocol stacks - EtherNet/IP, PROFINET, and others - onto our platforms, and develop new product-specific features.
- Write the specifications and design documents for what you build, and help develop the test plans that prove it works.
- Utilize and maintain the automated build and test pipelines that keep our releases reliable.
- See verification and validation through - analyze failures, find root causes, and close them out.
- Work closely with hardware, test, and product management, and keep the team informed on where your work stands.
QUALIFICATIONS
Required
- A degree in electronics, embedded systems, computer engineering, or computer science - or equivalent experience.
- 3+ years developing embedded software, with strong C skills on microcontrollers or SoCs.
- A solid grasp of real-time software and of Ethernet & TCP/IP networking.
- Confidence debugging real hardware - debugger, oscilloscope, logic analyzer, network captures.
- Experience with Git, CMake, or Make.
Preferred
- Hands-on experience with industrial protocols such as EtherNet/IP, PROFINET, EtherCAT, or DeviceNet.
- Porting a third-party communication stack to a new platform.
- PCIe device or driver development.
- Experience integrating AI coding assistants into your day-to-day workflow to streamline development.
- PLCs and their engineering tools environments (Rockwell, Siemens, etc.).
- CI for embedded software.
- MISRA-C, CERT-C.
- Embedded cybersecurity (secure boot, signed updates).
KEY COMPETENCIES
- Fluent in written and spoken English, with the ability to collaborate across our international R&D organization.
- Comfortable owning your work end to end, from initial investigation and design through testing and conformance.
WHY JOIN US
- Real products, shipped worldwide, that you own end to end.
- Deep expertise in industrial communication - specialized, rare, and durable.
- An experienced local team, inside an international R&D organization.
- A hybrid schedule from our Waterloo office.
- Paid vacation.
WORKING CONDITIONS
Hybrid schedule from our Waterloo, ON, CA office. Mostly office-based, with prolonged periods of sitting.
TRAVEL
0-5%
EQUAL OPPORTUNITY
HMS Networks provides equal employment opportunities (EEO) to all employees and applicants for employment without regard to race, color, religion, sex, national origin, age, disability or genetics. In addition to federal law requirements, HMS Networks complies with applicable state and local laws governing nondiscrimination in employment in every location in which the company has facilities. This policy applies to all terms and conditions of employment, including recruiting, hiring, placement, promotion, termination, layoff, recall, transfer, leaves of absence, compensation and training.
HMS is committed to an accessible and inclusive hiring process. Accommodations are available on request for candidates taking part in all aspects of the selection process. If you require an accommodation, please contact us and we will work with you to meet your needs.