Firmware Engineer Servo Drives

Novanta Inc.
1 month ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Senior

Job location

Tech stack

Testing (Software)
Application Notes
Program Optimization
Communications Protocols
Continuous Integration
Datasheets
Software Debugging
Firmware
Software Engineering
Universal Asynchronous Receiver/Transmitter
Information Technology
Bare Metal
Software Version Control

Job description

We are looking for a talented and highly motivated firmware engineer to work on sustaining our range of standard servo drives. The selected candidate will collaborate in the design, implementation, and verification of new drives for the range, as well as the implementation of new features and maintenance of the entire range. This position requires strong firmware skills and a deep understanding of the physics underlying motion control technology., * Develop and maintain firmware for Novanta servo drives.

  • Implement new features for existing products, including additional feedback interfaces, communication protocols, and state-of-the-art motion control algorithms.
  • Participate in the design and development of new products for the standard range.
  • Implement proofs of concept for novel products or features.
  • Develop and maintain continuous integration/development libraries.
  • Collaborate closely with the hardware team to assist with component selection and review hardware schematics.
  • Work closely with the software team to create engaging libraries and applications for our customers.
  • Collaborate closely with the testing team to define test plans for Novanta products.
  • Review and improve external documentation (product manuals, datasheets, etc.).
  • Improve internal documentation (covering architecture, continuous integration/development, detailed design, etc.).

Requirements

  • Bachelor's degree in Electrical Engineering, Computer Science, Telecommunications, or another related technical discipline.
  • Minimum of 4 year working as a Firmware engineer.
  • Proficiency in C, including C in resource-constrained embedded environments.
  • Fluency in software fundamentals, including software design and maintainability.
  • Proficiency in microprocessor bare-metal development with real-time constraints.
  • Hands-on experience in new hardware board bring-up, system debugging, and code optimization.
  • Experience with MCU peripherals: I2C, SPI, CAN, UART, GPIO, etc.
  • Understanding of schematics, datasheets, and application notes.
  • Experience in the use of laboratory instruments.
  • Experience with version control software.
  • Experience in software testing procedures.
  • Fluent written and spoken English.

About the company

Build a career powered by innovations that matter! At Novanta, our innovations power technology products that are transforming healthcare and advanced manufacturing-improving productivity, enhancing people's lives and redefining what's possible. We create for our global customers engineered components and sub-systems that deliver extreme precision and performance for a range of mission-critical applications-from minimally invasive surgery to robotics to 3D metal printing. Novanta is one global team with over 26 offices located in The Americas, Europe and Asia-Pacific. Looking for a great place to work? You have found it with a culture that embraces teamwork, collaboration and empowerment. Come explore Novanta. Our servo drives are at the forefront of innovation, boasting features like miniaturization, power density, low latency, and high performance. These cutting-edge drives are designed to excel in demanding applications, making them ideal for medical robotics, humanoids, and AGVs.

Apply for this position