Embedded Software Engineer III

Kopin Corporation
Collin County, TX, United States
2 months ago
Apply on www.kopin.com
Prepare application

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Experience level
Expert
Experience required
5 years minimum
Working hours
Regular working hours
Job source

Tech stack

Data Analysis Systems Engineering Unit Testing Code Review Computer Engineering Software Debugging Linux File Systems Memory Management Embedded Software Firmware Image File Formats
+21 more
H.264/MPEG-4 AVC Hardware Interface Design Joint Test Action (IEEE Standards) Python (Programming Language) Object-Oriented Software Development Qt (Software) Real-Time Operating Systems Regression Testing Signal Processing Software Engineering Software Requirements Analysis Universal Asynchronous Receiver/Transmitter Wi-Fi Technology Scripting High Efficiency Video Coding (HEVC) Git Git Flow Integration Tests Information Technology Bare Metal Software Version Control

Job description

The Embedded Software Engineer III contributes to the development and optimization of firmware and embedded software for Kopin’s next-generation AR/VR HUDs and micro-display products. This role requires strong proficiency in embedded systems, real-time algorithm implementation, and hands-on experience with hardware/software integration. The role develops software for custom hardware platforms including ARM processors, microcontrollers, and FPGA-adjacent logic and ensures robust, reliable operation across imaging, tracking, display-pipeline, and sensor-driven subsystems. This role works collaboratively across electrical, systems, optics, and mechanical engineering teams and participates throughout the full software development life cycle from design and implementation through testing, integration, and documentation., * Design, implement, and maintain firmware and low-level embedded software for portable and wearable devices.

  • Develop device drivers, hardware abstraction layers, and board support package components for custom ARM- and MCU-based platforms.
  • Optimize image-processing and digital signal-processing algorithms for real-time execution on resource-constrained embedded hardware.
  • Implement and manage multithreading, interrupt handling, and task scheduling inside RTOS or bare-metal environments.
  • Utilize co-processing units (DSP blocks, GPU pipelines, SIMD, or FPGA-accelerated paths) to increase computational throughput.
  • Work closely with hardware engineers to define firmware-to-hardware interface requirements, timing expectations, and configuration sequences.
  • Troubleshoot and debug system-level issues involving display timing, sensor data alignment, memory bandwidth, and peripheral communication.
  • Apply knowledge of discrete filters, Fourier transforms, linear systems, and fixed-point arithmetic to practical signal-processing tasks.
  • Participate in full software lifecycle activities including design documentation, code reviews, unit tests, regression tests, and integration testing.
  • Contribute to imaging, display, or sensor-based demo applications used for internal evaluation and customer demonstrations.
  • Collaborate with Systems Engineering to ensure embedded implementations satisfy system requirements, timing budgets, and performance margins.
  • Maintain firmware architecture and ensure modularity, clarity, and long-term maintainability across code bases.

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, Computer Engineering, Electrical Engineering, or a related discipline with a focus on embedded systems.
  • 5-8 years of professional experience in embedded software development.
  • Strong proficiency in C/C++ for embedded systems.
  • Experience with RTOS or bare-metal development, including interrupt handlers, timers, DMA, context switching, and memory management.
  • Demonstrated experience developing low-level drivers and hardware interfaces (SPI, I²C, UART, GPIO, timers, DMA, display or sensor interfaces).
  • Familiarity with image processing or digital signal processing concepts.
  • Hands-on experience debugging embedded systems using oscilloscopes, logic analyzers, JTAG/SWD, and in-circuit debugging tools.
  • Ability to contribute independently to embedded development while working within a cross-disciplinary engineering team., * Master’s degree in EE/CE/CS or related field.
  • Experience developing software for portable, wearable, or imaging/display-centric embedded systems.
  • Experience with GUI frameworks (Qt, LVGL, embedded UIs) and integration with display pipelines.
  • Python experience for scripting, automation, test tooling, or data analysis.
  • Linux familiarity-including user space, device interfaces, kernel modules, or embedded distributions.
  • Working knowledge of video and display interfaces (MIPI-DSI/CSI, LVDS, HDMI, DisplayPort, or custom microdisplay timing).
  • Familiarity with image formats and compression (YUV/RGB, JPEG/PNG, H.264/H.265).
  • Exposure to wireless communication protocols (BLE, Wi-Fi, or proprietary RF).
  • Understanding of local file systems, storage interfaces, and data-persistence mechanisms on embedded devices.
  • Strong modular software design and object-oriented development practices.
  • Experience with revision control tools (Git preferred), including branching strategies and code review workflows.
  • Excellent teamwork and communication skills.

PHYSICAL REQUIREMENTS:

  • Able to rotate from sitting to standing, lift up to 20 pounds, and gown according to clean room protocol

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on www.kopin.com
Prepare application

Good distractions

Talks and stories from around this role — technically off-topic, practically not.

5:02 min

Mapping Git flow branches to application tester segments

Majid Hajian · LIVE

3:51 min

Technical skills and collaborative mindsets for mobility engineering roles

Georg Kühberger +1 · LIVE

52 sec

Running persistent Linux environments directly on Windows

Ben Breard Ben Breard · World Congress 2025

6:21 min

Investigating push inefficiencies with upstream Git experts

Jonathan Creamer · Coffee With Developers

5:19 min

Audience Q&A on future tools and Git commands

PJ Hagerty PJ Hagerty · World Congress 2026 Europe

3:53 min

Introduction to git flow and clean feature branches

Johannes Haux · World Congress 2022

Videos

See all

Related articles

See all