Roblox is looking to solve the problem of ensuring seamless and synchronous game experiences for its users by improving the communication of game state to all players, and is seeking a Principal Engineer to help achieve this goal.
Requirements
- Worked on the guts of a multi-player game engine, solving problems related to scale, performance, latency, and throughput in client/server environments.
- Worked on a very large multithreaded distributed system that connects millions of users worldwide.
- Worked on the devices Roblox supports - from desktop clients to mobile phone clients to console clients
- Experience with C++ programming
- Experience with open source game networking
- Experience with asset loading, rendering, and networking
Responsibilities
- Lead engineers with 8+ years of industry experience
- Understand the game networking with a passion for working with open source
- Be experienced with asset loading, rendering, and networking coming from a Game Engine/Studio. (Desirable)
- Be an amazing systems-level C++ programmer and be fascinated by the actual work the CPU does when you use smart pointers, templates, virtual functions, and blocks of memory, both structured and raw
- Have a keen to each millisecond of the network exchanges: You know where the time goes and how to reduce the waste
- Understand what happens on the operating system level when certain code is completed
Other
- 8+ years of industry experience
- Bachelor's degree or higher (not explicitly mentioned but implied)
- Roles that are based in an office are onsite Tuesday, Wednesday, and Thursday, with optional presence on Monday and Friday
- Roblox provides equal employment opportunities to all employees and applicants for employment and prohibits discrimination and harassment of any type
- Roblox also provides reasonable accommodations to candidates with qualifying disabilities or religious beliefs during the recruiting process