Job DescriptionIPG Photonics (NASDAQ:IPGP) is seeking a Senior Embedded Real-Time Software Engineer to join our agile software development team in
Kingston, Ontario, Canada. Our Kingston group is responsible for inventing, developing, and building novel process monitoring tools for advanced manufacturing industries.
The group's products are integrated with
IPG's industry-leading laser processing solutions and are used to provide quality assurance for high-power laser processing applications in manufacturing of automotive, aerospace, biomedical, and consumer electronics products. Our technology empowers many household brands to offer increasingly reliable, safe, and efficient solutions to empower industry and improve the lives of consumers. In particular, our technology is being used to drive the electric vehicle revolution.
This position involves leading real-time algorithm development for our company's next generation laser weld measurement product to enable new detection capabilities. It involves collaboration with our R D team to develop time-critical measurement detection algorithms for Linux environments, collaboration with our Windows-based software group to improve performance bottlenecking algorithms, and collaboration with our FPGA development team to implement time-critical, hardware-based algorithms.
We expect candidates with strong backgrounds in real-time embedded algorithm development, specifically focusing on time-critical algorithm development in C-based languages for embedded Linux targets. A strong mathematical background is preferred.
Responsibilities- Leading embedded, real-time algorithm development projects in C/C++ for embedded Linux targets
- Analyzing bottlenecks in existing algorithms and developing alternative real-time implementations
- Coordinating migration of performance critical algorithms to hardware-based implementations
- Mentoring junior developers and advising on real-time development best practices
- Prototyping, developing, testing, and maintaining production quality algorithms
- Advancing our team's algorithm development processes and tools
Requirements- 5+ years of professional embedded, real-time algorithm development experience in C/C++ for embedded Linux targets
- Proficiency in Linux as a development platform and embedded target platform
- Experience developing embedded software for ARM microprocessors
- Extensive understanding of embedded and real-time software development concepts, including multi-tasking, inter-process communication, interrupts,
- Strong interest in software development for industrial applications
- A strong mathematical background is a benefit
- Experience in radar-based applications is a benefit
- Experience with FPGA development projects is a benefit
- Excellent learning, communication, and teamwork abilities
- Must be authorized to work in Canada