Staff Software Engineer (Media Experience)
Posted Updated
- We are seeking a Senior Software Engineer to help us build the next version of our media infrastructure. In this role, you will define the work on the technical components of how we ingest, process, store, and deliver video and audio content at Reddit. You will tackle complex technical challenges to support our media product strategy and deliver high-quality media experiences globally
- Work cross-functionally with product, design, and other engineering counterparts to execute on product and business strategy and build novel products and features that our users will love
- Contribute to the full development cycle: technical design, development, test, experimentation, analysis, and launch. You’ll be reviewing code and design docs, giving feedback on product specs and mocks
- Participate with a team of thoughtful, fast-moving, and motivated engineers. Contribute to standards that improve developer workflows, recommend best practices, and help mentor junior engineers on the team to grow their technical expertise
- Move fast while balancing quality. We can’t afford extensive processes, and we also can’t afford show-stopping bugs. We need someone who can balance speed with quality while quickly building brand-new products
- Collaborate with client engineers and platform engineers to improve performance of media across Reddit to serve better content globally
Benefits
- Comprehensive health benefits
- Flexible vacation & Reddit global days off
- Family planning funds & 4+ months paid parental leave
- Personal & professional development funds
- Paid volunteer time off
- Workspace & home office benefits
- 5+ years of industry experience in large-scale distributed systems
- Experienced with distributed caching layers, and distributed large scale data storage systems like Redis
- Experienced with GraphQL, REST, HTTP, gRPC, Thrift basics, and the ability to design and implement maintainable APIs
- Strong organizational skills, the ability to prioritize tasks and to deliver projects on schedule
- 7+ years of hands-on, professional software development experience in one or more general purpose programming languages (Go, Python, Ruby, Java, C++)
- Excellent communication skills. You collaborate effectively with teams in a fully remote environment and discuss complex topics with technical and non-technical audiences
- Familiarity with HTTP Live Streaming (HLS), MPEG-DASH, MP4, and other streaming protocols, as well as video compression standards (H.264, H.265/HEVC, VP9, AV1)
- Familiarity with image processing and delivery technologies such as image scaling, cropping, and image formats like progressive JPEG, WebP, etc
- BS degree in Computer Science, a similar technical field of study or equivalent practical experience
- Familiar with background data fetching
- Demonstrated curiosity and commitment to staying up-to-date with advancements in video compression technologies, including attending conferences, reading research papers, and engaging with the latest industry trends
- Strong understanding of how to measure and improve video visual quality metrics (eg., VMAF, PSNR)
- Hands-on expertise with tools like FFMPEG, GPAC and similar media frameworks for processing, modifying, and manipulating media streams
- Experienced with client-side technologies, familiarly with the client library around media (eg., AVFoundation, VideoToolbox, video prefetching)
- Strong data analysis skills using SQL
