Q

Staff Engineer - Display Software Team

Qualcomm · Hyderabad, Telangana, India

~₹45L (est.)10–18 yrs experiencefull_timePosted 3 days ago
Apply now →

Job description

**General Summary:** We are looking for a highly skilled and passionate **Staff Engineer** to join our **Display Software Team**. In this role, you will be a key technical leader responsible for the design, development, and optimization of the display subsystem for Qualcomm's next-generation IoT platforms. You will work on a diverse range of software layers, from low-level Linux kernel drivers (DRM/KMS) to high-level user-space compositors (Weston/Wayland and SurfaceFlinger). Your expertise will help drive innovative features such as multi-display concurrency, high-resolution bridge integrations, and advanced power management solutions. Level of Responsibility As a Staff Engineer, you are expected to: - **Provide technical leadership and architectural guidance to a team of engineers.** - **Lead complex, cross-functional projects from requirements gathering to commercialization.** - **Mentor junior and senior engineers, fostering a culture of technical excellence.** - **Act as a subject matter expert (SME) for display technologies within the organization.** Principal Duties and Responsibilities - **Architect and Develop** high-performance display drivers using the **Linux DRM/KMS** framework for Qualcomm's Snapdragon platforms. - **Integrate and Bring-up** third-party display hardware, including **MIPI DSI** panels and external bridge chips (DSI-to-HDMI, DP-to-HDMI, LVDS). - **Design and Implement** display features in user-space frameworks, including **Weston/Wayland** (Linux) and **Hardware Composer (HWC)/SurfaceFlinger** (Android). - **Optimize Subsystem Performance** by managing hardware resources (DPU pipes, bandwidth) and implementing power-saving techniques like **VESA DSC** and low-power display modes. - **Debug Complex Issues** across the software stack using JTAG, Lauterbach, and system-level trace tools. - **Collaborate with Cross-Functional Teams** (GPU, Video, Multimedia, and Hardware Design) to ensure seamless integration and end-to-end feature delivery. - **Lead Mainlining Efforts** to upstream display drivers and features to the Linux kernel and open-source communities. - **Drive Continuous Improvement** in software quality through code reviews, unit testing, and automated validation frameworks. Required Qualifications - **Education:** Bachelor's or Master's degree in Computer Engineering, Computer Science, or Electrical Engineering. - **Experience:** 8-12+ years of experience in embedded software development with a focus on display or multimedia subsystems. - **Programming:** Expert-level skills in **C and C++**. - **OS Internals:** Strong understanding of **Linux/Android kernel internals**, including device drivers, memory management (ION/DMA-BUF), and synchronization primitives. - **Display SW:** In-depth experience with the **Linux DRM/KMS** architecture and **libdrm**. - **Display Protocols:** In-depth knowledge of display interfaces such as **MIPI DSI**, **DisplayPort (DP)**, **eDP**, and **HDMI**. Preferred Skills - Experience with **Post-Silicon bring-up** and hardware-software co-verification. - Knowledge of display technologies like **HDR10/10+**, **HDCP**, and color management. - Familiarity with graphics buffer management (**GBM**) and allocator frameworks (**Gralloc**). - Experience with **Wayland/Weston** compositor development or **Android Graphics stack** (SurfaceFlinger, HWC). Minimum Qualifications: Bachelor's degree in Engineering, Information Systems, Computer Science, or related field and 4+ years of Software Engineering or related work experience. OR Master's degree in Engineering, Information Systems, Computer Science, or related field and 3+ years of Software Engineering or related work experience. OR PhD in Engineering, Information Systems, Computer Science, or related field and 2+ years of Software Engineering or related work experience. 2+ years of work experience with Programming Language such as C, C++, Java, Python, etc.