At Apple, the business problem is to craft products that enrich people’s lives, specifically to enable connectivity to iPhone and Watch Ultra when off the grid without cellular or Wi-Fi coverage, using satellite network.
Requirements
- 10+ years of experience of software development in modern C++.
- 5+ years of experience of designing and implementing software-defined radio (SDR) software or high-bandwidth data processing application.
- Experience of designing software system running on a heterogeneous computing system (CPU+FPGA, CPU+GPU, CPU+ASIC accelerator, etc).
- Strong familiarity with low-level systems programming using modern C++ constructs (C++20 and above) involving topics such as concurrency, memory safety, CPU-hardware interaction (including cache coherency management), and RPC / IPC / message passing.
- Familiar with AMD/Xilinx SoC and Vivado/Vitis/Petalinux toolchains.
- Previous experience of FPGA code development in RTL or HLS.
- General radio-frequency (RF) digital signal processing knowledge.
Responsibilities
- Development of software-defined-radio system on Linux running on AMD/Xilinx SoC (C++, Python, shell).
- Cross-team coordination and execution of software releases and hardware-software integrated test campaigns.
- Development and deployment of operation procedures (Python or Go) running on the cloud-based control and monitoring system.
Other
- 10+ years of experience
- Ability to mentor other team members on modern design/coding best practices
- Apple is an equal opportunity employer that is committed to inclusion and diversity.
- Managed software releases to the production environment.
- Remote development / debug using modern tools