Sr. Data Software Engineer
Software Engineering | San Jose, California
Roku pioneered streaming to the TV. We connect users to the streaming content they love, enable content publishers to build and monetize large audiences, and provide advertisers with unique capabilities to engage consumers. Roku streaming players and Roku TV™ models are available around the world through direct retail sales and licensing arrangements with TV brands and pay TV operators.
With tens of million players sold across many countries, thousands of streaming channels and billions of hours watched over the platform, building scalable, highly available, fault-tolerant, big data platform is critical for our success.
Our team's mission is to build a world class big data platform to bring value out of data for us, for our partners, and for our customers. Our goal is to democratize data, provide reporting and analytics self-service tools, and fuel existing and new business critical initiatives.
What You Will Do:
- Help architect highly scalable, available and fault tolerant distributed data processing systems (batch and streaming systems) processing over 10s of terabytes of data ingested every day and petabyte-sized data warehouse
- Drive architectural discussions, influence product roadmap, and take ownership and responsibility over new projects.
- Lead and mentor junior engineers to ensure systems are built with highest quality, leveraging best practices.
- Collaborate with business partners to understand business requirements, develop solutions to support business needs, facilitate issues resolution, and help determine opportunities to leverage current analytical application capabilities
- Own the data mapping, business logic, and transformations
- Build quality data solutions and refine existing diverse datasets to simplified models encouraging self-service
- Drive efforts to improve the data quality across our data pipelines and implement system controls for managing data quality
- Build automation to develop observability and help with debugging, performance measurement & optimization on large production clusters
- Maintain and support existing platforms and evolve to newer technology stacks and architectures
- Collaborate with cross-functional teams such as developers, analysts, and operations to execute deliverables
What you've done and what you bring:
- Strong SQL skills
- Proficiency in at least one scripting language, Python preferred
- Proficiency in at least one object-oriented language is desired, Java preferred
- Experience in big data technologies like HDFS, YARN, Map-Reduce, Hive, Kafka, Spark, Airflow, Redshift, etc.
- Experience with AWS, Looker is a plus
- Strong data modeling skills
- 10+ years professional experience as a data or software engineer
- Experience leading a team or mentoring junior engineers preferred
- BS in Computer Science; MS in Computer Science preferred