Embedded Software Engineer - HW/SW Co-Design

Analog Devices
Chiva, Spain
6 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Senior

Job location

Chiva, Spain

Tech stack

Java
Data analysis
Automation of Tests
Unit Testing
C Sharp (Programming Language)
C++
Static Program Analysis
Code Coverage
Continuous Integration
Middleware
Embedded Software
Field-Programmable Gate Array (FPGA)
Github
Hardware Design
Java GUIs
Python
Quick EMUlator (QEMU)
Software Deployment
Software Engineering
Product Software Implementation Methods
SystemC
System Programming
Technical Data Management Systems
User-Centered Design
3d Solid and Surface Modeling
Test Driven Development
Delivery Pipeline
Peripherals
Containerization
Data Analytics
Build Tools
Docker

Job description

In this role, you will lead the development of high-performance middleware and sophisticated tooling that allows our hardware and software teams to iterate in lockstep, and to accelerate end-to-end design and delivery. You'll be a champion for modern engineering practices in a domain that traditionally moves slow, ensuring that "first silicon" arrives with a mature software stack already in place., * Technical Leadership: Act as a subject matter expert for Test-Driven Development (TDD) and CI/CD integration, mentoring junior engineers on writing testable, high-integrity code, designing and deploying software quality tooling (static analysis, test coverage, CI health metrics) to enable data-driven quality decisions and early defect detection in embedded systems.

  • Tooling Development: Build internal tools and automation scripts (primarily in Python and C#) to streamline the handoff between hardware design and software implementation.
  • HW/SW Co-Design & Modeling: Participate in the architecture and development of virtual platforms and functional models to enable software development months before physical chips exist.
  • AI Enablement: Help us effectively roll out generative AI tooling to accelerate chip and embedded software delivery; actively explore SW-driven peripheral and IP design based on software specifications., * Modeling Expertise: Strong experience with SystemC and Virtual Platforms (e.g., QEMU, Arm Fast Models, or Synopsys VDKs).
  • Modern Languages: Familiarity with Rust (for memory-safe systems programming), Java (for portable tooling, services, or test infrastructure) or C# (for desktop-side tooling/GUIs).
  • Silicon Lifecycle: Understanding of the RTL-to-GDSII flow and how software interacts with FPGA prototypes or emulators.

Why This Role?

You will have a direct impact on the "time-to-market" for next-generation silicon. This isn't just maintenance; it's about defining the future of how hardware is consumed by software, and how software influences hardware design and development. If you enjoy the challenge of making a piece of silicon "come alive" through elegant, high-quality code, reach out so we can discuss the role in more detail.

For positions requiring access to technical data, Analog Devices, Inc. may have to obtain export licensing approval from the U.S. Department of Commerce - Bureau of Industry and Security and/or the U.S. Department of State - Directorate of Defense Trade Controls. As such, applicants for this position - except US Citizens, US Permanent Residents, and protected individuals as defined by 8 U.S.C. 1324b(a)(3) - may have to go through an export licensing review process.

Requirements

  • Expert C/C++: Mastery of low-level programming, working with register-level hardware/software interfaces, schedulers, complex middleware, and embedded software stacks.
  • TDD Champion: A deep-seated belief in "test-first" methodology and experience building unit testing frameworks for embedded targets.
  • CI/CD Integration: Hands-on experience with GitHub Actions or similar tools to automate testing and deployment pipelines.
  • Python Proficiency: Strong ability to use Python for automation, data analysis, or scriptable build systems.
  • Containerization & Reproducibility: Working knowledge of Docker or similar containerization technologies to enable reproducible builds, scalable testing, and reliable deployments, while maintaining strict control over tooling and dependency versions across development and CI environments., * Industry Tenure: 10+ years of professional experience in embedded software development, with a significant portion spent within the semiconductor or high-performance systems industry.
  • Leadership Presence: Proven ability to lead complex technical initiatives across departmental boundaries (e.g., influencing RTL designers to adjust hardware specs for better software ergonomics).
  • Quality Evangelism: A portfolio or history of implementing High-Integrity Software standards, showing a transition from "hacking it together" to "engineering for scale and reliability."
  • Architectural Mindset: Experience designing complex software systems that interface directly with custom hardware peripherals.

About the company

Analog Devices, Inc. (NASDAQ: ADI ) is a global semiconductor leader that bridges the physical and digital worlds to enable breakthroughs at the Intelligent Edge. ADI combines analog, digital, and software technologies into solutions that help drive advancements in digitized factories, mobility, and digital healthcare, combat climate change, and reliably connect humans and the world. With revenue of more than $9 billion in FY24 and approximately 24,000 people globally, ADI ensures today's innovators stay Ahead of What's Possible . Learn more at www.analog.com and on LinkedIn and Twitter (X).

Apply for this position