Founded in 1989, Thorlabs seeks to accelerate the forward movement of scientific discovery and advancement! As a vertically integrated manufacturer of photonics components, instruments, and systems, our vast product portfolio includes over 20,000 items, ranging from optics and optomechanical positioning components to imaging systems, many of which are customer inspired.
Photonics is the foremost technology driving innovation in science and engineering. As the number of technological innovations has grown, Thorlabs has extended its core competencies in an effort to play an ever increasing role serving the Photonics Industry at the research end, as well as the industrial, life science, medical, and defense segments.
Headquartered in Newton, NJ, Thorlabs has grown to over 1800 employees with manufacturing and sales offices in the United States, United Kingdom, Germany, France, Sweden, Japan, China, and Brazil. As light-based technologies push into new markets, Thorlabs plans to enter early with the products and services required to ensure the ultimate success of our customers.
Purpose of the Position
This is a software development position at Thorlabs-UFO (Ann Arbor, MI), a wholly owned subsidiary of Thorlabs, Inc. (Newton, NJ). We are looking for a motivated programmer who will lead our embedded firmware development and some Windows based support tools. This is an exciting opportunity to be the key SW engineer of our high tech, high mix product development team. The charter of UFO is to design, develop, and manufacture leading edge photonics instrumentation and opto-electronic products in concert with the broad technical base of Thorlabs’ other business units. UFO is committed to a customer-centered strategy and is an active member of the Michigan photonics R&D community.
Essential Job Functions include the following, but are not limited to:
- Key staff programmer for microcontrollers and some user interfaces.
- Develop advanced embedded software for 8-bit and 32-bit microcontrollers.
- Develop simple drivers and graphical user interface applications for Windows.
- Coordinate with design team to ensure software compliance with system requirements.
- To work directly with an interdisciplinary team of engineers.
- Maintain software documentation.
- Perform software validation.
In addition to the essential functions and duties listed above, all positions are also responsible for:
- Meeting company standards pertaining to quantity and quality of work performed on an ongoing basis, performing all work-related tasks in a manner that is in compliance with all Company policies and procedures.
- Adhering to Company policies, procedures, and directives regarding standards of workplace behavior in completing job duties and assignments.
The Company retains the right to change or assign other duties to this position.
- 3+ years of high-reliability software development experience
- Knowledge of C/C++ (additional languages is a plus)
- Experience programming for 32-bit microcontrollers
- Experience with microcontroller peripheral devices (DACs, ADCs, digital Pots, EEPROM, etc.)
- Experience with microcontroller communication over USB, UART, SPI, I2C, etc.
- Knowledge of control system and signal processing concepts
- Experience with GUI/HMI design
- Experience developing drivers and graphical user interface applications for Linux/Unix
- Experience with Atmel microcontrollers
- Experience with Keil and Atmel Studio IDEs
- Experience working with embedded real-time OS
- Experience developing bootloaders.
- LabVIEW, Matlab, and Python experience
- BS or MS in computer science, electrical engineering, computer engineering, or related field
Specialized Knowledge and Skills:
- Candidate must be detail oriented, highly organized, & able to document work.
- Candidate must have excellent written and oral communication skills.
- Comfortable in start-up type environment; self-motivated individual
Thorlabs values its diverse environment and is proud to be an Equal Employment Opportunity/Affirmative Action Employer. All qualified individuals will receive consideration for employment without regard to race, color, religion, gender, gender identity or expression, sexual orientation, national origin, genetics, disability, age or veteran status. Job descriptions are not intended as and do not create employment contracts. The organization maintains its status as an at-will employer. Employees can be terminated for any reason not prohibited by law.