Software Engineer

Summary

Develop and maintain C/C++ integrations for video codec technologies (LCEVC, VC-6), integrating SDKs into media frameworks like FFmpeg and GStreamer across desktop and mobile platforms.

You will have an interest in video and compression technology, along with mobile and desktop system-level development. You are proactive, curious and comfortable contributing to wide-ranging technical discussions. You enjoy solving practical integration problems, communicating clearly and working with a multi-skilled team to turn new technology into reliable product experiences.

Responsibilities

  • Develop and maintain C/C++ integrations LCEVC and VC-6 encoder and decoder technologies.
  • Integrate codec SDKs into media frameworks, players and encoding systems, with a primary focus on FFmpeg and GStreamer. The wider team also supports integrations including AndroidX Media3/ExoPlayer, Apple media frameworks, web players, Chromium and WebRTC.
  • Investigate interoperability, performance and platform-specific issues across operating systems, devices and third-party applications.
  • Work with encoder and decoder teams to improve the core integration layers and APIs.
  • Create tests, sample applications and clear integration documentation that help customers and partners adopt the technology.
  • Contribute changes upstream and work constructively with open-source communities where appropriate.
  • Collaborate with colleagues and external engineering teams to scope work, communicate progress and deliver integrations to production.

Qualifications

  • Commercial software development experience using C and/or C++.
  • Experience developing or debugging system-level software on Linux and/or Windows.
  • Experience with at least one relevant area such as FFmpeg, GStreamer, video encoding, mobile media, browser media, WebRTC or GPU-accelerated processing.
  • Good problem-solving skills and confidence working across unfamiliar codebases and third-party APIs.
  • Clear written and verbal communication, including concise progress updates and technical documentation.
  • A degree in Computer Science, Engineering or a related discipline, or equivalent practical experience.

Desirable Experience

  • Direct development experience with FFmpeg or GStreamer is advantageous but not essential.
  • Knowledge of video codecs, encoding or streaming technologies such as H.264/AVC, HEVC, AV1, VVC, HLS, MPEG-DASH or CMAF.
  • Android development with Media3/ExoPlayer, MediaCodec or the Android NDK.
  • Development for Apple platforms using Swift, Objective-C, AVFoundation, AVPlayer, VideoToolbox or VLCKit.
  • Web media, Chromium or WebRTC development using JavaScript or TypeScript.
  • GPU, cloud, real-time, VR/AR or pixel-streaming experience.
  • Previous experience contributing to open-source projects or working in customer-facing engineering.

See also

Software Engineering jobs by country — openings, pay and top skills →

Tailor your CV for this role?

We couldn't check your fit for this role — add a CV to your profile to see it next time.

A new version of freehire is available