Skip to content
mimi

Embedded CPU Engineer

Apple

Beaverton · On-site Full-time Senior 3w ago

About the role

Description

As an Embedded CPU Engineer, you will help define CPUs that are specifically designed for running embedded applications across iPhone, iPad, Mac, and other Apple products. Your focus will be on understanding the unique constraints and opportunities of varied embedded use cases and translating those insights into improvements for both the software stack as well as the hardware including the CPU and its surrounding subsystem.

You will be responsible for deep-dive performance analysis of embedded workloads, identifying bottlenecks in existing microarchitectures, and proposing optimization strategies that balance performance, power efficiency, and area. Working closely with algorithm teams, software engineers, and CPU designers, you will explore ISA extensions, microarchitecture enhancements, and system-level optimizations tailored to embedded use cases.

This role requires some background in software profiling, performance modeling, and simulation environments. You will use and develop analysis tools and infrastructure to enable data-driven architectural decisions, create and analyze both real workloads and benchmarks representative of embedded workloads, and iterate with design teams to ensure ideas are implementable within power, timing, and area constraints.

Responsibilities

  • Analyze performance characteristics of embedded workloads including real-time processing, audio DSP, always-on scenarios, and embedded ML inference
  • Collaborate with system architecture and software teams to understand use case requirements that could be unique for each environment
  • Translate findings into actionable improvements to our designs and software
  • Work with CPU design team to implement proposed improvements while balancing tradeoffs for power, timing and area
  • Provide feedback into and help develop performance models, simulators, and analysis tools used to support architectural exploration

Preferred Qualifications

  • MS or PhD in Electrical Engineering, Computer Engineering, or Computer Science
  • 10+ years of industry experience in CPU architecture or performance analysis
  • Expertise in CPU microarchitecture in one or more of the following areas: branch prediction, prefetching, pipeline optimization, datapath, memory hierarchy
  • Experience in one or more of the following areas: embedded ML workloads and inference engines, SIMD/vector architectures for signal processing or ML, or compiler infrastructure and toolchain development for embedded workloads
  • Experience with real-time operating systems and embedded software constraints
  • Understanding of: power-performance trade-offs in CPU designs, system-level power management, and low-power design techniques
  • Strong communication and collaboration skills across hardware and software teams
  • Experience taking architectural ideas from concept through implementation

Minimum Qualifications

  • BS in Electrical Engineering, Computer Engineering, Computer Science, or similar
  • CPU architecture or microarchitecture experience
  • Experience with performance simulation environments, and performance analysis or optimization of workloads
  • Experience with one or more of the following ISAs: ARM, RISC-V, x86
  • Experience in C, C++, or similar programming languages
  • Experience with scripting languages such as Python or Perl for analysis and automation

Skills

ARMCC++PerlPythonRISC-Vx86

Don't send a generic resume

Paste this job description into Mimi and get a resume tailored to exactly what the hiring team is looking for.

Get started free