Senior Software Engineer, Platform Portability
Job description
About the role
As a Senior Software Engineer focusing on Platform Portability at Roku, you will play a pivotal role in enhancing the adaptability and functionality of our streaming platform across various devices and operating systems. This position is ideal for an experienced engineer who is passionate about building robust software solutions that ensure seamless user experiences. You will collaborate with cross-functional teams to drive innovation and improve the overall performance of our platform, making it accessible to a wider audience.
Key facts
What you'll do
- Design and implement software solutions that enhance the portability of Roku's streaming platform across multiple hardware and software environments.
- Collaborate with product managers and designers to understand user requirements and translate them into technical specifications and actionable development tasks.
- Optimize existing codebases to improve performance, scalability, and maintainability, ensuring that the platform remains efficient and user-friendly.
- Conduct thorough testing and debugging of software applications to identify and resolve issues before deployment.
- Participate in code reviews to maintain high-quality standards and share knowledge with team members, fostering a culture of continuous improvement.
- Stay up-to-date with industry trends and emerging technologies to incorporate best practices into the development process.
- Mentor junior engineers, providing guidance and support to help them grow their technical skills and advance their careers.
- Collaborate with QA teams to develop automated testing frameworks that ensure the reliability of the platform across different devices and operating systems.
- Contribute to the documentation of software architecture, design decisions, and development processes to facilitate knowledge sharing within the team.
- Work closely with DevOps teams to streamline deployment processes and improve the overall efficiency of the software development lifecycle.
- Engage with external partners and stakeholders to gather feedback and insights that can inform future development efforts.
- Assist in troubleshooting and resolving production issues, ensuring minimal disruption to users and maintaining high service availability.
Requirements
- A minimum of 5 years of professional experience in software development, with a strong focus on platform portability and cross-platform solutions.
- Proficiency in programming languages such as C++, Java, or Python, with a solid understanding of object-oriented programming principles.
- Experience with cloud computing platforms and services, particularly AWS, Azure, or Google Cloud, is highly desirable.
- Familiarity with containerization technologies such as Docker and orchestration tools like Kubernetes.
- Strong analytical and problem-solving skills, with the ability to think critically and approach challenges methodically.
- Excellent communication skills, both verbal and written, to effectively collaborate with team members and stakeholders.
- A degree in Computer Science, Software Engineering, or a related field is preferred.
Nice to have
- Experience working with streaming media technologies and protocols, such as HLS, DASH, or RTSP.
- Knowledge of mobile and embedded systems development, particularly for platforms like Android or iOS.
- Familiarity with Agile development methodologies and tools such as JIRA or Trello.
- Experience in developing and maintaining CI/CD pipelines to automate testing and deployment processes.
- Contributions to open-source projects or personal projects that demonstrate your passion for software development.
Skills & tools
- Programming Languages: C++, Java, Python
- Development Tools: Git, JIRA, Visual Studio, Eclipse
- Cloud Platforms: AWS, Azure, Google Cloud
- Containerization: Docker, Kubernetes
- Testing Frameworks: JUnit, Selenium, or equivalent
Practical notes
This role is based in Hsinchu, Taiwan, and offers a competitive salary that reflects your experience and expertise. Roku is committed to fostering a diverse and inclusive workplace, and we encourage applications from candidates of all backgrounds. If you are a proactive engineer who thrives in a collaborative environment and is eager to contribute to the future of streaming technology, we would love to hear from you. For more information and to apply, please visit our careers page at [Roku Careers](https://www.weareroku.com/jobs/8006919?gh_jid=8006919).