Overview
About Analog Devices
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) .
Senior System Software Engineer
We are looking for a Senior System Software Engineer to join our HW/SW Co-Design team. In this role, you will take ownership of individual IP blocks from a software perspective - defining, reviewing, and implementing the functionality and the hardware/software interfaces of those blocks in close collaboration with the HW engineer writing the RTL.
You will work alongside a Principal System Software Architect who sets the broader system-level direction, while you dive deep into the details of specific IP blocks. Your focus is narrower but no less critical: ensuring that each block is well-designed for software consumption, efficiently programmable, debuggable, and consistent with the overall system architecture.
This is applied engineering, not abstract design work. You will spend 4-6 weeks at a time embedded with a hardware engineer counterpart, iterating together on register maps, data flow, interrupt behavior, configuration schemes, and DMA interfaces - writing real code against virtual platform models to validate decisions before silicon exists.
Key Responsibilities
- IP Block Software Ownership: Own the software perspective for assigned IP blocks end-to-end - from initial definition through implementation review and pre-silicon validation.
- HW/SW Interface Definition: Work directly with HW engineers to co-define register maps, control/status interfaces, interrupt schemes, and data path configurations that are efficient and straightforward to program.
- Virtual Platform Implementation: Work with the SystemC modeling team to deliver firmware or driver prototypes against virtual platforms to validate IP block designs and catch usability or performance issues early.
- Design Review Participation: Review RTL specifications and micro-architecture documents, providing actionable feedback from a software integration perspective before RTL is committed.
- Driver & Firmware Prototyping: Develop early driver code and firmware prototypes that exercise IP block functionality, proving out programming models and identifying gaps.
- Debuggability Assessment: Evaluate and influence the debug and observability features of each IP block, ensuring software has adequate visibility during bringup and in the field.
- Documentation & Handoff: Produce clear programming guides, register descriptions, and usage examples that downstream software teams can use to build production drivers and SDKs.
- Cross-Block Integration: Collaborate with peers owning adjacent IP blocks to ensure consistent interfaces, shared conventions, and smooth data flow between blocks.
Required Qualifications
- 5+ years of experience in embedded software, firmware development, or SoC platform software
- Proficiency in C/C++ with hands-on experience writing device drivers, HALs, or register-level firmware
- Strong understanding of hardware/software interfaces: register maps, memory-mapped I/O, interrupt handling, DMA, and bus protocols (AXI/AHB/APB)
- Ability to read and interpret RTL (Verilog/SystemVerilog) or hardware specification documents
- Experience collaborating directly with hardware design engineers during IP or SoC development
- Familiarity with SystemC (TLM 2.0) or willingness to develop proficiency quickly for virtual platform work Attention to detail
- - able to identify subtle interface issues, race conditions, or ambiguities in hardware specifications Strong interpersonal skills
- - able to work side-by-side with HW engineers for extended periods, negotiate trade-offs constructively, and build trust
Preferred Qualifications
- Familiarity with AMBA protocols
- Experience with SystemC modeling or virtual platform development (e.g., Synopsys Virtualizer, QEMU, or custom TLM platforms)
- Familiarity with FPGA prototyping or pre-silicon software bring-up workflows
- Experience with Zephyr RTOS and/or Embedded Linux kernel driver development
- Knowledge of RISC-V or Arm architecture, including interrupt controllers, memory protection, and debug infrastructure
- Experience with signal processing, data converter, or mixed-signal IP blocks
- Familiarity with hardware emulation environments (Palladium, Veloce, etc.)
- Background in design verification or functional coverage from a software stimulus perspective
- Experience with Verilog/SystemVerilog for co-simulation or design comprehension
What Sets This Role Apart
This is not a downstream software role where you receive a finished data sheet and write a driver. You are part of the design process from the start - shaping the hardware you will eventually program. When the register map doesn't make sense for software, you have the authority and responsibility to push back and propose alternatives.
Expect to spend weeks at a time working intensively with a single HW engineer on a specific IP block - whiteboarding interfaces, debating trade-offs, writing prototype code, and iterating until the design is right. This requires patience, attention to detail, and the ability to compromise effectively when hardware constraints conflict with software ideals.
You will stay with your IP blocks through the full lifecycle: initial concept, specification review, virtual platform validation, silicon bringup, and production driver handoff. If you want deep ownership of the hardware/software boundary at the block level and enjoy the craftsmanship of getting interfaces right, this role is for you.
Education
- BS/MS in Computer Engineering, Electrical Engineering, Computer Science, or a related field
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.
Analog Devices is an equal opportunity employer. We foster a culture where everyone has an opportunity to succeed regardless of their race, color, religion, age, ancestry, national origin, social or ethnic origin, sex, sexual orientation, gender, gender identity, gender expression, marital status, pregnancy, parental status, disability, medical condition, genetic information, military or veteran status, union membership, and political affiliation, or any other legally protected group.
Job Req Type: ExperiencedRequired Travel: Yes, 10% of the time
Shift Type: 1st Shift/Days