Embedded Software Engineer
- Discuss this with your agent
- Open in Claude
- Open in ChatGPT
Prepare application
- Draft this with your agent
- Open in Claude
- Open in ChatGPT
Role details
Tech stack
+13 more
Job description
We are seeking an expert Embedded Software / Firmware Contractor to design, implement, and optimize high-throughput multi-threaded software for embedded Linux on AMD Xilinx FPGA / MPSoC and RFSoc architectures (e.g., Zynq UltraScale+). The contractor will be responsible for accelerating critical computational workloads (such as signal processing or array arithmetic) using ARM NEON SIMD instructions and interfacing custom C/C++ applications with hardware IP blocks in the FPGA logic. Scope of Work & Deliverables High-Performance Multi-Threading: Architect and implement efficient C/C++ userspace applications utilizing POSIX threads (pthreads), thread isolation, CPU affinity, and lock-free synchronization routines to handle real-time streaming data on embedded Linux. ARM NEON Optimization: Vectorize and optimize critical algorithmic loops using ARM NEON intrinsics and assembly to maximize SIMD throughput on ARM Cortex-A processor cores. FPGA Hardware Integration: Develop robust software drivers/interfaces (e.g., Linux UIO, AXI DMA, memory-mapped registers) to exchange data between Linux software applications and custom IP blocks in the Xilinx Programmable Logic (PL). Profiling & Performance Tuning: Utilize Linux profiling tools (perf, Valgrind, custom execution benchmarks) to diagnose bottlenecks, optimize cache usage, and ensure deterministic performance. Technical Documentation & Code Hand-off: Deliver well-commented, productiongrade source code along with architectural notes, integration build scripts, and test procedures for internal engineering hand-off.
Requirements
Core Programming: Expert-level C for embedded Linux environments. Vector Acceleration: Hands-on proficiency with ARM NEON SIMD intrinsics and assembly-level optimization techniques. Xilinx SoC Platform: Demonstrated experience with Xilinx Zynq UltraScale+ MPSoC/RFSoC platforms (PetaLinux). Hardware Interfacing: Deep understanding of AXI4, PCIe, AXI DMA engines, and Linux memory management (DMA-BUF, /dev/mem, UIO). Multi-Threaded Systems: Solid background in concurrent programming, memory synchronization, and real-time POSIX scheduling. Tooling: Expertise with GCC/Clang cross-compilation toolchains, GDB, Vivado / Vitis, CMake, and Git. Equal Opportunity Employer
Apply for this position
This job is hosted externally. Click below to view the full posting and apply.
Prepare application
- Draft this with your agent
- Open in Claude
- Open in ChatGPT
Good distractions
Loading talks and stories from around this roleβ¦