- Full-time
Job Title: Embedded Software Engineer
Job Description
The Embedded Software Engineer designs, develops, tests, integrates, and supports the software systems that power advanced broadcast, video, audio, RF, and embedded hardware platforms. In this role, you build reliable, high-performance software that interfaces directly with custom electronic systems, including embedded processors, control interfaces, and video transport architectures. You contribute across the entire software development lifecyclefrom requirements and architecture through coding, testing, debugging, deployment, and long-term maintenancewhile working closely with hardware, firmware, and systems engineering teams to deliver integrated solutions for complex electronic products.
Responsibilities
- Design and develop embedded software applications using C, C++, and Assembly language for 8-bit and 32-bit processors.
- Develop software for video, audio, RF, and UHF processing and control systems used in advanced broadcast and media applications.
- Implement multithreaded, real-time, and bare-metal embedded applications, including work with FreeRTOS or equivalent RTOS platforms.
- Develop software for multi-processor systems and implement robust inter-processor communication mechanisms.
- Support custom hardware bring-up, including bootloader development, board-level integration, and low-level hardware initialization.
- Create desktop applications and graphical user interfaces (GUIs) for system-level control, monitoring, and configuration of video, audio, and RF systems.
- Perform system-level testing, validation, troubleshooting, and performance optimization for embedded and desktop applications.
- Develop test applications and automated verification tools to support regression testing and continuous improvement.
- Collaborate closely with hardware engineers to interpret electronic schematics, diagnose board-level issues, and refine system designs.
- Use oscilloscopes, logic analyzers, and other test equipment to debug and validate embedded systems and communication interfaces.
- Implement and maintain communication interfaces such as SPI, I2C, RS-232/RS-485, CAN Bus, and Ethernet within embedded systems.
- Design and implement GUIs for control and monitoring of broadcast, video, audio, and RF systems.
- Conduct system-level testing and troubleshooting for both embedded and desktop software components.
- Use Git and related software configuration management tools to manage source code, branching, merging, and release processes.
- Collaborate with cross-functional teams, including firmware, hardware, and systems engineering, to deliver integrated solutions.
- Participate in deployment and field support activities, including occasional travel to support installations and on-site troubleshooting.
- Contribute to the long-term support of existing products by learning legacy codebases, understanding existing architectures, and implementing enhancements and fixes.
Essential Skills
- Bachelor's degree in Computer Engineering, Electrical Engineering, Computer Science, Software Engineering, or a related technical field; equivalent experience and certifications will also be considered.
- Minimum of 1-5 years of embedded software development experience using C/C++ and Assembly language on 8-bit and 32-bit processors.
- Minimum of 1-5 years of desktop application development experience.
- Strong proficiency in embedded application development in C and C++, including bare-metal programming and real-time software development.
- Experience with multithreaded programming using FreeRTOS or an equivalent real-time operating system.
- Hands-on experience with bootloader development and custom board bring-up.
- Experience programming multi-processor systems and implementing inter-processor communications.
- Practical experience with ARM, Atmel AVR, and STM32 microcontrollers.
- Ability to read and interpret electronic schematics and work closely with hardware designs.
- Hands-on experience using oscilloscopes, logic analyzers, and other hardware test equipment for debugging and validation.
- Working knowledge of communication interfaces including SPI, I2C, RS-232/RS-485, CAN Bus, and Ethernet.
- Experience developing desktop and application software using C#, C++, and Python.
- Experience designing and implementing GUIs for control and monitoring of video, audio, and RF systems.
- Experience in system-level testing, troubleshooting, and test application development.
- Proficiency with Git and software configuration management practices.
- Comfort working hands-on with hardware in a lab environment, including board-level debugging and integration.
Additional Skills & Qualifications
- Experience with Linux application development, particularly in embedded or systems contexts.
- Knowledge of digital hardware design concepts and workflows.
- Experience with wireless communications systems, especially in UHF and microwave frequency bands.
- Familiarity with RF test equipment, including spectrum analyzers.
- Experience with broadcast, video, or digital media technologies and workflows.
- Understanding of wireless communications in UHF and microwave frequency bands.
- Familiarity with audio and video compression technologies such as MPEG-1 Layer II, MP3, AC3, and AAC.
- Experience with networking and TCP/IP, particularly in Ethernet-based, networked device environments.
- Experience with microcontrollers and embedded platforms, including ARM, STM32, and Atmel AVR.
- Interest in working on high-profile projects in domains such as motorsports, professional golf, football, and global sports and entertainment events.
Work Environment
This role is primarily onsite in Hanover and is fundamentally an in-person, hands-on engineering position. Success in this role depends on spending meaningful time with the products, legacy codebase, hardware platforms, and internal processes. You will work extensively in a lab environment with boards, cameras, receivers, radios, and other hardware, performing bring-up, debugging, and system integration. The environment is well-suited for engineers who enjoy being close to the product, learning existing systems in depth, troubleshooting hands-on, and becoming a go-to technical resource on how the product works. The position includes approximately four to five trips per year to support installations and on-site production environments. You will have some flexibility where appropriate, but the core of the work involves close collaboration with on-site engineering teams and direct interaction with complex broadcast and RF systems supporting high-profile global events.
Job Type & Location
This is a Permanent position based out of Hanover, MD.
Pay and Benefits
The pay range for this position is $120000.00 - $130000.00/yr.
Individual compensation offered for this position within this range will depend on many factors, including qualifications, skills, relevant experience, job knowledge, geographic location, internal equity, and other pertinent job-related factors.
Benefits & Perks Comprehensive health insurance options Vision coverage HSA and FSA options 401(k) retirement plan Life and disability insurance Paid time off, sick time, and paid holidays Parental and family medical leave Employee Assistance Program Professional development, training, and conference opportunities
Job Type & Location
This is a Permanent position based out of Hanover, MD.
Application Deadline
This position is anticipated to close on Nov 17, 2026.
Workplace Type
This is a fully onsite position in Hanover,MD.