Senior Software Engineer, Data Model
at Roblox
San Mateo, United States
Every day, tens of millions of people come to Roblox to explore, create, play, learn, and connect with friends in 3D immersive digital experiences– all created by our global community of developers and creators.
At Roblox, we’re building the tools and platform that empower our community to bring any experience that they can imagine to life. Our vision is to reimagine the way people come together, from anywhere in the world, and on any device. We’re on a mission to connect a billion people with optimism and civility, and looking for amazing talent to help us get there.
A career at Roblox means you’ll be working to shape the future of human interaction, solving unique technical challenges at scale, and helping to create safer, more civil shared experiences for everyone.
As a Senior Software Engineer on the Engine DataModel team, you will own and innovate on the foundational components that form the backbone of the Roblox platform. In the Roblox Engine, the DataModel is a tree-like structure that is analogous to a scenegraph in other 3D engines. This role will report to the engineering manager and will be based out of our HQ in San Mateo, CA in a hybrid model 3 days a week (Tuesdays to Thursdays).
Our team owns:
- The core structures and systems are used to build the DataModel and interact with it.
- The C++ reflection bindings that form the Engine’s Luau API surface and let creators interact with the DataModel. We’ve built custom codegen tooling to generate the C++ for these reflection bindings and other related structures.
- DataModel serialization … and much more!
You will:
- Develop engine code that performs well for all user-created games on the Roblox platform.
- Build the core systems and data structures used in the Roblox engine, working with other teams to find universal solutions.
- Take ownership of projects throughout their full lifecycles.
- Execute code that performs well on all the devices Roblox supports—from desktop clients to mobile phone clients to console clients.
You have:
- Experience developing outstanding systems-level C++ programming.
- Have a curiosity about the actual work the CPU does when you use smart pointers, templates, virtual functions, and blocks of memory, both structured and raw.
- Have experience working on game engines or other similarly performance-sensitive products.
- Responsibility for building and maintaining systems that work optimally.
- Curiosity to learn and stay up-to-date on technology developments.
For roles that are based at our headquarters in San Mateo, CA: The starting base pay for this position is as shown below. The actual base pay is dependent upon a variety of job-related factors such as professional background, training, work experience, location, business needs and market demand. Therefore, in some circumstances, the actual salary could fall outside of this expected range. This pay range is subject to change and may be modified in the future. All full-time employees are also eligible for equity compensation and for benefits as described on this page.
Roles that are based in an office are onsite Tuesday, Wednesday, and Thursday, with optional presence on Monday and Friday (unless otherwise noted).
Roblox provides equal employment opportunities to all employees and applicants for employment and prohibits discrimination and harassment of any type without regard to race, color, religion, age, sex, national origin, disability status, genetics, protected veteran status, sexual orientation, gender identity or expression, or any other characteristic protected by federal, state or local laws. Roblox also provides reasonable accommodations to candidates with qualifying disabilities or religious beliefs during the recruiting process.