Software Engineer - Cloudflare Stream at Cloudflare
🇺🇸 United States › Texas › Austin (Posted Sep 28 2021)
Please mention that you found the job at Golangprojects.com
Apply now!
Job description
About the teamWe love the Internet and video is a huge part of it. We’re working hard on building tools that change the possibilities of what Creators can do with video on the web. We make advanced video technologies such as adaptive bitrate, multi-codec, low latency across devices available to every developer. We enable Creators to unleash creativity on the web.
Stream is part of Cloudflare's Emerging Technology and Incubation team. This is where new, bold products are built and released within Cloudflare. Rather than being constrained by the structures which make Cloudflare a successful business, we leverage our network to deliver entirely new tools and products to our customers.
We’re looking to hire an engineer to join our six-person team based out of Austin, San Francisco and Lisbon. If you join us, you’ll be an early team member in helping shape our architecture, products we offer, and make a big impact on creators we work with.
What you'll do - Help build and manage a complex software system that ingests, processes and delivers petabytes of video
- Maintain a focus on customer experience and product quality while scaling a young product
- Collaborate with engineers across the whole stack and teams across Cloudflare, and contribute at many layers of the architecture
- Own your work from early discussions to the day it ships
- Work closely with product leaders and get to know customers big and small
About you - We primarily work in Golang and TypeScript. We recommend you have worked in one of these languages before, preferably professionally
- You are naturally curious and willing to take a step to learn something you don’t have experience in
- You enjoy getting things done and have a bias for action: you're a builder and a creator
- You can contribute across the stack, but may have a deeper interest in working for some particular part like browser/web technologies or video technology
- You lead. We are a growing team and you will have a huge role shaping the product from the ground up
- You have solid engineering fundamentals (formal computer science education a plus)
- You may have experience with video on the internet (for example with Media Source Extensions API on browsers, FFmpeg, live streaming tools) but this is not a requirement
- You would like to join a team that is honest and open with each other and holds each other to the highest standard. We celebrate each others' achievements and support each other when we make mistakes
Examples of things we’ve worked on - Build a high performance job queue from ground up in Go, with support for priorities, heterogeneous workers and extensibility
- Find bugs in FFmpeg and mitigate them
- A system that generates tens of thousands of HLS and DASH manifests a second on demand in TypeScript
- Reverse engineer video playback quirks across browsers and devices
FAQ - How does the product work?
- We offer a video end-to-end video streaming platform for both live and pre-recorded content. We take the user uploaded videos, encode them to various quality levels and distribute them to video players, similar to YouTube. However, unlike YouTube, we don’t coordinate a three sided marketplace of ad networks, creators and viewers. We simply charge our customers for the views on their videos, a fraction of what it would cost them to build, operate and sustain a similar system on their own. We make sure videos remain performant over years by upgrading them to the latest technology. We empower creators to build their own following and innovate with new business models. +
- What technologies do you use?
- We heavily use FFmpeg, sometimes bind to it with Rust. We coordinate encoding and API requests with services written in Go. We deliver video and do view authorization using Cloudflare Workers. Our player is written using React. We collect statistics on playback using Kafka and store it in ClickHouse.
- What’s the interview process like?
- 30 minute phone call with the hiring manager
- Followed by take-home technical challenge where you work on a project that we’ve written out for you,
- Virtual onsite round; practical technical interview with pair programming and an opportunity to meet all the members of the team including executives
- Final call with one of Cloudflare’s co-founders
- How many engineers do you plan to hire?
- We plan to hire two engineers through the first half of 2021. The average tenure of engineers on our team is three years
- What stage is the product?
- We have thousands of customers, ranging from individual users to multinational companies that use our products with joy. Our roadmap is largely driven by product and engineering teams as we’re early in realizing our vision of what Cloudflare Stream will do. We’re in the sweet spot of having enough infrastructure and conventions to move quickly and low tech debt that prevents us from building new features.
- Where is the team located?
- Some of us are in Austin while others are in San Francisco. Since the start of the pandemic we’ve been working 100% remotely from home. We like working from the office so when the pandemic ends we’ll go back to a mix of home and office that meets our personal work style.
Sound like something you’d like to be a part of? We’d love to hear from you!
Please mention that you found the job at Golangprojects.com
Apply now!