Job Id: 1034

Firmware Engineer Position

Wakefield, MA

Use your strengths in embedded programming in many of new and existing optical metrology instruments. The successful candidates will have a keen mathematical aptitude, a history of developing optimized control and analysis algorithms, and a proven record writing creative bulletproof code. Experience with optics or image processing is a big plus but is not essential. This position reports to a senior software engineer, but requires a high degree of self-motivation as well as the ability to work in multidisciplinary teams.


  • Minimum of five-years of firmware development experience using compiled C code on Microchip PIC Microcontrollers using MPLab IDEs.
  • Expertise utilizing direct memory access (DMA), hardware interrupt routines, and function pointer programming skills.
  • Experience programming CANbus, UART, SPI, I2C, etc communications.
  • Hands on experience with programming some of the following: motion controllers, LCD displays, DACs, A/Ds, I/O controls, PWM controls, PID loops
  • Experience in a full cycle of instrumentation development.
  • Experience in programming computer device interfaces such as general I/O, serial communications, CANbus, Ethernet card, USB, FireWire etc.
  • Experience with Microsoft .Net programming is a plus.
  • FPGA programming is a plus.
  • Bachelor or higher degree in computer science or a relevant engineering or science degree
  • Experience or knowledge of optics, photonics, or image processing is preferred.
  • Must be enthusiastic, self-motivated, and eager to learn.
  • Good verbal and written communication skills are essential.
  • US Citizenship or permanent residency required.


  • Write firmware for new and existing instrumentation, mostly on Microchip PIC devices.
  • Collaborate with Electronic Engineering in the concept and design phases for new control circuitry.
  • Manage software development projects.
  • Participate in engineering consulting projects.
  • General maintenance, support, and improvement of existing product application code.
  • Writing technical documentation such as user manuals and interface documents.
  • Provide technical support to customers and projects on software related issues.

Please click the green APPLY button below and include your resume.

  • Max. file size: 300 MB.