Software Engineer, VIPER at Comcast VIPER (Denver, CO)
Comcast’s Technology & Product organization works at the intersection of media and technology. Our innovative teams are continually developing and delivering products that transform the customer experience. From creating apps like TVGo to new features such as the Talking Guide on the X1 platform, we work every day to make a positive impact through innovation in the pursuit of building amazing products that are enjoyable, easy to use and accessible across all platforms. The team also develops and supports our evolving network architecture, including next-generation consumer systems and technologies, infrastructure and engineering, network integration and management tools, and technical standards.
Do you love to write code? Are you passionate about software craftsmanship? Would you like to work on projects with tangible impact? Are you looking to make a differences?
As a software engineer in the Content Origination Group (COG), you will develop the software that prepares video content for playback to a wide range of IP devices ranging from PCs, iOS, Android, gaming consoles and set-top boxes. At VIPER COG you will help shape the next generation, cloud-based, video delivery pipeline that provides live streams, full linear lineups, on-demand video and cloud DVR services.
In COG, we believe in innovation. We are committed to deliver high quality software. We collaborate with our coworkers to define and design solutions that can be utilized across the organization. We have autonomy to make appropriate decisions. We respect our employees’ life and work balance. We have fun at work. We always look for opportunities to do things better, faster, more efficient.
Who does the COG engineer work with?
You’ll have the chance to collaborate with industry experts from many disciplines: software architects, network engineers, big data scientists, player developers, content security specialists, and various streaming video technologists. A COG engineer also engages with quality assurance engineers, technical operators, and product owners on a daily basis. We’re a small team, delivering software solutions at the leading edge of streaming video technology in a very collaborative environment.
What are some interesting problems you’ll be working on?
Comcast manages an enormous library of on-demand videos and a vast number of national and regional linear channels. These video assets come in a variety of encoding technologies using different bitrates and different resolutions. We need to support video playback of all those assets on many different device types, with varying screen sizes, and varying connection qualities. The COG team provides solutions to manage the combinatorial complexity of matching up the disparate video sources to devices with different capabilities.
One of the solutions this team has already developed is a Just-In-Time-Packager (JITP) called Super8. Super8 allows us to package video into the formats and bitrates that devices are actually requesting. Our JITP solution already supports various adaptive bitrate formats, including HLS, HDS, and MPEG DASH. You will help add support for whatever new formats the next generation of devices use.
The COG team is also often called on to replace vendor provided solutions that were initially used to bootstrap previous initiatives. In this position, you will work on the packaging team adding new features to the IP video on-demand (VOD) and Linear IP TV products.
Where can you make an impact?
Your code will process the video content that is distributed to tens of millions of devices, all day, every day. The systems you design and build will enable first-to-market product features (for example: cloud DVR). You can help influence leading edge streaming video technology standards with real world lessons learned by being a first implementer. Replace expensive vendor provided solutions with better, more stable, more scalable, more operable platforms, and see that your individual contributions will have multi-million dollar impacts to the bottom line. Your work will directly impact millions of Comcast customers. No code is insignificant, you’ll find yourself walking around thinking “Hey, I did that!”
Responsibilities:
Here are some of the specific technologies we use for Content Origination:
Requirements:
Here are some other qualifications that we’d like to see:
About Comcast VIPER (Video IP Engineering & Research)
VIPER(Video IP Engineering & Research), is a startup division within Comcast’s Technology and Product Division and spun out from IP Video and online projects originated within Comcast Interactive Media is based in downtown Denver, CO. We are a cloud-based, IP video infrastructure that’s been built to deliver a broad mix of on-demand video, live TV streams and an assortment of other digital media to an array of connected devices in the home. -
Comcast is an EOE/Veterans/Disabled/LGBT employer
Desired Skills and Experience
- Design new software applications, support applications under development, and customize existing applications. Develop software update process for existing applications. Assist in the rollout of software releases.
- Collaborate with project stakeholders to identify product and technical requirements. Conducts analysis to determine integration needs.
- Diagnose performance issues and propose and implement code improvements
- Prove scalability with load generating tools
- Ensure the software architecture is lean and extensible
- Ensure software modules are reliable for reuse
- Works with Quality Assurance team to determine if applications fit specification and technical requirements.
- Be a team resource to help watch for new technologies and methodologies that are relevant to our problem space
- Define and refine team development processes
- Involve in the DevOps and on-call duties as necessary
- Go (golang)
- Python 3
- C
- C++
- Java 8
- Linux (CentoOS)
- Git
- Apache httpd and the Apache Portable Runtime
- Redis
- MongoDB
- OpenStack
- MemSQL
- Kubernetes
- Docker
- ELK
- Grafana
- Prometheus
- Puppet
- Do you know beautiful code when you see it? Can you troubleshoot that bug that nobody else can fix? Are you proactive and willing to take ownership? Good.
- Like to whiteboard? Great so do we!
- Be able to analyze and clearly articulate complex issues and technologies understandably and engagingly with your teammates.
- BS in Computer Science and 5+ years equivalent experience; MS in Computer Science highly preferred
- Experience in delivering large and complex products
- Experience in C programming. Experience with C++ and/or Go (Golang) is desirable
- Experience developing software on and for multicore Linux machines
- Knowledge of Object Design, Design patterns, and Algorithms
- Knowledge of basic system administration tasks, and best practices
- Experience developing software for Networking, Web services, HTTP, and TCP/IP
- Experience developing multi-threaded and high performance software
- Experience with FFMPEG, ISO DASH-BMFF, HLS, HDS, MPEG-2, MPEG-4, and H.264 compression a plus
- Understanding of RESTful design principals
- Able to analyze and clearly articulate complex issues and technologies understandably and engagingly
- Great design and problem solving skills, with a strong bias for architecting at scale
- Strong troubleshooting and problem solving skills, adaptable, proactive and willing to take ownership
- Devops mindset and experience
- Experience with on-call and operation support
- Experience with dashboard and operational support tools development
- Experience with CICD
- Able to work in a fast-paced environment