Job Description
We seek an enthusiastic senior hands-on Performance Profiling Engineer. This is a Full-Time Permanent position and requires to work on-site Monday through Friday (no remote work).
In this role, you will do the following: Performance profiling of use cases and key algorithms on the targeted platform:
Port software builds to the new target hardware platform.
Bring up rapid prototyping and demo the feature on the target platform.
Create and analyze the profiling traces to benchmark the key system events/sessions.
Map out the system/hardware settings to analyze and find out the key performance bottlenecks and system/events dependency and recommended solutions.
Performance tuning by adjusting system settings (HW/SW setting, scheduling, priorities, etc.), removing unnecessary dependency, etc.
Benchmark and optimize key algorithms' performance.
Automate profiling scripts and create a dashboard to track changes easily.
Test plans, setup, procedures, build instructions.
Use case/key algorithms performance profiling reports
Prototype demos
Performance bottleneck analysis, recommended solutions, and optimization reports
Automated profiling scripts
Regression reports
REQUIREMENTS:
10+ years experience in mobile performance profiling.
Proficient in Python and shell scripts
Expert in profiling tools such as Perfetto, ftrace, ATrace, etc.
Strong understanding of mobile SoC and hardware/software interactions.
Strong understanding of cache hierarchy, memory bandwidth, connectivity, and the tradeoff between perf and power.
Strong programming and debugging skills with Linux Kernel.
Expertise in Android/WearOS boot flow and BSP (Board support package) is a must.
In-depth understanding of different DSP architectures, such as HiFi2/3/5.
Hands-on experience optimizing algorithms on DSP architecture, DSP Code Optimization, and performance measurement.
Familiar with real-time operating systems, such as uCOS and FreeRTOS, including their threading, scheduler, synchronization, and resource management.
Familiarity with ISP, GPU architecture, and Vulkan programming API is a plus.
Knowledge of mobile systems' performance/power workloads, such as CPU/GPU benchmarks, speech translation, navigation, voice assistant, notification, photo, video recording, and binocular video playback, is a plus.
Knowledge of AR/VR eye/hand tracking and 6D