company_logo

Full Time Job

Staff Software Engineer - Video Player

CNN

New York, NY 11-12-2021
 
  • Paid
  • Full Time
Job Description
CNN invented cable news in 1980, defined online news in 1995 and is now taking the next step in expanding what news can be by launching CNN+. With an unrivaled global reach, storytelling, and world class talent, we are building CNN+, a streaming product that will grow the reach and scope of the CNN brand in a way that no one else is doing.

We are journalists, designers and technologists, all united by a powerful mission to inform, engage and empower the world. Join the most trusted and recognized name in news as we build our next chapter.

The Job

CNN is the world's most essential and engaging source of video and digital news, and we're embarking on a crucial mission to invent the next generation news and information experiences online. You'll be joining an empowered cross-functional team building the trusted new digital products, platforms, and formats that put CNN's talent, expertise, and content programming - and the directions it goes next - directly in the hands of consumers. The Internet is changing the news and information landscape, and we have an ambitious product roadmap grounded in journalism and facts. Our team has a unique ability to marry content, design, product, and technology to spark connection, fulfill utility, and build community.
Our future involves native applications across many ecosystems, but we are first focused on building a delightful, interactive web application. We are currently building in Node, TypeScript, Svelte, Sass, WebSockets, and Postgres, and we will be flexible in our technology choices as we leverage internal services, open-source software, and cloud services.

The Daily

Your ability to traverse the full web stack will be an asset to us as we evaluate the tradeoffs inherent in software engineering. We have fun with this everyday: balancing what our users are asking for, our current technical strengths, and what new technologies are emerging and where we want to grow as a team. We hold the ability to choose (or invent) the right tool for the job in high regard and consider it a critical part of our success.

We work iteratively by synthesizing product, design, and research feedback. We have experience releasing real-time apps to large audiences and welcome your experience making this project a successful one. In this remote world, we deeply value your ability to work independently and allocate time sensibly while communicating with high emotional intelligence.

We are enriched by the diversity of approach and perspective across our team, and are excited to deepen our understanding with your contributions. The opportunity to put an amazing consumer experience in the hands of a large audience motivates us to move quickly and put our best work forward. If this resonates with you, we look forward to meeting you!

Skills Required:
• Javascript, CSS, HTML, (templating is primarily Handlebars; we use the Clay CMS framework), NodeJS
• Knowledge in the development and maintenance of web, mobile app, or OTT video player libraries allowing for consumption of video content at scale
• Experience building comprehensive and robust APIs, configurations, and components to support video playback, user interfaces, video metadata, and third-party integrations
• Thorough understanding of how video playback works in modern web browsers and any associated limitations, media source extensions, encrypted media extensions, and auto play
• Expert knowledge of scaling and optimization of a codebase
• Expert knowledge of building solutions for high traffic websites
• Expert knowledge of unit test frameworks such as Jasmine, Mocha, or JEST

Nice to Have:
• Experience integrating services and SDKs (third-party or otherwise) for ads, analytics, audience engagement, and media asset management
• Working knowledge of media streaming, digital rights management, client-side and server-side ad insertion, analytics technologies; in addition to video player events, captions, and adaptive bitrate algorithms
• Experience knowledge of integrating analytics and accessibility
• Experience knowledge of AWS services, such as Lambda, API Gateway, SNS, Elasticache, S3, and CloudFront
• Experience knowledge of building fully responsive designs that work across all screen resolutions as it pertains to the video player
• Experience with Python

As a member of the team you will:
• Take on a technical leadership role, helping to guide technical direction in partnership with engineering, product, and design.
• Collaborate with video streaming and encoding teams to improve video delivery and playback.
• Thoroughly document your own contributions and, where necessary, the contributions of others.
• Lead technical design and architecture of new features and requirements within the product.
• Contribute to documentation and code quality efforts across the platform through thoughtful code reviews and ensuring code standards.
• Be responsible for implementing, developing and maintaining complete high-priority features with thorough testing.
• Communicate effectively and facilitate meetings with engineering and product to ensure engineering requirements and expectations.
• Collaborate across teams to ensure co-dependent work streams needs are met.

About You:
• You are excited to learn and can pick up new frameworks and languages quickly.
• You are passionate about video and streaming and are excited to contribute to several codebases that touch both.
• You are an excellent communicator capable of assessing a technical task and breaking it into smaller tasks in partnership with other engineers and/or product.
• You are comfortable giving demos of your work and explaining technical details and requirements across teams.
• You are excited and eager to take on mentoring of both senior and associate level engineers, and you ideally have experience doing so in the past.
• You are excited to add positively to the culture of CNN+, both from an interpersonal level and from a code improvement standpoint.
• You are passionate about improving the code you touch and interact with.

Jobcode: Reference SBJ-d2xnzy-18-118-254-94-42 in your application.