Linux Video Software Engineer – Senior – Software Engineering
Company | Qualcomm |
---|---|
Location | San Diego, CA, USA |
Salary | $Not Provided – $Not Provided |
Type | Full-Time |
Degrees | Master’s |
Experience Level | Senior |
Requirements
- Android multimedia frameworks and video related applications.
- Video usage models including playback, streaming, camcorder, WiFi display, and DRM.
- Video compression standards (e.g. H264/H.265/AV1)
- Streaming protocols and implementation (e.g HLS/HTTP/RTSP/DASH)
- Expertise in working with tools and techniques used on Linux (Windbg, JTAG, etc.)
- ARM or other embedded SoC development and debugging.
- Master’s degree in Engineering, Information Systems, Computer Science, or related field.
- Experience with C and C++ Programming Languages.
- Experience in Linux Kernel development with a focus on V4L2 and device driver programming.
- Experience in video and imaging technologies, including video compression, post-processing, and computer vision.
- Experience in researching and implementing ML algorithms and tools, and developing machine learning applications according to requirements.
- Knowledge of software design patterns and multi-threaded programming.
- Knowledge of computer architecture, operating systems, data structures, and algorithms, particularly with respect to Linux platforms.
- Software debugging skills in embedded real time operating systems, preferably on Linux platforms
- Understanding of power and performance considerations on embedded systems, preferably on Linux platforms.
Responsibilities
- Design, implement, integrate, and commercialize various user and kernel mode software modules on Qualcomm’s SOC that meets specified performance, latency, power, robustness, and stability metrics.
- Requirements analysis, software design/development/maintenance, and troubleshooting of video related frameworks and drivers on the mobile and/or AI inferencing SOCs platforms.
- Applies Software knowledge and experience to design, develop, create, modify, and validate embedded and cloud edge software, applications, and/or specialized utility programs.
- Analyzes user needs and software requirements to design and customize software for optimal operational efficiency.
- Designs and implements software modules for products and systems.
- Participates in the design, coding for large features, unit testing, significant debugging fixes, and integration efforts to ensure projects are completed to specifications and schedules.
- Performs code reviews and regression tests as well as triages and fixes issues to ensure the quality of code.
- Collaborates with others inside project team to accomplish project objectives.
- Writes technical documentation for Software projects.
Preferred Qualifications
- Master’s Degree in Engineering, Information Systems, Computer Science or related field.
- 4+ years of Software Engineering or related work experience.
- 2+ years of experience with Database Management Software.
- 2+ years of experience with API.
- 1+ year of work experience with Git, Perforce, or Source Code Management System.