Senior Firmware Engineer (Embedded Linux)
It's fun to work in a company where people truly believe in what they are doing!
The Senior Embedded Software Engineer is a hands-on technical contributor responsible for designing, developing, testing, and supporting embedded software for Neogen’s regulated instrumentation portfolio. This role works across the embedded software stack, from board bring-up and Board Support Package (BSP) development through device applications, services, connectivity, security, and user interfaces.
Based in Oakdale, Minnesota, the Senior Embedded Software Engineer partners closely with Electrical, Mechanical, Systems, Software, Quality, Regulatory, Manufacturing, and Service teams to support new product development and sustaining engineering. The role contributes to the development of next-generation instrumentation platforms while helping maintain and improve existing products used in food safety laboratories and production environments around the world.
Essential Duties and Responsibilities
Embedded Software Development
- Design, develop, test, and maintain embedded software for new and existing instrumentation products.
- Develop embedded Linux software across the stack, including BSPs, kernel configuration, device drivers, system services, device applications, and user interfaces.
- Develop and maintain software using C and C++.
- Develop and maintain device user interfaces using Qt.
- Support embedded Linux build environments using Yocto, Torizon, or similar technologies.
- Develop software interfaces between embedded applications, hardware, sensors, peripherals, and external systems.
- Participate in software architecture and platform decisions for future instrumentation products.
- Create maintainable, reusable, and testable embedded software components.
- Participate in code reviews, design reviews, and technical discussions.
Hardware Integration and Board Bring-Up
- Partner with Electrical Engineering during board bring-up, hardware integration, and troubleshooting.
- Review electrical schematics and hardware interfaces to support software development and debugging.
- Develop and troubleshoot device drivers and hardware interfaces.
- Use oscilloscopes, logic analyzers, debuggers, and other laboratory tools to investigate hardware/software interaction issues.
- Support prototype hardware builds and early-stage system integration.
- Diagnose issues spanning embedded software, firmware, electrical hardware, and system-level behavior.
Device Connectivity and Security
- Develop and maintain secure device connectivity capabilities.
- Implement device security features such as secure boot, signed software images, access controls, and secure update mechanisms.
- Develop and support over-the-air software and firmware update capabilities.
- Support communication between instruments, data-management applications, cloud services, and other connected systems.
- Apply appropriate security practices throughout embedded software design and development.
- Participate in evaluation and implementation of platform security improvements.
Embedded Platform Development
- Contribute to technical decisions involving operating systems, processors, BSPs, build environments, deployment models, and update strategies.
- Help define reusable software and platform patterns for future instrumentation products.
- Evaluate new technologies, tools, and architectures for applicability to Neogen products.
- Support development of common software components and platform capabilities that can be reused across product families.
- Identify opportunities to improve software maintainability, reliability, security, and development efficiency.
Regulated Product Development
- Develop software within established product-development and design-control processes.
- Create and maintain software requirements, design documentation, technical specifications, and related engineering records.
- Support requirements traceability from software requirements through implementation, testing, and verification evidence.
- Participate in software verification and validation activities.
- Support product risk-management activities and technical risk assessments.
- Contribute technical documentation and evidence required for product-development phase gates, certifications, and regulatory submissions.
- Support software change control and configuration-management activities.
Sustaining Engineering and Product Support
- Support existing instrumentation products as needed throughout the product lifecycle.
- Investigate and resolve software, firmware, integration, and field issues.
- Perform root-cause analysis and develop corrective solutions.
- Support product updates, component changes, platform updates, and lifecycle-management initiatives.
- Partner with Service, Manufacturing, Quality, and other teams to troubleshoot complex product issues.
- Identify and implement software improvements that enhance product reliability, maintainability, and customer experience.
Technical Leadership and Collaboration
- Review software designs and code developed by internal engineers and external development partners.
- Provide technical feedback and guidance within areas of expertise.
- Help establish and promote embedded software engineering standards, patterns, and development practices.
- Collaborate effectively with development partners located across multiple regions and time zones.
- Communicate technical decisions, risks, trade-offs, and recommendations clearly to engineering teams and stakeholders.
- Mentor less-experienced engineers as appropriate.
- Perform other duties as assigned.
Basic Qualifications
- Bachelor’s degree in Computer Engineering, Electrical Engineering, Computer Science, Software Engineering, or a related technical discipline, or equivalent practical experience.
- Five or more years of professional embedded software development experience.
- Significant hands-on experience developing software for embedded Linux systems.
- Strong programming experience using C and C++.
- Experience with embedded Linux build systems such as Yocto, Torizon, or similar technologies.
- Experience with BSP development, Linux kernel configuration, or device-driver development.
- Hands-on experience with hardware bring-up and embedded-system debugging.
- Ability to read and interpret electrical schematics.
- Experience using oscilloscopes, logic analyzers, debuggers, or similar laboratory tools.
- Experience developing applications using Qt.
- Experience developing software for products that integrate software, firmware, and hardware.
- Experience implementing or supporting device security capabilities such as secure boot, image signing, access controls, or secure software updates.
- Experience developing software within a regulated product-development environment using design controls.
- Experience creating and maintaining software requirements and engineering documentation.
- Experience supporting software verification and validation activities.
- Strong troubleshooting, analytical, and problem-solving skills.
- Strong written and verbal technical communication skills.
- Ability to collaborate effectively with multidisciplinary engineering teams and external development partners.
Preferred Qualifications
- Experience with Python for test automation, tooling, scripting, or engineering utilities.
- Experience with camera or imaging pipelines on embedded Linux, including V4L2, GStreamer, or similar technologies.
- Experience developing firmware for microcontrollers such as AVR or ARM Cortex-M.
- Experience with NVIDIA Jetson, TI Sitara, NXP i.MX, or similar embedded processing platforms.
- Experience with containerized software deployment on embedded devices.
- Experience developing over-the-air update systems for embedded products.
- Experience with IEC 62304 or similar regulated software lifecycle standards.
- Familiarity with 21 CFR Part 11 or other regulated data-integrity requirements.
- Familiarity with validation or regulatory frameworks such as AOAC Performance Tested Methods, AOAC Official Methods of Analysis, AFNOR NF VALIDATION, MicroVal, ISO 16140, USDA FSIS, USDA FGIS, FDA, or Health Canada requirements.
- Experience developing laboratory instrumentation, diagnostic systems, food-safety products, medical devices, or other regulated equipment.
- Experience with instrument-to-software or instrument-to-cloud connectivity.
- Experience reviewing software developed by third-party or external development partners.
Knowledge, Skills, and Abilities
- Strong knowledge of embedded software architecture and development principles.
- Strong understanding of interactions between embedded software, firmware, electronics, and hardware.
- Ability to troubleshoot complex issues across software and hardware boundaries.
- Strong understanding of embedded Linux architecture, build systems, and deployment practices.
- Ability to evaluate technical trade-offs involving performance, security, reliability, maintainability, and product constraints.
- Strong code-review and software-design skills.
- Ability to develop clear and maintainable technical documentation.
- Ability to work effectively in laboratory and bench-development environments.
- Ability to communicate complex technical information to both engineering and cross-functional stakeholders.
- Ability to manage multiple technical priorities within a product-development environment.
- Ability to work independently while contributing effectively within a multidisciplinary engineering team.
- Strong attention to quality, reliability, and regulated development requirements.
Work Location
This position is based in Oakdale, Minnesota and requires regular in-person collaboration with Electrical, Mechanical, Systems, Software, Manufacturing, Quality, Regulatory, Service, and other cross-functional teams.
About Neogen
Neogen is a global company focused on protecting the world’s food supply. We provide products and solutions that support food safety, animal safety, and related industries, helping customers detect risks, improve quality, and protect both people and animals.
At Neogen, we believe that taking care of our employees allows them to do their best work. When you join our team, you'll enjoy competitive benefits and the opportunity to make a meaningful difference every day.
Benefits Include
- Benefits starting on Day One: Medical, dental, and vision coverage begin on your first day of employment.
- 401(k) with company match: Invest in your future with retirement savings and company contributions.
- Paid Time Off: Enjoy generous paid time off so you can rest, recharge, and spend time with those who matter most.
- Career Growth Opportunities: We are committed to providing employees with the tools, training, and support needed to grow their careers.
- Meaningful Work: Be part of a team whose work has a real impact on customers, communities, and the world around us.
- Collaborative Culture: Join a team that values innovation, respect, teamwork, and continuous improvement.
Interested? We’d Like to Hear from You.
If this role sounds like a place where your skills and experience could make an impact, we encourage you to apply. You may have experience that does not fit neatly into every line of a job description. What matters most is whether you can successfully perform the core responsibilities of the role and are interested in contributing to the work ahead.
Equal Opportunity and Accommodation
Neogen is an Equal Opportunity Employer and provides equal employment opportunities to all applicants and employees without regard to race, color, religion, sex, national origin, age, disability, genetic information, veteran status, or any other characteristic protected by applicable federal, state, or local law.
Employment is contingent upon successful completion of applicable pre-employment requirements and verification of identity and authorization to work in the United States.
Come build your future with us while making a difference every day.
#ApplyNow
Come Be Part Of A Mission that Matters!From inside the farm gate to our dinner plates, Neogen protects the world’s food supply. Through a variety of animal healthcare products, to food safety solutions for dangerous bacteria, allergens, toxins, drug residues and much more, Neogen is there — and you can be too.