Embedded Software Engineer
RG Talent Inc · Milpitas, CA
Tailor my CV for this job — freeRole: Embedded Software engineers
Scope of Work & DeliverablesHigh-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.Required Technical ExpertiseCore 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.