Principal Software Engineer
Job description
About the role
As a , you will play a pivotal role in shaping the future of interactive digital experiences. This position focuses on the Game Engine data model team, where you will be responsible for innovating and enhancing the core data structures that underpin the Roblox platform. Your work will directly impact how millions of users engage with the platform, allowing creators to bring their visions to life. You will collaborate with cross-functional teams and have the opportunity to mentor other engineers while driving the technical direction of the team.
Key facts
What you'll do
- Write and optimize engine code to ensure high performance across all user-generated games on the Roblox platform.
- Define and establish the architectural framework and technical direction for the Game Engine data model team.
- Collaborate with various teams and technology platforms to deliver exceptional functionality and quality in the product.
- Lead by example, providing mentorship to fellow engineers on best practices, design patterns, and effective strategies.
- Advocate for and implement automated testing to enhance product quality and reliability.
- Take full ownership of projects, guiding them through all stages of their lifecycle from conception to deployment.
- Ensure compatibility and optimal performance across all devices supported by Roblox, including desktops, mobile devices, and consoles.
- Analyze and improve existing systems, focusing on performance and scalability to meet the demands of a growing user base.
- Engage with the community of developers to gather feedback and insights that can inform future enhancements to the platform.
- Stay current with industry trends and advancements in technology to continually refine and improve the game engine.
- Troubleshoot and resolve complex technical issues, ensuring a seamless experience for users and creators alike.
- Document technical specifications and design decisions to maintain clarity and facilitate knowledge sharing within the team.
Requirements
- A minimum of 8 years of experience in software engineering, particularly with C++ code-generation and analysis tools such as libclang and Abstract Syntax Trees.
- Exceptional programming skills in C++, with a strong understanding of systems-level programming.
- A deep curiosity about CPU operations and memory management, including smart pointers, templates, and virtual functions.
- A Bachelor's or Master's degree in Computer Science or a related field, or equivalent practical experience.
- Proven experience in building and maintaining large-scale systems or game engines.
- Strong interpersonal skills with the ability to communicate effectively across teams and with various stakeholders.
- A proactive approach to problem-solving, with a focus on identifying potential failure points and implementing robust solutions.
- A commitment to continuous learning and staying updated on the latest technological advancements in the field.
- Experience with automated testing frameworks and methodologies is highly desirable.
Nice to have
- Familiarity with game engines or large-scale simulation environments.
- Previous experience in mentoring or leading engineering teams.
- Knowledge of networking, rendering, and physics technologies as they relate to game development.
- Understanding of user experience design principles and how they apply to game development.
- Experience with cloud services and distributed systems can be an advantage.
Skills & tools
- Proficient in C++ programming and familiar with development tools and environments.
- Experience with version control systems, particularly Git.
- Knowledge of software development methodologies, including Agile and Scrum.
- Familiarity with performance profiling and optimization techniques.
- Understanding of security best practices in software development.
Practical notes
This position is based at our headquarters in San Mateo, California, and requires onsite presence from Tuesday to Thursday, with flexible options for Monday and Friday. The starting salary for this role ranges from $295,250 to $345,040 annually, depending on various factors such as experience and market demand. In addition to competitive pay, Roblox offers equity compensation and a comprehensive benefits package to all full-time employees.
Roblox is committed to fostering a diverse and inclusive workplace. We provide equal employment opportunities to all applicants and employees, ensuring that discrimination and harassment of any kind are not tolerated. We also offer reasonable accommodations for candidates with disabilities or religious beliefs throughout the recruitment process.
For candidates interested in this role, please be aware that Roblox may have limitations regarding U.S. work authorization and H-1B sponsorship for certain visa categories.