Job Description :
Android Architect
Peachtree city, GA
USC, GC or H1B

Job description:
Good knowledge and experience in C++ and Java
Experience in Android Application framework development and Native Services(Middleware) Development
Good knowledge in HAL and Linux kernel
Knowledge in CAN & UDS Diagnostics in preferred
Knowledge in Binder IPC
Experience in Qualcomm ADP is preferred

C/C++ Good language skills. Hands on experience with Android SDK, Linux programming MUST Have
Shell (bash, or similar) Shell command basic use including commands such as ls, pidin/ps, ldd, grep, use of pipes and redirection. Preferred
Java Android Application development using Android SD and Android Studio Preferred

Linux Kernel/Device Drivers/OS Concepts MUST Have
Device Drivers Has basic understanding of SOC peripherals (SPI, I2C, UART, GPIO, Audio control etc, SOC architecture, ARM processor MUST Have for BSP
Preferred for others
OS concepts Understands multi-processing vs multi-threading, mutexes, semaphores, queues and other inter-processor synchronization primitives, priority inversion, deadlock, live-lock and associated avoidance schemes (priority ceiling, priority inheritance, etc, Process loading, exit MUST Have
Linux Has Linux experience. Understands processes, environment variables, QNX alternative would suffice. MUST Have
Kernel Programming Understanding MMU configuration, device drivers, module loading, file system, Process loading, exits MUST Have
Android System Architecture Understands different Android Software components and its inputs/outputs MUST Have
Log/Core dump Analysis Has experience in core file analysis. Preferred
GDB Must have hands on debugging with GDB. Preferred
Android ADP Android Debugger MUST Have
Performance Analysis MIPS/RAM/CPU analysis Preferred
Graphics GPU, OpenGLES, SVG, OpenVG, Video codec, decoder, display, touch input MUST Have for BSP
Preferred for others
Audio Susbsystems Like OpenMax Preferred
File System File system, formats, memory drivers Preferred
uboot Hands on SOC uboot development. Understanding of basic processor boot sequence including bootrom, clock and memory initialization Preferred
USB drivers, class drivers, debug Preferred
Networking drivers Network device drivers, Wifi, cell modem, ethernet concepts Preferred
Hypervisor Hypervisor configurations, solutions and implementations Preferred

App Framework Android Application Framework development MUST Have

Binder IPC Android Specific Interprocess Communication MUST Have

Middleware Native Services Development MUST Have

Qualcomm ADP development Qualcomm ADP development environment Optional

Software Update Differential update is bonus Optional

CAN and UDS Diagnostics Diagnostic implementation experience Preferred