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 position develops and maintains Vytran product line software platforms. We are looking for a motivated programmer who will join our team as a developer of firmware, embedded Linux software, and Windows applications. This is an exciting opportunity to be one of the key SW engineers of our high tech, fiber processing development team. Although the location of the position is in Morganville, NJ, from time to time it may be required to undertake duties at other Thorlabs locations.
Essential Job Functions include the following, but are not limited to:
- Develop advanced embedded software for Linux based microcontrollers.
- Develop simple drivers and graphical user interface applications.
- Coordinate with design team to ensure software compliance with system requirements.
- Document requirements and design specifications as well as verification plans and test cases.
- Participate in code, design, and architectural reviews.
- Perform coding and unit tests of requirements as they are defined.
- Device driver design and implementation.
- Software testing and assisting with validation of system design.
- Support project planning, cost estimation and project status.
- Software integration, verification, and updating.
- Make use of source code version control systems to maintain and document software changes.
- Assist both the service and manufacturing departments in troubleshooting technical problems with software. This includes training of personnel.
- Recommend innovations and improved methods, tools, and processes.
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.
The employee must frequently lift or move objects up to 10 pounds and occasionally lift or move objects up to 25 pounds.
- 3+ years of high-reliability software development experience
- Experience programming microcontrollers using Linux (C+, C++, C# languages are a plus)
- Experience with microcontroller peripheral devices (Cameras, Stepper Motors, LED’s, DACs, ADCs, Sensors, etc.)
- Experience with microcontroller communication over USB, UART, SPI, I2C, etc.
- Linux OS Set Up and experience developing drivers and graphical user interface applications.
- Experience with Containerization.
- Algorithm experience with imaging, process control, etc.
- Experience working with embedded real-time OS.
- Experience developing bootloaders.
- Python experience.
- API Development experience.
- BS or MS in Computer Science, Engineering or related field required.
Specialized Knowledge and Skills:
- Must have excellent verbal, written and listening skills.
- Must be able to work effectively with others both within and external to the engineering group.
- Must possess the ability to quickly and creatively solve unexpected problems using strong analytical skills
- The candidate is expected to take the initiative to anticipate or avoid potential problems
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.