Senior Software Engineer
Posted Updated
Description
- At Roku, the UI Systems team builds the high-performance engines and core graphics infrastructure that power millions of devices
- We own the low-level C++ frameworks, rendering pipelines, and system architectures that enable smooth navigation and rich animations
- Our work sits at the intersection of hardware and software, where we optimize graphics rendering, memory management, and layout engines to ensure a consistent, lightning-fast experience across our entire device portfolio
- We operate in a collaborative, high-trust environment, partnering closely with firmware and silicon teams to push the boundaries of what’s possible on embedded hardware
- As a Senior Software Engineer, you will be a key architect of the core systems that underpin Roku’s user experience
- You will design and implement performance-critical code within our UI engine, focusing on graphics primitives, memory efficiency, and hardware acceleration
- You’ll tackle complex systems-level challenges—such as optimizing frame rates on resource-constrained hardware and building robust APIs for higher-level frameworks
- This role is ideal for engineers who thrive on low-level systems programming, care about performance down to the microsecond, and want to build the high-performance foundations that power the future of television
- Architect and optimize core C++ UI frameworks and rendering engines to ensure buttery-smooth performance across a diverse range of hardware profiles
- Lead technical investigations into system-level bottlenecks, memory leaks, and GPU/CPU synchronization issues
- Develop and maintain low-level graphics APIs and layout systems that serve as the backbone for Roku’s application ecosystem
- Integrate AI/ML capabilities at the systems level, leveraging generative AI tools to optimize code generation and automate performance profiling
- Collaborate with firmware and driver teams to leverage hardware-specific optimizations and ensure seamless integration with the underlying OS
- Mentor junior developers through deep-dive code reviews, architectural design sessions, and technical documentation of core systems
- Drive engineering excellence by implementing advanced debugging tools, automated performance regression suites, and modern C++ best practices
Benefits
- Medical, wellness and financial benefits
- Free snacks and access to the company fitness center
- Unlimited paid time off policy
- Work from home opportunities
- Deep understanding of systems programming, including memory management, multi-threading, and hardware-software abstraction layers
- Strong root cause analysis skills, specifically using tools like GDB, Valgrind, or platform-specific profilers
- Experience with graphics APIs (e.g., OpenGL, Vulkan, or proprietary embedded graphics stacks) and rendering pipelines
- Minimum of 5+ years of software engineering experience with a heavy focus on C++ (C++14/17/20)
- A proactive mindset with a passion for squeezing every drop of performance out of embedded systems and a commitment to data-driven optimization
- Proficiency in Python for tooling and automation, with a working knowledge of BrightScript or JavaScript being a significant plus
- Knowledge of AI applications and hands-on experience using generative AI tools to accelerate systems-level development
