REPORTING TO: Director of Product Development
LOCATION: Westborough, MA
The Senior Embedded Software Engineer will play a crucial role in the development and optimization of software for our next-generation AR/VR HUDs and micro-display products. This role requires a robust understanding of embedded systems, efficient algorithm implementation, and hands-on experience with hardware interfacing. The successful candidate will design solutions to operate on custom hardware, including FPGAs and ARM processors, ensuring seamless integration with our eye-tracking technology and other sensor inputs.
JOB DUTIES AND RESPONSIBILITIES:
- Design, implement, and maintain firmware and low-level software for portable devices.
- Develop device drivers and support for chip and board support packages, as well as develop within an embedded operating system.
- Optimize image processing and digital signal processing algorithms for real-time interpretation of data from various sensor signals.
- Implement and manage multithreading and efficient computing strategies within a resource-constrained environment.
- Utilize co-processing units effectively for parallel processing tasks.
- Work closely with hardware engineers to define requirements for hardware/firmware interfaces and to troubleshoot system-level issues.
- Apply knowledge of discrete filters, Fourier transforms, linear systems, and fixed-point arithmetic in practical applications.
- Engage in the entire software development life cycle, ensuring robust design, testing, and documentation of software systems.
- Contribute to the creation of user-centric demos that showcase the capabilities of the embedded system.
MINIMUM JOB REQUIREMENTS:
- Kopin is a defense contractor and is subject to International Traffic in Arms Regulations (ITAR). You must be a US Citizen or Permanent Resident (green card holder) to be considered for this position.
- Bachelor’s degree in computer science, Electrical Engineering, or a related discipline with a focus on embedded systems or software engineering.
- Solid experience in embedded software development, including knowledge of C/C++ for embedded systems.
- Experience with real-time operating systems and interrupt handling, memory management, and input/output control.
- Familiarity with image processing and digital signal processing techniques and algorithms.
- Practical experience with machine learning libraries such as TensorFlow, PyTorch, or Keras.
- Demonstrated proficiency in writing low-level hardware interfaces and driver development.
PREFERRED JOB REQUIREMENTS:
- Master’s degree or higher in Electrical Engineering, Computer Science, or related field, with an emphasis on embedded software engineering.
- Proven track record of developing software for embedded systems, including those used in portable or wearable technology.
- Strong experience with development tools and languages such as C/C++, ARM assembly language for custom processor development.
- Previous involvement in projects that require efficient algorithm implementation in constrained computational environments.
- Experience with computer vision, machine learning techniques relevant to image and signal processing, and experience with relevant tools and libraries.
- Excellent teamwork and communication skills, with the ability to convey technical concepts effectively to diverse stakeholders.
- Able to rotate from sitting to standing, lift up to 20 pounds, and gown according to clean room protocol.
Kopin Corporation is an Equal Employment Opportunity and Affirmative Action employer and as such all qualified applicants will be considered for employment without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability or veteran status, age or any other federally protected class. If an applicant needs a reasonable accommodation due to a disability with the application process, there is additional information on our website at www.kopin.com/careers.