Principal Engineer - ML Platform
- Status
- Open
- Remote policy
- Not stated
- Employment type
- Not stated
- Salary
- 295,250-345,040 USD / year
- Categories
- Software Engineering
- Source
- roblox
- First observed
- 2026-08-11 23:51 UTC
- Last seen
- 2026-11-13 22:50 UTC
- Source claims posted
- 2026-05-05 18:13 UTC
- Consecutive misses
- 0 of 3
What the posting says
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.
ML Platform at Roblox supports hundreds of ML use cases and billions of inferences per day across Discovery, Safety, Engine and much more. We build what ML engineers use to go from idea to production: data and training pipelines, the SDKs and tools they build with, the GPU fleet and the scheduling that runs their jobs.
As a Principal Engineer on ML Platform, you will set the technical direction for these systems. You will find what slows ML engineers down or wastes compute and design durable fixes. You will measure the results and keep improving them until they show up as faster iteration, more reliable jobs and better use of every GPU.
You Will:
Design platform capabilities that many teams adopt, so that one investment improves hundreds of use cases instead of one.
Build GPU and compute management that keeps a scarce, mixed fleet busy. This covers quotas and priority tiers, preemption, scheduling across clusters, and capacity planning with Infrastructure.
Define the platform’s success metrics, instrument them, and improve them quarter over quarter. Examples include time from code to first training run, job success rate, GPU utilization, and cost per training run or per inference.
Lead deep investigations when jobs are slow or failing, from pipeline and scheduler behavior down to GPU profiles and hardware errors. Turn the findings into fixes that stay fixed.
Work closely with ML engineers and data scientists to learn how they work, and make the paved path the easiest one to take.
Partner with Infrastructure, Data Platform and Security on shared foundations such as storage, networking, data access and compliance.
Raise the technical bar through design reviews, written proposals and code, and mentor senior engineers.
You Have:
6+ years of professional experience and a tool chest of system design experience upon which to draw to build performant systems for all of Roblox.
A track record of building ML infrastructure end to end. Examples include training pipelines, workflow orchestration (e.g. Kubeflow, Airflow, Ray), data or feature pipelines, experiment tracking and model registries, or model serving.
Experience designing SDKs, APIs or developer tools that were widely adopted, and a strong sense of what makes a platform easy to use.
Hands-on experience running GPU workloads at scale on Kubernetes. That includes scheduling, quotas, multi-cluster dispatch, autoscaling, and debugging GPU and node failures (e.g. Xid errors, NCCL hangs).
Enough depth in training and inference performance (distributed training, mixed precision, batching, quantization) to know where the platform should do the work for its users.
A habit of measuring: you set clear success metrics, ship in steps, and keep iterating until the numbers move.
Experience leading cross-team technical work without direct authority, and writing clearly for both engineers and leaders.
A Bachelor’s degree in Computer Science, Computer Engineering or a related field, or equivalent experience.
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.
Annual Salary Range
$295,250—$345,040 USD
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.
For US based roles only, please note the Company may not be able to employ candidates for this role who have United States work authorization related to certain U.S. visa categories, or support future H-1B sponsorship at this time.
Quality
- + Salary range stated weight 35%
- x Remote policy stated weight 20%
- + Location stated weight 15%
- + Organisation stated weight 15%
- + Publication date stated weight 15%
Based on 102 observation(s).
- ! Days open - concerningOpen for 94 days so far
- ! Reopen count - concerningReopened once
- + Salary range removed after publication - fineSalary range has not been removed since publication
- + Salary range narrowed - fineSalary range has not narrowed since publication
- + Missing/reappear cycles - fineWent missing and reappeared once
Timeline
-
*
#12519 2026-08-11 23:51 UTCPublished
-
~
#17857 2026-08-12 07:51 UTCModified
-
source_updated_at
2026-08-11T14:41:08-04:00->2026-08-12T02:39:58-04:00
-
source_updated_at
-
~
#28523 2026-08-12 19:51 UTCModified
-
source_updated_at
2026-08-12T02:39:58-04:00->2026-08-12T14:42:38-04:00
-
source_updated_at
-
~
#40947 2026-08-13 07:52 UTCModified
-
source_updated_at
2026-08-12T14:42:38-04:00->2026-08-13T02:43:47-04:00
-
source_updated_at
-
~
#51541 2026-08-13 19:53 UTCModified
-
source_updated_at
2026-08-13T02:43:47-04:00->2026-08-13T14:44:45-04:00
-
source_updated_at
-
~
#59965 2026-08-14 07:54 UTCModified
-
source_updated_at
2026-08-13T14:44:45-04:00->2026-08-14T02:40:41-04:00
-
source_updated_at
-
~
#70244 2026-08-14 19:55 UTCModified
-
source_updated_at
2026-08-14T02:40:41-04:00->2026-08-14T14:43:33-04:00
-
source_updated_at
-
~
#91738 2026-08-15 19:55 UTCModified
-
source_updated_at
2026-08-14T14:43:33-04:00->2026-08-15T14:42:22-04:00
-
source_updated_at
-
~
#102179 2026-08-16 07:55 UTCModified
-
source_updated_at
2026-08-15T14:42:22-04:00->2026-08-16T02:39:48-04:00
-
source_updated_at
-
~
#113683 2026-08-16 19:56 UTCModified
-
source_updated_at
2026-08-16T02:39:48-04:00->2026-08-16T14:45:37-04:00
-
source_updated_at
-
~
#124068 2026-08-17 07:56 UTCModified
-
source_updated_at
2026-08-16T14:45:37-04:00->2026-08-17T02:40:43-04:00
-
source_updated_at
-
~
#136356 2026-08-17 19:42 UTCModified
-
source_updated_at
2026-08-17T02:40:43-04:00->2026-08-17T14:43:55-04:00
-
source_updated_at
-
~
#146896 2026-08-18 09:17 UTCModified
-
source_updated_at
2026-08-17T14:43:55-04:00->2026-08-18T02:40:43-04:00
-
source_updated_at
-
~
#159453 2026-08-18 21:00 UTCModified
-
source_updated_at
2026-08-18T02:40:43-04:00->2026-08-18T14:42:42-04:00
-
source_updated_at
-
~
#172783 2026-08-19 07:53 UTCModified
-
source_updated_at
2026-08-18T14:42:42-04:00->2026-08-19T02:43:27-04:00
-
source_updated_at
-
~
#193575 2026-08-19 19:27 UTCModified
-
source_updated_at
2026-08-19T02:43:27-04:00->2026-08-19T14:43:39-04:00
-
source_updated_at
-
~
#206535 2026-08-20 07:36 UTCModified
-
source_updated_at
2026-08-19T14:43:39-04:00->2026-08-20T02:44:03-04:00
-
source_updated_at
-
~
#223283 2026-08-20 20:23 UTCModified
-
source_updated_at
2026-08-20T02:44:03-04:00->2026-08-20T14:45:47-04:00
-
source_updated_at
-
~
#235040 2026-08-21 06:53 UTCModified
-
source_updated_at
2026-08-20T14:45:47-04:00->2026-08-21T02:42:12-04:00
-
source_updated_at
-
~
#254625 2026-08-21 19:50 UTCModified
-
source_updated_at
2026-08-21T02:42:12-04:00->2026-08-21T14:43:24-04:00
-
source_updated_at
-
~
#258848 2026-08-21 23:52 UTCModified
-
source_updated_at
2026-08-21T14:43:24-04:00->2026-08-21T16:08:02-04:00
-
source_updated_at
-
~
#281613 2026-08-22 21:12 UTCModified
-
source_updated_at
2026-08-21T16:08:02-04:00->2026-08-22T14:41:52-04:00
-
source_updated_at
-
~
#293300 2026-08-23 09:44 UTCModified
-
source_updated_at
2026-08-22T14:41:52-04:00->2026-08-23T02:40:11-04:00
-
source_updated_at
-
~
#303360 2026-08-23 21:11 UTCModified
-
source_updated_at
2026-08-23T02:40:11-04:00->2026-08-23T14:41:41-04:00
-
source_updated_at
-
~
#318492 2026-08-24 07:30 UTCModified
-
source_updated_at
2026-08-23T14:41:41-04:00->2026-08-24T02:41:13-04:00
-
source_updated_at
-
~
#338538 2026-08-24 22:19 UTCModified
-
source_updated_at
2026-08-24T02:41:13-04:00->2026-08-24T14:45:56-04:00
-
source_updated_at
-
~
#354314 2026-08-25 10:19 UTCModified
-
source_updated_at
2026-08-24T14:45:56-04:00->2026-08-25T02:41:37-04:00
-
source_updated_at
-
~
#363970 2026-08-25 19:02 UTCModified
-
source_updated_at
2026-08-25T02:41:37-04:00->2026-08-25T14:42:54-04:00
-
source_updated_at
-
~
#377545 2026-08-26 07:20 UTCModified
-
source_updated_at
2026-08-25T14:42:54-04:00->2026-08-26T02:41:22-04:00
-
source_updated_at
-
~
#387876 2026-08-26 22:35 UTCModified
-
source_updated_at
2026-08-26T02:41:22-04:00->2026-08-26T14:43:10-04:00
-
source_updated_at
-
~
#396914 2026-08-27 10:36 UTCModified
-
source_updated_at
2026-08-26T14:43:10-04:00->2026-08-27T02:42:48-04:00
-
source_updated_at
-
~
#407098 2026-08-27 22:36 UTCModified
-
source_updated_at
2026-08-27T02:42:48-04:00->2026-08-27T14:43:32-04:00
-
source_updated_at
-
~
#416820 2026-08-28 10:36 UTCModified
-
source_updated_at
2026-08-27T14:43:32-04:00->2026-08-28T02:43:05-04:00
-
source_updated_at
-
~
#429410 2026-08-28 23:17 UTCModified
-
source_updated_at
2026-08-28T02:43:05-04:00->2026-08-28T14:43:04-04:00
-
source_updated_at
-
~
#442092 2026-08-29 19:06 UTCModified
-
source_updated_at
2026-08-28T14:43:04-04:00->2026-08-29T14:40:33-04:00
-
source_updated_at
-
~
#456648 2026-08-30 07:48 UTCModified
-
source_updated_at
2026-08-29T14:40:33-04:00->2026-08-30T02:42:00-04:00
-
source_updated_at
-
~
#469420 2026-08-30 21:41 UTCModified
-
source_updated_at
2026-08-30T02:42:00-04:00->2026-08-30T14:40:04-04:00
-
source_updated_at
-
~
#477668 2026-08-31 09:19 UTCModified
-
source_updated_at
2026-08-30T14:40:04-04:00->2026-08-31T02:41:16-04:00
-
source_updated_at
-
~
#487419 2026-08-31 21:23 UTCModified
-
source_updated_at
2026-08-31T02:41:16-04:00->2026-08-31T14:41:27-04:00
-
source_updated_at
-
~
#496889 2026-09-01 09:23 UTCModified
-
source_updated_at
2026-08-31T14:41:27-04:00->2026-09-01T02:40:06-04:00
-
source_updated_at
-
~
#509142 2026-09-01 21:24 UTCModified
-
source_updated_at
2026-09-01T02:40:06-04:00->2026-09-01T14:41:33-04:00
-
source_updated_at
-
~
#523877 2026-09-02 09:24 UTCModified
-
source_updated_at
2026-09-01T14:41:33-04:00->2026-09-02T02:41:06-04:00
-
source_updated_at
-
~
#535514 2026-09-02 21:25 UTCModified
-
source_updated_at
2026-09-02T02:41:06-04:00->2026-09-02T14:42:12-04:00
-
source_updated_at
-
~
#547192 2026-09-03 09:25 UTCModified
-
source_updated_at
2026-09-02T14:42:12-04:00->2026-09-03T02:40:33-04:00
-
source_updated_at
-
~
#556730 2026-09-03 21:26 UTCModified
-
source_updated_at
2026-09-03T02:40:33-04:00->2026-09-03T14:42:39-04:00
-
source_updated_at
-
~
#567700 2026-09-04 09:26 UTCModified
-
source_updated_at
2026-09-03T14:42:39-04:00->2026-09-04T02:41:04-04:00
-
source_updated_at
-
~
#578393 2026-09-04 21:31 UTCModified
-
source_updated_at
2026-09-04T02:41:04-04:00->2026-09-04T14:42:13-04:00
-
source_updated_at
-
~
#592765 2026-09-05 19:42 UTCModified
-
source_updated_at
2026-09-04T14:42:13-04:00->2026-09-05T14:40:54-04:00
-
source_updated_at
-
~
#599338 2026-09-06 07:43 UTCModified
-
source_updated_at
2026-09-05T14:40:54-04:00->2026-09-06T02:40:07-04:00
-
source_updated_at
-
~
#606945 2026-09-06 19:43 UTCModified
-
source_updated_at
2026-09-06T02:40:07-04:00->2026-09-06T14:41:08-04:00
-
source_updated_at
-
~
#613176 2026-09-07 07:46 UTCModified
-
source_updated_at
2026-09-06T14:41:08-04:00->2026-09-07T02:40:47-04:00
-
source_updated_at
-
~
#623023 2026-09-07 19:47 UTCModified
-
source_updated_at
2026-09-07T02:40:47-04:00->2026-09-07T14:40:10-04:00
-
source_updated_at
-
~
#631444 2026-09-08 07:47 UTCModified
-
source_updated_at
2026-09-07T14:40:10-04:00->2026-09-08T02:41:15-04:00
-
source_updated_at
-
~
#641863 2026-09-08 19:49 UTCModified
-
source_updated_at
2026-09-08T02:41:15-04:00->2026-09-08T14:42:32-04:00
-
source_updated_at
-
~
#651398 2026-09-09 07:49 UTCModified
-
source_updated_at
2026-09-08T14:42:32-04:00->2026-09-09T02:41:35-04:00
-
source_updated_at
-
~
#662920 2026-09-09 19:54 UTCModified
-
source_updated_at
2026-09-09T02:41:35-04:00->2026-09-09T14:42:41-04:00
-
source_updated_at
-
~
#672861 2026-09-10 07:54 UTCModified
-
source_updated_at
2026-09-09T14:42:41-04:00->2026-09-10T02:41:39-04:00
-
source_updated_at
-
~
#685627 2026-09-10 19:55 UTCModified
-
source_updated_at
2026-09-10T02:41:39-04:00->2026-09-10T14:41:55-04:00
-
source_updated_at
-
~
#694347 2026-09-11 07:56 UTCModified
-
source_updated_at
2026-09-10T14:41:55-04:00->2026-09-11T02:40:40-04:00
-
source_updated_at
-
~
#706677 2026-09-11 21:18 UTCModified
-
source_updated_at
2026-09-11T02:40:40-04:00->2026-09-11T14:42:10-04:00
-
source_updated_at
-
~
#720038 2026-09-12 21:19 UTCModified
-
source_updated_at
2026-09-11T14:42:10-04:00->2026-09-12T14:41:14-04:00
-
source_updated_at
-
~
#726888 2026-09-13 09:19 UTCModified
-
source_updated_at
2026-09-12T14:41:14-04:00->2026-09-13T02:40:56-04:00
-
source_updated_at
-
~
#733300 2026-09-13 21:19 UTCModified
-
source_updated_at
2026-09-13T02:40:56-04:00->2026-09-13T14:41:04-04:00
-
source_updated_at
-
~
#740230 2026-09-14 09:28 UTCModified
-
source_updated_at
2026-09-13T14:41:04-04:00->2026-09-14T02:41:10-04:00
-
source_updated_at
-
~
#753254 2026-09-14 21:29 UTCModified
-
source_updated_at
2026-09-14T02:41:10-04:00->2026-09-14T14:41:48-04:00
-
source_updated_at
-
~
#764799 2026-09-15 09:29 UTCModified
-
source_updated_at
2026-09-14T14:41:48-04:00->2026-09-15T02:41:34-04:00
-
source_updated_at
-
~
#777442 2026-09-15 21:30 UTCModified
-
source_updated_at
2026-09-15T02:41:34-04:00->2026-09-15T14:42:09-04:00
-
source_updated_at
-
~
#788178 2026-09-16 09:30 UTCModified
-
source_updated_at
2026-09-15T14:42:09-04:00->2026-09-16T02:41:37-04:00
-
source_updated_at
-
~
#800567 2026-09-16 21:31 UTCModified
-
source_updated_at
2026-09-16T02:41:37-04:00->2026-09-16T14:42:15-04:00
-
source_updated_at
-
~
#810806 2026-09-17 09:32 UTCModified
-
source_updated_at
2026-09-16T14:42:15-04:00->2026-09-17T02:42:26-04:00
-
source_updated_at
-
~
#820401 2026-09-17 21:32 UTCModified
-
source_updated_at
2026-09-17T02:42:26-04:00->2026-09-17T14:42:15-04:00
-
source_updated_at
-
~
#830746 2026-09-18 09:36 UTCModified
-
source_updated_at
2026-09-17T14:42:15-04:00->2026-09-18T02:41:37-04:00
-
source_updated_at
-
~
#846968 2026-09-18 21:37 UTCModified
-
source_updated_at
2026-09-18T02:41:37-04:00->2026-09-18T14:42:35-04:00
-
source_updated_at
-
~
#867243 2026-09-19 21:38 UTCModified
-
source_updated_at
2026-09-18T14:42:35-04:00->2026-09-19T14:41:01-04:00
-
source_updated_at
-
~
#874539 2026-09-20 09:39 UTCModified
-
source_updated_at
2026-09-19T14:41:01-04:00->2026-09-20T02:40:49-04:00
-
source_updated_at
-
~
#882259 2026-09-20 21:40 UTCModified
-
source_updated_at
2026-09-20T02:40:49-04:00->2026-09-20T14:40:36-04:00
-
source_updated_at
-
~
#889145 2026-09-21 09:49 UTCModified
-
source_updated_at
2026-09-20T14:40:36-04:00->2026-09-21T02:41:08-04:00
-
source_updated_at
-
~
#905659 2026-09-21 21:49 UTCModified
-
source_updated_at
2026-09-21T02:41:08-04:00->2026-09-21T14:42:01-04:00
-
source_updated_at
-
~
#918914 2026-09-22 09:53 UTCModified
-
source_updated_at
2026-09-21T14:42:01-04:00->2026-09-22T02:41:39-04:00
-
source_updated_at
-
~
#930445 2026-09-22 21:53 UTCModified
-
source_updated_at
2026-09-22T02:41:39-04:00->2026-09-22T14:43:25-04:00
-
source_updated_at
-
~
#941256 2026-09-23 09:54 UTCModified
-
source_updated_at
2026-09-22T14:43:25-04:00->2026-09-23T02:41:52-04:00
-
source_updated_at
-
~
#956806 2026-09-23 21:54 UTCModified
-
source_updated_at
2026-09-23T02:41:52-04:00->2026-09-23T14:42:49-04:00
-
source_updated_at
-
~
#967333 2026-09-24 09:59 UTCModified
-
source_updated_at
2026-09-23T14:42:49-04:00->2026-09-24T02:42:46-04:00
-
source_updated_at
-
~
#980352 2026-09-24 22:03 UTCModified
-
source_updated_at
2026-09-24T02:42:46-04:00->2026-09-24T14:42:30-04:00
-
source_updated_at
-
~
#994311 2026-09-25 10:08 UTCModified
-
source_updated_at
2026-09-24T14:42:30-04:00->2026-09-25T02:41:18-04:00
-
source_updated_at
-
~
#1007631 2026-09-25 22:13 UTCModified
-
source_updated_at
2026-09-25T02:41:18-04:00->2026-09-25T14:42:37-04:00
-
source_updated_at
-
~
#1023073 2026-09-26 22:19 UTCModified
-
source_updated_at
2026-09-25T14:42:37-04:00->2026-09-26T14:41:35-04:00
-
source_updated_at
-
~
#1029681 2026-09-27 10:19 UTCModified
-
source_updated_at
2026-09-26T14:41:35-04:00->2026-09-27T02:40:54-04:00
-
source_updated_at
-
~
#1036690 2026-09-27 22:19 UTCModified
-
source_updated_at
2026-09-27T02:40:54-04:00->2026-09-27T14:41:09-04:00
-
source_updated_at
-
~
#1043898 2026-09-28 10:25 UTCModified
-
source_updated_at
2026-09-27T14:41:09-04:00->2026-09-28T02:41:57-04:00
-
source_updated_at
-
~
#1054451 2026-09-28 22:26 UTCModified
-
source_updated_at
2026-09-28T02:41:57-04:00->2026-09-28T14:42:14-04:00
-
source_updated_at
-
~
#1063599 2026-09-29 10:34 UTCModified
-
source_updated_at
2026-09-28T14:42:14-04:00->2026-09-29T02:42:15-04:00
-
source_updated_at
-
~
#1077301 2026-09-29 22:36 UTCModified
-
source_updated_at
2026-09-29T02:42:15-04:00->2026-09-29T16:09:38-04:00
-
source_updated_at
-
~
#1301802 2026-10-12 17:07 UTCModified
-
source_updated_at
2026-09-29T16:09:38-04:00->2026-10-12T12:52:46-04:00
-
source_updated_at
-
~
#1307460 2026-10-12 21:07 UTCModified
-
source_updated_at
2026-10-12T12:52:46-04:00->2026-10-12T15:51:14-04:00
-
source_updated_at
-
o
#1310987 2026-10-13 01:07 UTCNot seenMiss 1 in a row
-
o
#1314151 2026-10-13 05:08 UTCNot seenMiss 2 in a row
-
o
#1316661 2026-10-13 09:08 UTCNot seenMiss 3 in a row
-
x
#1316662 2026-10-13 09:08 UTCClosed
-
^
#1515735 2026-10-24 01:57 UTCReopened
-
~
#1515736 2026-10-24 01:57 UTCModified
-
Description
Every day, tens of millions of people come to Roblox to explore, create, play, learn, and connect with friends in 3D immersive digital...->Every day, tens of millions of people come to Roblox to explore, create, play, learn, and connect with friends in 3D immersive digital... -
source_updated_at
2026-10-12T15:51:14-04:00->2026-10-23T19:21:32-04:00
-
Description
-
~
#1909931 2026-11-13 22:50 UTCModified
-
Title
Principal Model Optimization Engineer ->Principal Engineer - ML Platform -
source_updated_at
2026-10-23T19:21:32-04:00->2026-11-13T17:15:37-05:00
-
Title