Jovanni is an Engineering Manager on the Simulation Core Team at Roblox. He and his team focus on maintaining the physics engine so developers can build dynamic physics-based experiences.
Describe your team’s role here at Roblox.
Roblox has its own physics engine, which my team and the Solver Tech team share the responsibility for maintaining. The first version of the engine was written by CEO Dave Baszucki in the early days of Roblox, but now it’s our job. Our main goal is to improve developer trust in physics, to make it even easier to build dynamic physics-based experiences. The more they can lean on us to save time and focus on the most unique parts of their game, the better. We focus on simplicity, fidelity, and performance. Our team is responsible for things like collision detection, the internal architecture of the physics engine, interfaces for physics used by users and internal teams, and several Roblox-specific features of our engine.
What is one of the most interesting aspects about working on your team at Roblox?
Roblox is a true platform company, so everything we build here is the foundation for experiences built by other people. Also, having a younger developer demographic makes it even more challenging because they have high expectations for what’s technically possible. Telling people, “sorry our engine isn’t ready to scale to those levels” becomes a cop out. “Good enough” is never good enough for our developer community. Everything just needs to work, and making hard things “just work” takes creative design and thoughtful engineering work. But we are incredibly inspired by the challenges our developers push us to solve – there is no shortage of interesting or rewarding problems.
We regularly work with developers on different issues, so we get to see how our work directly benefits them and how it impacts the platform. For example, we invested a lot of time and resources into improving performance speed by an order of magnitude, which raised the demand for physics content in an experience, and we have seen more developers adding more simulation-based features over time. The more we get out of their way and the more capability we add, the more we see developers really get creative.
How is your experience on the team at Roblox different from other roles you’ve had?
A lot of my work before Roblox was in game studios. In that environment, good enough is good enough, and once it works most of the time, you need to move on to the next thing. You don’t get the time to really refine your work, and you usually don’t get the satisfaction of a job well done. Also, at Roblox, the company values on your coffee mug actually carry weight: we truly care about our users and developers, which is surprisingly not the norm at the other companies I’ve worked at.
What are the most interesting projects you’ve worked on and things you’ve learned while working at Roblox?
I’ve had the chance to contribute to many different projects on many different teams. As an engineer, I helped write the early automatic game localization system, the inverse kinematic drag tools for Studio, and worked on our skeletal skinning system, too. As a manager, we keep making the engine faster. I used to be more cynical about what was possible. There’s been several times throughout my tenure here where, at the beginning of a project, I would think, “This is crazy. This will never work.” Then we figure it out and build it and it’s amazing. It’s turned me into a cautious optimist.
What’s one thing you love about the culture at Roblox?
Roblox is a professional and collaborative environment. I work with many extremely knowledgeable people that are happy to share, and I feel comfortable asking anything I want to know. I’ve learned a lot from my co-workers here. I’m grateful for their time and patience.
Interested in joining the Game Engine team at Roblox? We’re always looking for new talent, so check us out at corp.roblox.com/careers/ and see if there’s a role that’s right for you.
Article From: Roblox Blog
People & Culture