Senior Software Engineer, UI Infrastructure
Job description
About the role
The is responsible for owning the end-to-end lifecycle of critical UI infrastructure components that directly power the streaming experience for millions of users. You will own the design, implementation, and maintenance of the embedded UI framework and its core components, ensuring they meet Roku's standards for performance, stability, and scalability. This role requires deep collaboration across engineering teams, UI design, product, and business leadership to translate strategic goals into robust technical solutions. You will be the pragmatic dreamer who invents and re-invents the world of streaming media by solving complex problems with innovative yet reliable implementations. The position demands ownership of features from conception through deployment, driving impact that is felt by tens of millions of Roku users worldwide every single day.
Key facts
What you'll do
You will architect and evolve the embedded UI framework that serves as the foundation for all Roku user experiences, working side-by-side with system architects to extend current capabilities and introduce new features. You will build and maintain specialized tools designed to improve the quality and consistency of Roku OS logging data, enabling more effective diagnostics and system observability. You will create Python-based automation to extract, analyze, and validate log usage patterns across large, complex codebases, ensuring data integrity and coverage. You will develop offline pipelines for processing logs, supporting critical workflows such as pre-merge validation and the automated generation of data contracts. You will write high-quality C++ changes within embedded codebases, focusing on accurate and reliable logging instrumentation that integrates seamlessly with the broader system. You will partner closely with UI infrastructure, firmware, and CI teams to integrate new tooling into developer workflows, improving productivity and reducing friction. You will review technical designs and code changes, providing thoughtful feedback that elevates the overall quality and maintainability of the codebase. You will actively participate in on-call responsibilities, diagnosing issues in production environments and collaborating with cross-functional teams to resolve them swiftly. You will contribute to the definition and refinement of internal standards and best practices for UI infrastructure development. Your work will directly influence the stability, performance, and feature set available to developers and end users alike.
Requirements
You must possess a Bachelor's or Master's degree in Computer Science, Engineering, or a related technical field, or have equivalent practical experience. You should have 8+ years of professional software engineering experience, with a strong track record of delivering complex systems. You must demonstrate deep expertise in C++ programming, including a thorough understanding of modern C++ standards and embedded development constraints. You need proven experience building and maintaining large-scale software systems that operate in production environments. You must have hands-on experience with Python for automation, scripting, and data processing tasks at scale. You should be comfortable working with distributed systems concepts and logging frameworks, understanding how telemetry drives system reliability. You must have a strong grasp of software development best practices, including version control, testing, code review, and continuous integration. You should be able to communicate effectively with both technical and non-technical stakeholders, translating ambiguous requirements into concrete technical plans. You must be comfortable working in a fast-paced, iterative environment where priorities can shift based on business needs and technical discoveries.
Nice to have
Prior experience building and maintaining developer tools or internal platforms is highly valued. Experience with streaming media technologies, television platforms, or consumer electronics firmware is a significant advantage. Familiarity with AI-assisted development workflows and agentic coding tools is considered a strong plus. Background in performance optimization, low-level systems programming, or real-time data processing is appreciated. Experience contributing to open source projects or demonstrating technical leadership through mentorship is also viewed favorably.
Practical notes
This role is based in Cambridge, United Kingdom. The engagement type and specific hours are defined in the source documentation and should be reviewed for details.