As the part of TV Operating System (TVOS) team, you will design, develop and deliver high quality embedded software components for YouView Set-Top-Box. You will be working with technically sharp, multicultural, highly-motivated team, utilising best software development practices and Agile software development process. You will work with and contribute to various Open Source Software and proprietary internal solutions.
This role requires writing code in C++, software integration, system debugging and running acceptance tests on target platforms. The primary focus of this work will be embedded Linux, core Set-Top-Box & Multimedia components. The work will principally involve Linux user space component development, however kernel space debugging work may be required.
The role includes supporting other YouView teams and STB manufacturers. The successful candidate will have related skills in embedded software development, and Set-Top-Box technologies.
Technical skills & experience required
- Software development in C++
- embedded Linux development
- experience with platform and software validation
- experience with multi-threaded software development for real-time systems
- complex software debugging skills
- hands-on experience with toolchains, compilers, debuggers, build systems
- familiarity with inter-process communication (IPC) mechanisms
- familiarity with Linux systems, GNU tools
- good communication and organisational skills
- strong problem solving skills
- structured approach to work,analysis and reporting
Desirable skills & experience
- knowledge of Set-Top-Box architecture (hardware and software)
- hands-on experience with STB technologies (DVB, DVR/PVR, IPTV)
- hands-on experience with industry STB SoCs and their driver stacks (i.e. Broadcom, ST, etc.)
- Set-Top-Box, DVD/Blu-ray, Media Player or similar software stacks and relevant standards experience
- Digital TV / DVB
- Platform & Content Security - CA / DRM / Cryptography
- Media streaming: IPTV & adaptive bitrate like Apple HLS, MPEG-DASH, Microsoft SmoothStreaming, etc.)
- Digital Audio/Video media formats: MPEG, AVC/H.264, HEVC/H.265, Dolby, etc.
- Linux APIs: Linux DVB, V4L2, Media Controller, DirectFB, OpenGL, OpenMAX, etc.
- Open Source Software: GStreamer, D-Bus, Glib, QT, Web Browsers, etc.
- Linux Kernel knowledge: memory management, drivers, file systems, etc.
- SoC core architectures: ARM, MIPS, etc.
- scripting (i.e. Bash, Python)
- git, svn, JIRA, Stash