Roku Inc.

Senior Software Engineer - Platform Architecture

Roku Inc. Austin, TX

The revolution won't be televised. It will be streamed. Want to help us build it?

Roku Is Changing How The World Watches TV

Roku is the #1 TV streaming platform in the USA, and we’ve set our sights on powering every television in the world. Roku pioneered streaming to the TV. Our mission is to be the TV streaming platform that connects the entire TV ecosystem. We connect consumers to the content they love, enable content publishers to build and monetize large audiences, and provide advertisers unique capabilities to engage consumers.

From your first day at Roku, you’ll make a valuable — and valued — contribution. We’re a fast-growing public company where no one is a bystander. We offer you the opportunity to delight millions of TV streamers worldwide while gaining meaningful experience across various disciplines.

About The Platform Portability Team

Our mission is to help Roku scale, enabling the Roku OS on more machines to extend our reach. While most teams see the world in terms of hardware or software, the Platform Portability team does its best work by straddling that line, living in the grey area where every solution could be achieved via hardware or software. Working across that line and at this scale demands that we think in terms of clean, proper, and appropriate portability and reporting abstractions.

Because of this kind of work, we often say, “there’s no such thing as magic.” We don’t accept that something just works; we wonder why and go digging to figure it out. We aren’t content with surface understandings. We go deep and rip it apart, looking to understand how the “magic” gets done for real. We’re a team that values diversity and flexibility of thought. When we look to add new people to our team, beyond technical skill, we are looking for people with deep curiosity around how things work, how willing they are to go one more layer in to learn. We also value people who have worked in multiple ecosystems and haven’t calcified their thinking around one way to do something but being willing to consider lots of alternate approaches.

Tech stack: Because of the nature of the work, our tech stack is very broad, from the hardware abstraction layer up to the OS and programming language. This might include Linux, Android, Tizen, C, C++, boot loaders, drivers, multimedia and streaming media tech, among others.

About The Role

Roku is looking for an experienced senior embedded systems engineer to join the Roku OS, Platform Portabilty group. In this role, you will be part of a team responsible for Roku’s Platform Abstraction Layer (PAL) and portability API’s. RokuOS runs on millions of regularly updated devices in the field. As we continue to grow our product offering and install base, our challenge is to keep Roku OS maintainable, portable and high quality while adding new features and supporting new hardware offerings. To achieve this, we must build on and maintain strong device portability abstractions and system modularity. This position requires significant expertise in system architecture, portability, hardware abstractions and writing performant, portable C++ code in a device independent manner.

In This Role, You Will
  • Develop and evolve the RokuOS PAL to support new devices and new features.
  • Architect RokuOS, adding appropriate modularity and abstractions.
  • Build tools as needed to support platform portability.
  • Write software that can be easily ported to new or existing platforms.
  • Demonstrate excellence in C++ development and deliver high-performance, ultra-reliable software.
  • Work both independently and in small groups to deliver new features and functionality on-time.
  • Debug software issues with an eye to optimizing performance and improving product quality.
  • Demonstrate the ability to dig-deep to find solutions to tough problems affecting our users.
We’re excited if you have
  • 10+ years of experience developing Linux based consumer electronic products.
  • Excellent C++ programming skills.
  • Significant experience in API design and developing portable code.
  • Proven track record of success with embedded Linux development projects.
  • A passion for building robust systems and portability abstractions.
  • Deep background in one or more of the following: networking/Wi-Fi, audio/video streaming, embedded graphics, and/or embedded I/O.
  • Excellent verbal and written communication skills.
  • Bachelor’s and/or Master’s degree in Computer Science or equivalent.
The Roku culture

Roku is a great place for people who want to work in a fast-paced environment where everyone is focused on the company’s success rather than their own. We try to surround ourselves with people who are great at their jobs, who are easy to work with, and who keep their egos in check. We appreciate a sense of humor. We believe a fewer number of very talented folks can do more for less cost than a larger number of less talented teams. We’re independent thinkers with big ideas who act boldly, move fast and accomplish extraordinary things through collaboration and trust. In short, at Roku you’ll be part of a company that’s changing how the world watches TV.

We have a unique culture that we are proud of. We think of ourselves primarily as problem-solvers, which itself is a two-part idea. We come up with the solution, but the solution isn’t real until it is built and delivered to the customer. That penchant for action gives us a pragmatic approach to innovation, one that has served us well since 2002.

Learn More About Our Team

#LI- FL1
  • Seniority level

    Not Applicable
  • Employment type

    Full-time
  • Job function

    Engineering
  • Industries

    Software Development, Computers and Electronics Manufacturing, and Entertainment Providers

Referrals increase your chances of interviewing at Roku Inc. by 2x

See who you know
Turn on job alerts

Senior Software Engineer in Austin, TX

Similar Searches