Low-Level Software Engineer - JB-765
- Tel Aviv District, Israel
- LinkedIn Public
- Verified live ·
Mentioned in this posting
Description
Low-Level Software Engineer – EDGE Team Role Overview: Develop and implement a core software platform that enables AI model execution across various EDGE hardware devices. This role involves low-level software development, seamless hardware integration (CPU, GPU, and AI accelerators), system resource management, and performance optimization to ensure efficient, stable, and low-latency local inference under strict resource constraints. Key Responsibilities: EDGE Application Development: Build a central C/C++ application to manage, load, and run local AI model inference on edge devices, designing unified interfaces that abstract hardware differences. Hardware Porting & Adaptation: Adapt the software runtime and environment to diverse platforms (e.g., NVIDIA Jetson, SIMA), working closely with APIs, drivers, and hardware components while respecting device limitations. Low-Level System Development: Write system-level software in Embedded Linux environments, handle memory management, implement multithreading/concurrency, and debug complex hardware-software interfaces. Performance & Optimization: Conduct profiling and benchmarking to identify bottlenecks, optimizing CPU, GPU, memory, and I/O usage to improve latency, throughput, and power efficiency. Integration & Lab Testing: Integrate AI models onto real hardware, perform rigorous integration and stability tests in the lab, and document setup, optimization, and testing procedures. Requirements: Experience: 3–5+ years of software development experience, with a strong focus on Low-Level, Embedded, or System Software. Languages & OS: Advanced proficiency in C and C++, alongside significant hands-on experience with Linux. System Architecture: Solid understanding of computer architecture, memory management, multithreading, concurrency, and hardware-software interactions. Performance Optimization: Proven experience in performance tuning, using profiling tools, benchmarking, and developing for low-latency, resource-constrained environments. Key Traits: Strong hands-on engineering capabilities, deep debugging skills for complex system issues, a systemic mindset (understanding the Model → Runtime → Software → Hardware pipeline), and the ability to learn new platforms independently. Nice-to-Have Requirements: Hands-on experience with NVIDIA Jetson and/or SIMA platforms. Experience with AI/ML inference at the Edge, TensorRT, and various AI accelerators/runtimes. Proficiency in CUDA / GPU programming or ARM architecture. Background in Embedded Linux, Drivers, BSP, Kernel development, and Cross Compilation. Experience with Real-Time Systems (RTOS). Show more Show less