Senior Software Engineer, Content Platform
Roku · San Jose, CA · 2 wk ago
HybridEngineering$300k–$425k/yrFull-time
About the role
Roku pioneered streaming to the TV and continues to innovate and lead the industry. While we are well-positioned to help shape the future of television – including TV advertising – around the world, continued success relies on our investment in our capabilities.
We are seeking a highly experienced and skilled Senior Software Engineer to join our backend and data team. This role is crucial for designing, building, and optimizing distributed data pipelines, real-time data processing systems, and backend solutions that effectively handle large-scale data.
Responsibilities
- Architect, develop, and maintain scalable backend systems and APIs using Java and Akka.
- Build distributed data pipelines for batch and real-time data processing.
- Design efficient, scalable systems to process large volumes of data.
- Leverage big data technologies such as Apache Spark, Kafka, Flink, and related tools to build high-performance data pipelines.
- Work on data transformation, ingestion, and integration for both structured and unstructured data.
- Implement solutions for data lake and data warehouse integrations.
- Develop and maintain real-time data processing applications to support business-critical use cases.
- Optimize real-time data flows for low latency and high throughput.
- Write clean, efficient, and reusable Java code that adheres to industry best practices.
- Optimize Java applications for performance, scalability, and reliability.
- Leverage Java frameworks such as Spring Boot for backend development.
- Maintain and monitor backend and data systems to ensure high availability and reliability.
- Design and implement performance tuning strategies for large-scale distributed systems.
Requirements
- 7+ years of experience in backend development and distributed data processing.
- Proven expertise in designing and building scalable systems with Java.
- Hands-on experience with Big Data technologies such as Spark, Kafka, and Flink.
- Proficiency in Java and Java-based frameworks (Spring, Spring Boot, etc.).
- Strong understanding of distributed systems and microservices architecture.
- Experience with cloud platforms like AWS, Azure, or Google Cloud.
- Familiarity with containerization and orchestration tools like Docker and Kubernetes.
- Knowledge of SQL and NoSQL databases (e.g., DynamoDB or Aerospike).
Qualifications
- BS/MS in Computer Science or related field.
- Experience with distributed systems and microservices architecture.
- Experience with cloud platforms like AWS, Azure, or Google Cloud.
- Familiarity with containerization and orchestration tools like Docker and Kubernetes.
- Experience with big data technologies such as Apache Spark, Kafka, and Flink.
- Experience with Java and Java-based frameworks (Spring, Spring Boot, etc.).
- Experience with SQL and NoSQL databases (e.g., DynamoDB or Aerospike).
Skills
- Java programming skills.
- Experience with distributed systems and microservices architecture.
- Experience with cloud platforms like AWS, Azure, or Google Cloud.
- Familiarity with containerization and orchestration tools like Docker and Kubernetes.
- Experience with big data technologies such as Apache Spark, Kafka, and Flink.
- Experience with SQL and NoSQL databases (e.g., DynamoDB or Aerospike).
Benefits
- Health insurance
- Equity awards
- Life insurance
- Disability benefits
- Parental leave
- Wellness benefits
- Paid time off