{"id":735,"date":"2026-09-26T04:25:22","date_gmt":"2026-09-26T04:25:22","guid":{"rendered":"https:\/\/getaiwork.com\/articles\/?p=735"},"modified":"2026-09-30T04:59:42","modified_gmt":"2026-09-30T04:59:42","slug":"openai-careers","status":"publish","type":"post","link":"https:\/\/getaiwork.com\/articles\/openai-careers\/","title":{"rendered":"OpenAI Careers: Who Gets Hired and the Contractor Routes"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\"><strong>OpenAI careers, read from the company&#8217;s own Ashby job board on 26 September 2026, list 830 open roles. All but one are salaried staff jobs, 580 of them sit in San Francisco, and 24 are tagged remote. Not one is an AI trainer, annotator or rater post, and no internship or entry level title appears anywhere.<\/strong><\/p>\n\n\n\n<div class=\"msq-audio\" data-article=\"openai-careers\" data-minutes=\"14\">\n<style>.msq-audio{margin:1.25em 0 1.75em;padding:16px 18px;background:#F1F4FA;border:1px solid #DDE3EE;border-radius:12px}\n.msq-audio-lead{margin:0 0 8px;font-size:.95em}.msq-audio audio{width:100%;margin:0 0 12px;display:block}\n.msq-toc-title{margin:0 0 6px;font-weight:700}.msq-toc ol{margin:0;padding:0;list-style:none}\n.msq-toc li{display:flex;gap:10px;align-items:center;padding:6px 6px;border-bottom:1px solid #DDE3EE;border-radius:8px}\n.msq-toc li:last-child{border-bottom:0}.msq-toc li.is-active{background:#fff}\n.msq-toc-play{flex:0 0 auto;width:30px;height:30px;border-radius:50%;border:0;background:#1E3A8A;color:#fff;font:inherit;font-size:.72em;line-height:30px;padding:0;cursor:pointer}\n.msq-toc-play.is-playing{background:#B45309}\n.msq-toc-time{flex:0 0 auto;min-width:3.1em;font-variant-numeric:tabular-nums;color:#55555F;font-size:.9em}\n.msq-toc a{color:#1B1F24;text-decoration:none;line-height:1.35}.msq-toc li.is-active a{font-weight:700;color:#1E3A8A}\n.msq-audio-note{margin:10px 0 0;font-size:.82em;color:#55555F}\nh2.wp-block-heading[id]{scroll-margin-top:24px}\n.msq-hplay{display:inline-block;vertical-align:middle;width:26px;height:26px;margin:0 0 0 10px;border-radius:50%;border:0;background:#1E3A8A;cursor:pointer;padding:0;position:relative;top:-2px}\n.msq-hplay::before{content:'\u25b6\ufe0e';display:block;color:#fff;font-size:11px;line-height:26px;text-align:center}\n.msq-hplay.is-playing{background:#B45309}.msq-hplay.is-playing::before{content:'\u2016';font-size:13px;font-weight:700}\n.msq-bar{position:fixed;left:0;right:0;bottom:0;z-index:9000;display:flex;align-items:center;gap:10px;padding:8px 12px;padding-bottom:calc(8px + env(safe-area-inset-bottom));background:#FFFFFF;border-top:1px solid #DDE3EE;box-shadow:0 -4px 16px rgba(0,0,0,.08);font-size:.92em;color:#1B1F24;transition:transform .2s ease}\n.msq-bar.is-hidden{transform:translateY(130%)}\n.msq-bar-play{display:inline-flex;align-items:center;gap:8px;border:0;border-radius:999px;background:#1E3A8A;color:#fff;font:inherit;font-weight:700;padding:8px 14px 8px 12px;cursor:pointer;white-space:nowrap}\n.msq-bar-play.is-playing{background:#B45309}\n.msq-bar-icon::before{content:'\u25b6\ufe0e';font-size:12px}.msq-bar-play.is-playing .msq-bar-icon::before{content:'\u2016';font-size:14px;font-weight:700}\n.msq-bar-chapter{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\n.msq-bar-time{flex:0 0 auto;font-variant-numeric:tabular-nums;color:#55555F;font-size:.9em}\n.msq-bar-rate,.msq-bar-close{flex:0 0 auto;border:1px solid #DDE3EE;background:#fff;color:#1B1F24;font:inherit;font-size:.85em;line-height:1;border-radius:8px;padding:7px 9px;cursor:pointer}\n.msq-bar-close::before{content:'\u2715'}\n.msq-bar.msq-bar-pill{left:auto;right:14px;bottom:14px;padding:6px;padding-bottom:6px;border:1px solid #DDE3EE;border-radius:999px;box-shadow:0 6px 20px rgba(0,0,0,.15)}\n.msq-bar.msq-bar-pill .msq-bar-chapter,.msq-bar.msq-bar-pill .msq-bar-time,.msq-bar.msq-bar-pill .msq-bar-rate{display:none}\nbody.msq-has-bar{padding-bottom:76px}\n@media (max-width:600px){.msq-bar-time{display:none}.msq-bar{gap:8px;padding-left:10px;padding-right:10px}}\n.msq-s.msq-now{background:#F1F4FA;box-shadow:0 2px 0 #1E3A8A;border-radius:2px}\ntr.msq-now td,tr.msq-now th{background:#F1F4FA;box-shadow:inset 0 -2px 0 #1E3A8A}\n@media (hover:hover){.msq-s,tr[data-i]{cursor:pointer}.msq-s:hover{background:#F1F4FA}}<\/style>\n<script type=\"application\/ld+json\">{\"@context\":\"https:\/\/schema.org\",\"@type\":\"AudioObject\",\"@id\":\"https:\/\/getaiwork.com\/articles\/openai-careers\/#audio\",\"name\":\"OpenAI Careers: Who Gets Hired and the Contractor Routes, read aloud\",\"description\":\"Synthetic voice reading of the article, recorded 26 September 2026.\",\"contentUrl\":\"https:\/\/getaiwork.com\/articles\/wp-content\/uploads\/2026\/09\/openai-careers-audio-202609261005.mp3\",\"encodingFormat\":\"audio\/mpeg\",\"duration\":\"PT13M54S\",\"uploadDate\":\"2026-09-26\",\"inLanguage\":\"en-US\",\"isAccessibleForFree\":true,\"mainEntityOfPage\":\"https:\/\/getaiwork.com\/articles\/openai-careers\/\",\"hasPart\":[{\"@type\":\"Clip\",\"name\":\"OpenAI Careers: Who Gets Hired and the Contractor Routes\",\"startOffset\":0,\"endOffset\":47},{\"@type\":\"Clip\",\"name\":\"What does OpenAI's own job board list today?\",\"startOffset\":47,\"endOffset\":149,\"url\":\"https:\/\/getaiwork.com\/articles\/openai-careers\/#what-does-openai-s-own-job-board-list-today\"},{\"@type\":\"Clip\",\"name\":\"Does OpenAI hire remote, and what is the office rule?\",\"startOffset\":149,\"endOffset\":223,\"url\":\"https:\/\/getaiwork.com\/articles\/openai-careers\/#does-openai-hire-remote-and-what-is-the-office-rule\"},{\"@type\":\"Clip\",\"name\":\"What does OpenAI pay, as listed on its own postings?\",\"startOffset\":223,\"endOffset\":352,\"url\":\"https:\/\/getaiwork.com\/articles\/openai-careers\/#what-does-openai-pay-as-listed-on-its-own-postings\"},{\"@type\":\"Clip\",\"name\":\"Is there an entry level or AI trainer route at OpenAI?\",\"startOffset\":352,\"endOffset\":445,\"url\":\"https:\/\/getaiwork.com\/articles\/openai-careers\/#is-there-an-entry-level-or-ai-trainer-route-at-openai\"},{\"@type\":\"Clip\",\"name\":\"What do people who looked closely at OpenAI hiring report?\",\"startOffset\":445,\"endOffset\":570,\"url\":\"https:\/\/getaiwork.com\/articles\/openai-careers\/#what-do-people-who-looked-closely-at-openai-hiring-report\"},{\"@type\":\"Clip\",\"name\":\"Which AI work routes are actually open to a beginner?\",\"startOffset\":570,\"endOffset\":771,\"url\":\"https:\/\/getaiwork.com\/articles\/openai-careers\/#which-ai-work-routes-are-actually-open-to-a-beginner\"},{\"@type\":\"Clip\",\"name\":\"How do you tell a real OpenAI recruiter from a fake one?\",\"startOffset\":771,\"endOffset\":834,\"url\":\"https:\/\/getaiwork.com\/articles\/openai-careers\/#how-do-you-tell-a-real-openai-recruiter-from-a-fake-one\"}],\"contentSize\":\"5.8 MB\"}<\/script>\n<p class=\"msq-audio-lead\"><strong>Listen to this article<\/strong>, about 14 minutes. A synthetic voice reads the article and announces each section title as it begins; tables are read row by row and the questions at the end are left out.<\/p>\n<audio class=\"msq-audio-player\" controls preload=\"metadata\" src=\"https:\/\/getaiwork.com\/articles\/wp-content\/uploads\/2026\/09\/openai-careers-audio-202609261005.mp3\"><\/audio>\n<nav class=\"msq-toc\" aria-label=\"In this article\"><p class=\"msq-toc-title\">In this article<\/p>\n<ol>\n<li data-start=\"0.0\"><button type=\"button\" class=\"msq-toc-play\" data-start=\"0.0\" aria-label=\"Play from: OpenAI Careers: Who Gets Hired and the Contractor Routes\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">0:00<\/span><a href=\"#top\">OpenAI Careers: Who Gets Hired and the Contractor Routes<\/a><\/li>\n<li data-start=\"47.46\"><button type=\"button\" class=\"msq-toc-play\" data-start=\"47.46\" aria-label=\"Play from: What does OpenAI&#x27;s own job board list today?\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">0:47<\/span><a href=\"#what-does-openai-s-own-job-board-list-today\">What does OpenAI&#x27;s own job board list today?<\/a><\/li>\n<li data-start=\"149.24\"><button type=\"button\" class=\"msq-toc-play\" data-start=\"149.24\" aria-label=\"Play from: Does OpenAI hire remote, and what is the office rule?\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">2:29<\/span><a href=\"#does-openai-hire-remote-and-what-is-the-office-rule\">Does OpenAI hire remote, and what is the office rule?<\/a><\/li>\n<li data-start=\"223.46\"><button type=\"button\" class=\"msq-toc-play\" data-start=\"223.46\" aria-label=\"Play from: What does OpenAI pay, as listed on its own postings?\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">3:43<\/span><a href=\"#what-does-openai-pay-as-listed-on-its-own-postings\">What does OpenAI pay, as listed on its own postings?<\/a><\/li>\n<li data-start=\"352.16\"><button type=\"button\" class=\"msq-toc-play\" data-start=\"352.16\" aria-label=\"Play from: Is there an entry level or AI trainer route at OpenAI?\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">5:52<\/span><a href=\"#is-there-an-entry-level-or-ai-trainer-route-at-openai\">Is there an entry level or AI trainer route at OpenAI?<\/a><\/li>\n<li data-start=\"445.02\"><button type=\"button\" class=\"msq-toc-play\" data-start=\"445.02\" aria-label=\"Play from: What do people who looked closely at OpenAI hiring report?\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">7:25<\/span><a href=\"#what-do-people-who-looked-closely-at-openai-hiring-report\">What do people who looked closely at OpenAI hiring report?<\/a><\/li>\n<li data-start=\"570.04\"><button type=\"button\" class=\"msq-toc-play\" data-start=\"570.04\" aria-label=\"Play from: Which AI work routes are actually open to a beginner?\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">9:30<\/span><a href=\"#which-ai-work-routes-are-actually-open-to-a-beginner\">Which AI work routes are actually open to a beginner?<\/a><\/li>\n<li data-start=\"771.18\"><button type=\"button\" class=\"msq-toc-play\" data-start=\"771.18\" aria-label=\"Play from: How do you tell a real OpenAI recruiter from a fake one?\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">12:51<\/span><a href=\"#how-do-you-tell-a-real-openai-recruiter-from-a-fake-one\">How do you tell a real OpenAI recruiter from a fake one?<\/a><\/li>\n<\/ol><\/nav>\n<p class=\"msq-audio-note\">Recorded 26 September 2026 from the article as published that day. Press a chapter to jump there; the highlighted line is what is playing. A play button sits beside every section heading, and once you scroll past this player a bar at the bottom of the screen keeps the controls in reach. Tap or click any sentence to hear the reading start from there.<\/p>\n<script>var MSQ_SENT = [[0.0,\"h\",\"openaicareerswhogetshire\",47],[4.68,\"p\",\"openaicareersreadfromthe\",81],[14.36,\"p\",\"allbutonearesalariedstaf\",75],[21.76,\"p\",\"notoneisanaitrainerannot\",86],[29.0,\"p\",\"onthispageeveryoneofthe8\",182],[47.46,\"h\",\"whatdoesopenaisownjobboa\",35],[49.86,\"p\",\"openairunsitshiringthrou\",97],[57.22,\"p\",\"on26september2026theopen\",88],[68.46,\"p\",\"exactlyoneisacontractrol\",138],[79.9,\"p\",\"thedepartmentsplitiswher\",61],[83.86,\"p\",\"gotomarketthesalesorgani\",48],[89.54,\"p\",\"scalingwhichbuildsandrun\",63],[97.06,\"p\",\"researchhas66abouteightp\",98],[105.78,\"p\",\"useroperationshas57marke\",92],[115.7,\"p\",\"geographyisnarrowerstill\",24],[117.78,\"p\",\"580ofthe830postingsseven\",108],[128.9,\"p\",\"thesameshapeshowsonanthr\",60],[133.02,\"p\",\"freshnesscutsbothways84p\",150],[149.24,\"h\",\"doesopenaihireremoteandw\",42],[152.52,\"p\",\"mostlyitdoesnotandtheboa\",45],[156.0,\"p\",\"ofthe830postings514areta\",80],[166.64,\"p\",\"289postingscontainthesam\",191],[180.84,\"p\",\"searchthelocationfieldin\",73],[187.96,\"p\",\"thesearenotageneralremot\",145],[202.4,\"p\",\"theremotedooratopenaiisr\",90],[210.36,\"p\",\"indiagetstenpostingsfour\",79],[218.44,\"p\",\"alltenarecommercialorsol\",50],[223.46,\"h\",\"whatdoesopenaipayasliste\",41],[227.34,\"p\",\"664ofthe830postingsstate\",74],[234.66,\"p\",\"ofthe659quotedinusdollar\",81],[245.18,\"p\",\"onlyninefallbelow150000a\",132],[259.26,\"p\",\"thetopis510000to536000fo\",56],[266.78,\"p\",\"everyfigurehereisasliste\",81],[276.3,\"t\",\"gotomarketsales\",57],[286.42,\"t\",\"scalingdatacentresandsup\",69],[295.7,\"t\",\"appliedai\",51],[303.7,\"t\",\"research\",49],[311.54,\"t\",\"useroperations\",55],[318.86,\"t\",\"marketing\",50],[327.06,\"t\",\"security\",49],[334.54,\"t\",\"finance\",48],[342.42,\"t\",\"allotherteamsaboutthirty\",71],[352.16,\"h\",\"isthereanentrylevelorait\",43],[356.68,\"p\",\"noandthisisthemostuseful\",73],[361.76,\"p\",\"searchingall830titlesret\",94],[371.0,\"p\",\"threerolescarryhumandata\",212],[396.68,\"p\",\"allthreeareinsanfrancisc\",87],[402.32,\"p\",\"thereisnointernapprentic\",75],[407.36,\"p\",\"thegateisexperiencerathe\",173],[421.92,\"p\",\"whichmeansthecertificate\",46],[424.4,\"p\",\"openaiisbarelyaskingwhat\",166],[435.4,\"p\",\"toseewhichopeningsmatchw\",138],[445.02,\"h\",\"whatdopeoplewholookedclo\",48],[448.3,\"p\",\"ireadfourpublicaccountsf\",86],[454.14,\"p\",\"theyaretestimonyratherth\",70],[458.66,\"p\",\"themostdetailedcomesfrom\",179],[475.34,\"p\",\"43percentwerequotacarryi\",170],[487.98,\"p\",\"theypublishedthemethodan\",118],[495.34,\"p\",\"thatcountagreeswiththebo\",60],[500.3,\"p\",\"acommenterpostingasaboun\",210],[514.9,\"p\",\"asmalldetailanditdescrib\",64],[519.86,\"p\",\"theothertwoaccountsareab\",59],[523.26,\"p\",\"on16june2026acommenterpo\",156],[536.94,\"p\",\"on21november2024someoneo\",150],[550.22,\"p\",\"wheretheaccountsandthebo\",77],[555.02,\"p\",\"wheretheypartcompanymatt\",126],[563.22,\"p\",\"threeofthefouraccountswe\",85],[570.04,\"h\",\"whichaiworkroutesareactu\",43],[573.64,\"p\",\"threeroutesgetdiscusseda\",48],[577.12,\"p\",\"comparedonthesamedaythey\",35],[579.96,\"t\",\"openaistaffrolesownboard\",179],[603.68,\"t\",\"aitrainingplatformlistin\",248],[635.32,\"t\",\"stafftrainerrolesatavend\",147],[651.88,\"p\",\"themiddlerowistheboardir\",26],[654.24,\"p\",\"on25september2026itheld1\",130],[670.12,\"p\",\"acrossthe1008listingstha\",132],[683.12,\"p\",\"thoseratesmoveandnoneisa\",56],[686.28,\"p\",\"theboardisfreeandpublica\",88],[693.6,\"p\",\"thesalariedversionoftrai\",55],[697.52,\"p\",\"handshakesownjobboardcar\",180],[711.76,\"p\",\"allfourarefulltimeallfou\",99],[723.24,\"p\",\"ourhandshakeaireviewcove\",137],[731.68,\"p\",\"whetheranyoftheseplatfor\",80],[736.68,\"p\",\"scalesownblogdated24augu\",298],[760.28,\"p\",\"sotreatanyadvertclaiming\",124],[771.18,\"h\",\"howdoyoutellarealopenair\",44],[774.02,\"p\",\"onechecksettlesmostofit\",23],[775.78,\"p\",\"iftheexactroleisnotonope\",101],[786.02,\"p\",\"thescaleoftheproblemisdo\",51],[789.42,\"p\",\"theusfederaltradecommiss\",206],[808.06,\"p\",\"thepatternaroundthiscomp\",119],[816.9,\"p\",\"thechecklistbelowiswhati\",84],[824.38,\"p\",\"ifyouwouldratherstartfro\",121]];\n(function(){\n  function init(){\n  var root = document.querySelector('.msq-audio'); if (!root) { return; }\n  var audio = root.querySelector('audio'), items = Array.prototype.slice.call(root.querySelectorAll('.msq-toc li'));\n  var starts = items.map(function(li){ return parseFloat(li.getAttribute('data-start')) || 0; });\n  var names = items.map(function(li){ return li.querySelector('a').textContent; });\n  var anchors = items.map(function(li){ var h = li.querySelector('a').getAttribute('href') || ''; return (h.charAt(0) === '#' && h !== '#top') ? document.getElementById(h.slice(1)) : null; });\n  var article = root.getAttribute('data-article') || location.pathname, minutes = root.getAttribute('data-minutes') || '';\n  var marks = {}, started = false, pausedAt = -1, closed = false, ended = false;\n  var RATES = [1, 1.25, 1.5], rate = 1;\n  try { var saved = parseFloat(localStorage.getItem('msq-audio-rate')); if (RATES.indexOf(saved) >= 0) { rate = saved; } } catch (e) {}\n  audio.playbackRate = rate;\n  function track(name, extra){ try { if (typeof gtag === 'function') { var p = { article: article }; for (var k in extra) { p[k] = extra[k]; } gtag('event', name, p); } } catch (e) {} }\n  function current(){ var t = audio.currentTime, idx = 0; for (var i = 0; starts.length > i; i += 1) { if (t + 0.25 >= starts[i]) { idx = i; } } return idx; }\n  function onScreen(){\n    var line = window.innerHeight \/ 3, idx = 0;\n    for (var i = 0; anchors.length > i; i += 1) { var el = anchors[i]; if (el && line >= el.getBoundingClientRect().top) { idx = i; } }\n    return idx;\n  }\n  function fmt(s){ s = Math.max(0, Math.round(s || 0)); var m = Math.floor(s \/ 60), r = s % 60; return m + ':' + (10 > r ? '0' : '') + r; }\n  function play(from, source){\n    if (from !== null) { audio.currentTime = from; }\n    var p = audio.play(); if (p && p.catch) { p.catch(function(){}); }\n    track(from === null ? 'audio_resume' : 'audio_chapter', { chapter: names[current()], start: Math.round(audio.currentTime), source: source });\n  }\n  var hbtns = anchors.map(function(el, i){\n    if (!el) { return null; }\n    var b = document.createElement('button'); b.type = 'button'; b.className = 'msq-hplay'; b.setAttribute('aria-label', 'Play this section: ' + names[i]);\n    b.addEventListener('click', function(){\n      if (!audio.paused && current() === i) { audio.pause(); track('audio_pause', { source: 'heading' }); return; }\n      play(starts[i], 'heading');\n    });\n    el.appendChild(b); return b;\n  });\n  var bar = document.createElement('div'); bar.className = 'msq-bar msq-bar-pill is-hidden'; bar.setAttribute('role', 'region'); bar.setAttribute('aria-label', 'Audio player');\n  var playBtn = document.createElement('button'); playBtn.type = 'button'; playBtn.className = 'msq-bar-play';\n  var icon = document.createElement('span'); icon.className = 'msq-bar-icon'; icon.setAttribute('aria-hidden', 'true');\n  var label = document.createElement('span'); label.className = 'msq-bar-label';\n  playBtn.appendChild(icon); playBtn.appendChild(label);\n  var chap = document.createElement('span'); chap.className = 'msq-bar-chapter';\n  var clock = document.createElement('span'); clock.className = 'msq-bar-time';\n  var rateBtn = document.createElement('button'); rateBtn.type = 'button'; rateBtn.className = 'msq-bar-rate'; rateBtn.setAttribute('aria-label', 'Playback speed');\n  var closeBtn = document.createElement('button'); closeBtn.type = 'button'; closeBtn.className = 'msq-bar-close'; closeBtn.setAttribute('aria-label', 'Close the audio bar');\n  bar.appendChild(playBtn); bar.appendChild(chap); bar.appendChild(clock); bar.appendChild(rateBtn); bar.appendChild(closeBtn);\n  document.body.appendChild(bar);\n  function showRate(){ rateBtn.textContent = (rate === 1 ? '1' : String(rate)) + 'x'; }\n  showRate();\n  rateBtn.addEventListener('click', function(){\n    rate = RATES[(RATES.indexOf(rate) + 1) % RATES.length]; audio.playbackRate = rate; showRate();\n    try { localStorage.setItem('msq-audio-rate', String(rate)); } catch (e) {}\n    track('audio_rate', { rate: rate });\n  });\n  closeBtn.addEventListener('click', function(){\n    closed = true; if (!audio.paused) { audio.pause(); } paint(); track('audio_bar_close', {});\n  });\n  function mode(){\n    if (!audio.paused) { return 'pause'; }\n    if (ended) { return 'again'; }\n    if (!started) { return 'listen'; }\n    return (pausedAt === onScreen()) ? 'resume' : 'section';\n  }\n  playBtn.addEventListener('click', function(){\n    var m = mode();\n    if (m === 'pause') { audio.pause(); track('audio_pause', { source: 'bar' }); return; }\n    if (m === 'again') { ended = false; play(0, 'bar'); return; }\n    if (m === 'resume') { play(null, 'bar'); return; }\n    play(starts[onScreen()], 'bar');\n  });\n  function paint(){\n    var idx = current(), playing = !audio.paused, m = mode();\n    items.forEach(function(li, i){\n      var on = (i === idx) && playing, b = li.querySelector('.msq-toc-play'), a = li.querySelector('a');\n      li.classList.toggle('is-active', on); b.classList.toggle('is-playing', on);\n      b.textContent = on ? '\u2016' : '\u25b6\ufe0e';\n      b.setAttribute('aria-label', (on ? 'Pause: ' : 'Play from: ') + a.textContent);\n    });\n    hbtns.forEach(function(b, i){ if (b) { var on = (i === idx) && playing; b.classList.toggle('is-playing', on); b.setAttribute('aria-label', (on ? 'Pause this section: ' : 'Play this section: ') + names[i]); } });\n    playBtn.classList.toggle('is-playing', playing);\n    label.textContent = m === 'pause' ? 'Pause' : m === 'again' ? 'Play again' : m === 'resume' ? 'Resume' : m === 'section' ? 'Play this section' : 'Listen, ' + minutes + ' min';\n    playBtn.setAttribute('aria-label', label.textContent);\n    chap.textContent = started ? names[(playing || m === 'resume') ? idx : onScreen()] : '';\n    clock.textContent = started ? fmt(audio.currentTime) + ' \/ ' + fmt(audio.duration) : '';\n    bar.classList.toggle('msq-bar-pill', !started);\n    var show = !closed && (started || 0 > root.getBoundingClientRect().bottom);\n    bar.classList.toggle('is-hidden', !show);\n    document.body.classList.toggle('msq-has-bar', show);\n  }\n  root.addEventListener('click', function(e){\n    var b = e.target.closest ? e.target.closest('.msq-toc-play') : null; if (!b) { return; }\n    var li = b.parentNode, s = parseFloat(b.getAttribute('data-start')) || 0;\n    if (!audio.paused && current() === items.indexOf(li)) { audio.pause(); track('audio_pause', { source: 'index' }); return; }\n    play(s, 'index');\n  });\n  audio.addEventListener('play', function(){ ended = false; closed = false; if (!started) { started = true; track('audio_play', { minutes: Math.round((audio.duration || 0) \/ 60) }); } paint(); });\n  audio.addEventListener('pause', function(){ pausedAt = current(); paint(); });\n  audio.addEventListener('timeupdate', function(){\n    paint();\n    if (audio.duration > 0) {\n      var pct = Math.floor(audio.currentTime \/ audio.duration * 100);\n      [25, 50, 75].forEach(function(m){ if (pct >= m && !marks[m]) { marks[m] = true; track('audio_progress', { percent: m }); } });\n    }\n  });\n  audio.addEventListener('ended', function(){ ended = true; track('audio_complete', {}); paint(); });\n  var ticking = false;\n  function onScroll(){ if (ticking) { return; } ticking = true; setTimeout(function(){ ticking = false; paint(); }, 80); }\n  window.addEventListener('scroll', onScroll, { passive: true }); window.addEventListener('resize', onScroll);\n  paint();\n  }\n  if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', init); } else { init(); }\n})();\n\n(function(){\n  function start(){\n    var root = document.querySelector('.msq-audio'), audio = root ? root.querySelector('audio') : null;\n    var map = (typeof MSQ_SENT !== 'undefined') ? MSQ_SENT : [];\n    if (!root || !audio || !map.length) { return; }\n    var scope = root.closest('main') || root.closest('article') || root.closest('.entry-content') || document.body;\n    var SKIP = '.msq-audio,.msq,.msq-tool,.msq-end,.msq-bar,script,style,noscript,figcaption,#rank-math-faq,.rank-math-block,nav,header,footer';\n    function norm(s){ return s.toLowerCase().replace(\/[^a-z0-9]+\/g, ''); }\n    var nodes = [], stream = '', walker = document.createTreeWalker(scope, NodeFilter.SHOW_TEXT, null), n;\n    while ((n = walker.nextNode())) {\n      var el = n.parentElement; if (!el || el.closest(SKIP)) { continue; }\n      var raw = n.nodeValue, keep = [], norms = '';\n      for (var i = 0; raw.length > i; i += 1) { var c = raw.charAt(i).toLowerCase(); if (\/[a-z0-9]\/.test(c)) { keep.push(i); norms += c; } }\n      if (!norms) { continue; }\n      nodes.push({ node: n, a: stream.length, b: stream.length + norms.length, keep: keep });\n      stream += norms;\n    }\n    var segs = [], cursor = 0, lastRow = null;\n    map.forEach(function(m, idx){\n      var kind = m[1], f = m[2], len = m[3];\n      if (kind === 't') {\n        var rows = scope.querySelectorAll('tr'), after = !lastRow;\n        for (var r = 0; rows.length > r; r += 1) {\n          var tr = rows[r];\n          if (!after) { if (tr === lastRow) { after = true; } continue; }\n          var cell = tr.querySelector('td,th');\n          if (cell && norm(cell.textContent).indexOf(f) === 0) { tr.setAttribute('data-i', idx); lastRow = tr; break; }\n        }\n        return;\n      }\n      var p = stream.indexOf(f, cursor); if (0 > p) { return; }\n      segs.push({ i: idx, a: p, b: Math.min(p + len, stream.length) }); cursor = p + len;\n    });\n    var si = 0;\n    nodes.forEach(function(nd){\n      var frag = document.createDocumentFragment(), raw = nd.node.nodeValue, rawPos = 0, any = false;\n      for (var k = si; segs.length > k; k += 1) {\n        var sg = segs[k]; if (sg.a >= nd.b) { break; } if (nd.a >= sg.b) { continue; }\n        var s = Math.max(sg.a, nd.a), e = Math.min(sg.b, nd.b);\n        var rs = nd.keep[s - nd.a], re2 = nd.keep[e - nd.a - 1] + 1;\n        if (rs > rawPos) { frag.appendChild(document.createTextNode(raw.slice(rawPos, rs))); }\n        var span = document.createElement('span'); span.className = 'msq-s'; span.setAttribute('data-i', sg.i); span.textContent = raw.slice(rs, re2);\n        frag.appendChild(span); rawPos = re2; any = true;\n        if (sg.b > nd.b) { break; }\n      }\n      while (segs.length > si && nd.b >= segs[si].b) { si += 1; }\n      if (!any) { return; }\n      if (raw.length > rawPos) { frag.appendChild(document.createTextNode(raw.slice(rawPos))); }\n      nd.node.parentNode.replaceChild(frag, nd.node);\n    });\n    var starts = map.map(function(m){ return m[0]; }), curIdx = -1, lastUser = 0, timer = null, autoUntil = 0, dragging = false;\n    function idxAt(t){ var lo = 0, hi = starts.length; while (hi > lo + 1) { var mid = (lo + hi) >> 1; if (t + 0.15 >= starts[mid]) { lo = mid; } else { hi = mid; } } return (t + 0.15 >= starts[0]) ? lo : -1; }\n    function setNow(i){\n      if (i === curIdx) { return; }\n      Array.prototype.forEach.call(scope.querySelectorAll('.msq-now'), function(el){ el.classList.remove('msq-now'); });\n      curIdx = i; if (0 > i) { return; }\n      var els = scope.querySelectorAll('[data-i=\"' + i + '\"]'); if (!els.length) { return; }\n      Array.prototype.forEach.call(els, function(el){ el.classList.add('msq-now'); });\n      var r = els[0].getBoundingClientRect(), now = Date.now();\n      if (!dragging && now > lastUser + 2500 && (80 > r.top || r.bottom > window.innerHeight - 140)) {\n        var reduce = window.matchMedia && window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n        autoUntil = now + (reduce ? 400 : 1600);\n        els[0].scrollIntoView({ block: 'center', behavior: reduce ? 'auto' : 'smooth' });\n      }\n    }\n    function tick(){ if (!audio.paused) { setNow(idxAt(audio.currentTime)); } }\n    function userScrolled(){ lastUser = Date.now(); }\n    ['wheel', 'touchmove', 'keydown'].forEach(function(ev){ window.addEventListener(ev, userScrolled, { passive: true }); });\n    window.addEventListener('scroll', function(){ if (Date.now() > autoUntil) { userScrolled(); } }, { passive: true });\n    window.addEventListener('mousedown', function(e){ if (e.clientX >= document.documentElement.clientWidth) { dragging = true; userScrolled(); } }, { passive: true });\n    window.addEventListener('mouseup', function(){ if (dragging) { dragging = false; userScrolled(); } }, { passive: true });\n    audio.addEventListener('play', function(){ if (timer) { clearInterval(timer); } timer = setInterval(tick, 150); tick(); });\n    audio.addEventListener('pause', function(){ if (timer) { clearInterval(timer); timer = null; } });\n    scope.addEventListener('click', function(e){\n      if (e.target.closest('a, button, input, select, textarea, label, summary, .msq, .msq-tool, .msq-end, .msq-audio, .msq-bar')) { return; }\n      var sel = window.getSelection ? String(window.getSelection()) : '';\n      if (sel && sel.trim()) { return; }\n      var el = e.target.closest('[data-i]'); if (!el) { return; }\n      var i = parseInt(el.getAttribute('data-i'), 10); if (isNaN(i)) { return; }\n      if (!audio.paused && i === curIdx) { return; }\n      lastUser = Date.now();\n      audio.currentTime = starts[i];\n      var p = audio.play(); if (p && p.catch) { p.catch(function(){}); }\n      try { if (typeof gtag === 'function') { gtag('event', 'audio_chapter', { article: location.pathname, source: 'sentence', start: Math.round(starts[i]) }); } } catch (err) {}\n    });\n    audio.addEventListener('seeked', tick);\n    audio.addEventListener('ended', function(){ setNow(-1); });\n  }\n  if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', start); } else { start(); }\n})();<\/script>\n<\/div>\n\n\n\n<p class=\"msq-hook wp-block-paragraph\">On this page: every one of the 830 roles on OpenAI&#8217;s own board counted on 26 September 2026, the pay bands 664 of them state, the four public accounts I read about its hiring, and the six checks to run before you answer a recruiter.<\/p>\n\n\n\n<div class=\"msq\" id=\"ms-quiz\" data-slug=\"openai-careers\" data-category=\"AI jobs\" data-list=\"1\">\n<style>.msq,.msq-hook,.msq-box,.msq-end,.msq-tool{--msq-accent:#1E3A8A;--msq-accent-text:#FFFFFF;--msq-line:#DDE3EE;--msq-warn:#B45309;--msq-muted:#55555F;--msq-tint:#F1F4FA;--msq-base:#FFFFFF}\n.msq{margin:1.25em 0 1.75em}\n.msq-hook{border-left:3px solid var(--msq-accent);padding:6px 14px;color:var(--msq-muted);font-size:.97em}\n.msq-box{background:var(--msq-tint);border:1px solid var(--msq-line);border-radius:12px;padding:0}\n.msq-box>summary{cursor:pointer;list-style:none;padding:14px 18px;font-weight:700;color:var(--msq-accent)}\n.msq-box>summary::-webkit-details-marker{display:none}\n.msq-box>summary::before{content:\"+\";display:inline-block;width:1.1em;font-weight:800}\n.msq-box[open]>summary::before{content:\"\\00d7\"}\n.msq-body{padding:2px 18px 18px}\n.msq-intro{margin:0 0 12px;font-size:.95em;color:var(--msq-muted)}\n.msq-list{margin:0;padding:0;list-style:none}\n.msq-q{margin:0 0 18px;padding:0}\n.msq-question{font-weight:700;margin:0 0 8px}\n.msq-options{display:flex;flex-direction:column;gap:8px}\n.msq-opt{text-align:left;background:var(--msq-base);border:1px solid var(--msq-line);border-radius:8px;padding:10px 12px;font:inherit;font-size:.95em;color:inherit;cursor:pointer;line-height:1.35}\n.msq-opt:hover{border-color:var(--msq-accent)}\n.msq-opt[disabled]{cursor:default}\n.msq-opt.is-right{border-color:var(--msq-accent);background:var(--msq-line);font-weight:700}\n.msq-opt.is-wrong{border-color:var(--msq-warn);color:var(--msq-warn)}\n.msq-explain{margin:8px 0 0;font-size:.92em;padding:10px 12px;border-left:3px solid var(--msq-accent);background:var(--msq-base);border-radius:0 8px 8px 0}\n.msq-explain[hidden]{display:none}\n.msq-verdict{font-weight:700}\n.msq-result{margin-top:14px;padding:14px 16px;background:var(--msq-base);border:1px solid var(--msq-line);border-radius:10px}\n.msq-result[hidden]{display:none}\n.msq-result h3{margin:0 0 6px;font-size:1.1em}\n.msq-result p{margin:0 0 8px}\n.msq-jump{margin:0 0 8px;padding-left:1.2em}\n.msq-form{margin-top:10px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}\n.msq-form input[type=email]{flex:1 1 220px;padding:10px 12px;border:1px solid var(--msq-muted);border-radius:8px;font:inherit;background:#fff}\n.msq-btn{background:var(--msq-accent);color:var(--msq-accent-text);border:0;border-radius:8px;padding:11px 18px;font:inherit;font-weight:700;cursor:pointer}\n.msq-btn:hover{filter:brightness(.92)}\n.msq-btn[disabled]{opacity:.7;cursor:default}\n.msq-no{font-size:.9em;color:var(--msq-muted);margin-left:4px}\n.msq-privacy{margin:6px 0 0;font-size:.82em;color:var(--msq-muted);flex-basis:100%}\n.msq-hp{position:absolute;left:-5000px;width:1px;height:1px;overflow:hidden}\n.msq-msg{margin:8px 0 0;font-size:.92em}\n.msq-end{margin:1.5em 0;padding:18px;border:1px solid var(--msq-accent);border-radius:12px;text-align:center;background:var(--msq-tint)}\n.msq-end p{margin:0 0 12px}\n.msq-end .msq-body{text-align:left;padding:16px 0 0}\n.msq-end .msq-start-test[hidden]{display:none}\n.msq-tool{margin:1.5em 0;padding:18px 20px;background:var(--msq-tint);border:1px solid var(--msq-line);border-radius:12px}\n.msq-tool h3{margin:0 0 6px;font-size:1.15em}\n.msq-tool p{margin:0 0 10px}\n.msq-tool .msq-note{font-size:.85em;color:var(--msq-muted);margin:10px 0 0}\n.msq-check label{display:flex;gap:10px;align-items:flex-start;padding:9px 0;border-bottom:1px solid var(--msq-line);cursor:pointer;line-height:1.4}\n.msq-check label:last-of-type{border-bottom:0}\n.msq-check input{margin-top:5px;flex:0 0 auto;width:18px;height:18px;accent-color:var(--msq-accent)}\n.msq-check-count{font-weight:700;margin:10px 0 0}\n.msq-verdict-box{margin:12px 0 0;padding:10px 14px;border-radius:8px;background:var(--msq-base);border-left:3px solid var(--msq-warn)}\n.msq-verdict-box[hidden]{display:none}\n.msq-calc{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px}\n.msq-calc label{display:flex;flex-direction:column;gap:4px;font-size:.92em}\n.msq-calc input,.msq-calc select{padding:8px 10px;border:1px solid var(--msq-muted);border-radius:8px;font:inherit;background:#fff}\n.msq-calc-out{grid-column:1 \/ -1;margin-top:6px;padding:12px 14px;background:var(--msq-base);border-radius:8px;border:1px solid var(--msq-line)}\n.msq-calc-out strong{font-size:1.15em}\n.msq-choose label{display:block;padding:9px 12px;margin:0 0 8px;background:var(--msq-base);border:1px solid var(--msq-line);border-radius:8px;cursor:pointer}\n.msq-choose input{margin-right:8px;accent-color:var(--msq-accent)}\n.msq-choice-result{margin-top:10px;padding:12px 14px;background:var(--msq-base);border-left:3px solid var(--msq-accent);border-radius:0 8px 8px 0}\n.msq-choice-result[hidden]{display:none}\n@media (max-width:600px){.msq-calc{grid-template-columns:1fr}}\nh2.wp-block-heading[id]{scroll-margin-top:24px}<\/style>\n<noscript><style>.msq-explain{display:block !important}<\/style><\/noscript>\n<details class=\"msq-box\">\n<summary>Think you already know this? Five questions, one minute.<\/summary>\n<div class=\"msq-body\">\n<p class=\"msq-intro\">Every answer is on this page. Answer from what you know now; the page fills in the rest.<\/p>\n<ol class=\"msq-list\">\n<li class=\"msq-q\" data-q=\"1\" data-answer=\"b\" data-title=\"What does OpenAI&#x27;s own job board list today?\" data-section=\"#what-does-openai-s-own-job-board-list-today\">\n<p class=\"msq-question\">1. Which part of OpenAI had the most open postings on 26 September 2026?<\/p>\n<div class=\"msq-options\" role=\"group\" aria-label=\"Question 1 options\"><button type=\"button\" class=\"msq-opt\" data-opt=\"a\">Research<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"b\">Go To Market, the sales organisation<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"c\">Applied AI<\/button><\/div>\n<p class=\"msq-explain\" hidden><span class=\"msq-verdict\"><\/span>Counted from <a href=\"https:\/\/jobs.ashbyhq.com\/openai\" target=\"_blank\" rel=\"noopener\">OpenAI&#8217;s own Ashby board<\/a> on 26 September 2026: Go To Market 144 postings, Scaling 118, Applied AI 110 and Research 66, so sales openings outnumbered research openings by more than two to one. <a class=\"msq-section\" href=\"#what-does-openai-s-own-job-board-list-today\">Read the section<\/a><\/p>\n<\/li>\n<li class=\"msq-q\" data-q=\"2\" data-answer=\"a\" data-title=\"Does OpenAI hire remote, and what is the office rule?\" data-section=\"#does-openai-hire-remote-and-what-is-the-office-rule\">\n<p class=\"msq-question\">2. How many of the 830 postings were tagged remote on that day?<\/p>\n<div class=\"msq-options\" role=\"group\" aria-label=\"Question 2 options\"><button type=\"button\" class=\"msq-opt\" data-opt=\"a\">24<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"b\">231<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"c\">514<\/button><\/div>\n<p class=\"msq-explain\" hidden><span class=\"msq-verdict\"><\/span>24 were tagged remote, 514 hybrid, 31 on site and 261 carried no tag. 289 postings on <a href=\"https:\/\/jobs.ashbyhq.com\/openai\" target=\"_blank\" rel=\"noopener\">the board<\/a> repeated the same line about a hybrid model of three days in the office per week. <a class=\"msq-section\" href=\"#does-openai-hire-remote-and-what-is-the-office-rule\">Read the section<\/a><\/p>\n<\/li>\n<li class=\"msq-q\" data-q=\"3\" data-answer=\"b\" data-title=\"What does OpenAI pay, as listed on its own postings?\" data-section=\"#what-does-openai-pay-as-listed-on-its-own-postings\">\n<p class=\"msq-question\">3. What was the lowest annual band stated anywhere on the board that day?<\/p>\n<div class=\"msq-options\" role=\"group\" aria-label=\"Question 3 options\"><button type=\"button\" class=\"msq-opt\" data-opt=\"a\">$45,000 to $60,000<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"b\">$99,000 to $110,000<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"c\">$150,000 to $180,000<\/button><\/div>\n<p class=\"msq-explain\" hidden><span class=\"msq-verdict\"><\/span>The lowest of the 659 US dollar bands on <a href=\"https:\/\/jobs.ashbyhq.com\/openai\" target=\"_blank\" rel=\"noopener\">OpenAI&#8217;s board<\/a> on 26 September 2026 was $99,000 to $110,000 for a Corporate Security GSOC Operator. The median band floor was $252,000. These are figures as listed on that date, not offers. <a class=\"msq-section\" href=\"#what-does-openai-pay-as-listed-on-its-own-postings\">Read the section<\/a><\/p>\n<\/li>\n<li class=\"msq-q\" data-q=\"4\" data-answer=\"a\" data-title=\"Is there an entry level or AI trainer route at OpenAI?\" data-section=\"#is-there-an-entry-level-or-ai-trainer-route-at-openai\">\n<p class=\"msq-question\">4. How many of the 830 job titles contained trainer, annotator or rater?<\/p>\n<div class=\"msq-options\" role=\"group\" aria-label=\"Question 4 options\"><button type=\"button\" class=\"msq-opt\" data-opt=\"a\">None<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"b\">12<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"c\">40<\/button><\/div>\n<p class=\"msq-explain\" hidden><span class=\"msq-verdict\"><\/span>None. Three roles carried Human Data in the title, including a <a href=\"https:\/\/jobs.ashbyhq.com\/openai\/932c9cc1-c542-4f67-8d0d-443de87b8213\" target=\"_blank\" rel=\"noopener\">Program Manager, Human Data<\/a> listed at $207,000 to $230,000, and all three run the programme rather than do the labelling work inside it. <a class=\"msq-section\" href=\"#is-there-an-entry-level-or-ai-trainer-route-at-openai\">Read the section<\/a><\/p>\n<\/li>\n<li class=\"msq-q\" data-q=\"5\" data-answer=\"c\" data-title=\"How do you tell a real OpenAI recruiter from a fake one?\" data-section=\"#how-do-you-tell-a-real-openai-recruiter-from-a-fake-one\">\n<p class=\"msq-question\">5. What is the first check on a message claiming to recruit for OpenAI?<\/p>\n<div class=\"msq-options\" role=\"group\" aria-label=\"Question 5 options\"><button type=\"button\" class=\"msq-opt\" data-opt=\"a\">Whether the salary quoted looks plausible<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"b\">Whether the recruiter has a filled in profile and connections<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"c\">Whether that exact role appears on OpenAI&#8217;s own job board<\/button><\/div>\n<p class=\"msq-explain\" hidden><span class=\"msq-verdict\"><\/span>If the role is not on <a href=\"https:\/\/jobs.ashbyhq.com\/openai\" target=\"_blank\" rel=\"noopener\">OpenAI&#8217;s own board<\/a> it is not an OpenAI role. The US Federal Trade Commission reports that <a href=\"https:\/\/consumer.ftc.gov\/all-scams\/job-scams\" target=\"_blank\" rel=\"noopener\">job scam reports tripled between 2020 and 2024<\/a>, with reported losses rising from $90 million to $501 million. <a class=\"msq-section\" href=\"#how-do-you-tell-a-real-openai-recruiter-from-a-fake-one\">Read the section<\/a><\/p>\n<\/li>\n<\/ol>\n<div class=\"msq-result\" hidden><\/div>\n<\/div>\n<\/details>\n<script>(function(){\n  if (window.__msqInit) { return; }\n  window.__msqInit = true;\n  var root = document.getElementById('ms-quiz');\n  if (!root) { return; }\n  var meta = { slug: root.getAttribute('data-slug'), category: root.getAttribute('data-category'),\n               list: root.getAttribute('data-list') || '1' };\n  function qs(el, s){ return el.querySelector(s); }\n  function qsa(el, s){ return Array.prototype.slice.call(el.querySelectorAll(s)); }\n  function track(name, params){\n    try { if (typeof gtag === 'function') { var p = params || {}; p.article = meta.slug; gtag('event', name, p); } } catch (e) {}\n  }\n  function jumpList(missed){\n    if (!missed.length) { return ''; }\n    return '<ul class=\"msq-jump\">' + missed.map(function(q){\n      return '<li><a href=\"' + q.getAttribute('data-section') + '\">' + q.getAttribute('data-title') + '<\/a><\/li>';\n    }).join('') + '<\/ul>';\n  }\n  function emailForm(){\n    return '<div class=\"msq-sub\"><p><strong>Get the next one.<\/strong> We publish new articles on ' + meta.category\n      + ' most weeks and recheck this page on Sundays. Email me when a new article goes up or this page changes.<\/p>'\n      + '<form class=\"msq-form\" method=\"post\" action=\"\/mail\/form.php\" novalidate>'\n      + '<input type=\"hidden\" name=\"list\" value=\"' + meta.list + '\">'\n      + '<input type=\"hidden\" name=\"name\" value=\"\">'\n      + '<label class=\"msq-hp\" aria-hidden=\"true\">Leave this empty<input type=\"text\" name=\"website\" tabindex=\"-1\" autocomplete=\"off\"><\/label>'\n      + '<input type=\"email\" name=\"email\" placeholder=\"you@example.com\" required aria-label=\"Email address\" autocomplete=\"email\">'\n      + '<button type=\"submit\" class=\"msq-btn\">Email me the updates<\/button>'\n      + '<a href=\"#\" class=\"msq-no\">No thanks<\/a>'\n      + '<p class=\"msq-privacy\">We store your email and this page\\'s topic, nothing else. Unsubscribe any time.<\/p>'\n      + '<\/form><p class=\"msq-msg\" aria-live=\"polite\"><\/p><\/div>';\n  }\n  \/* The autoresponder always answers 200 with its own page. A \".msg.err\" box means the\n     address was rejected, \"You're subscribed\" means accepted, and a redirect only happens\n     after a successful subscribe. Same reading as the landing pages on the other sites. *\/\n  function sendForm(form){\n    return fetch(form.getAttribute('action'), { method: 'POST', body: new FormData(form), credentials: 'same-origin', redirect: 'manual' })\n      .then(function(res){\n        if (res.type === 'opaqueredirect') { return { status: 'ok' }; }\n        if (res.status === 404) { return { status: 'notlive' }; }\n        if (!res.ok) { throw new Error('HTTP ' + res.status); }\n        return res.text().then(function(t){\n          var doc = new DOMParser().parseFromString(t, 'text\/html');\n          var err = doc.querySelector('.msg.err');\n          if (err) {\n            var m = err.textContent.trim();\n            if (\/something went wrong\/i.test(m)) { throw new Error(m); }\n            return { status: 'rejected', message: m };\n          }\n          if (\/you.re subscribed\/i.test(doc.body.textContent)) { return { status: 'ok' }; }\n          return { status: 'unknown' };\n        });\n      });\n  }\n  function wireForm(sub){\n    var form = qs(sub, '.msq-form'), msg = qs(sub, '.msq-msg');\n    qs(form, '.msq-no').addEventListener('click', function(e){\n      e.preventDefault();\n      sub.innerHTML = '<p class=\"msq-msg\">No problem. The Sunday refresh keeps this page current either way.<\/p>';\n      track('quiz_email', { result: 'declined' });\n    });\n    form.addEventListener('submit', function(e){\n      e.preventDefault();\n      var input = qs(form, 'input[name=email]'), btn = qs(form, '.msq-btn');\n      var email = input.value.trim(); input.value = email;\n      if (!\/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$\/.test(email)) { msg.textContent = 'That email does not look right.'; return; }\n      btn.disabled = true; btn.textContent = 'Sending';\n      function reset(){ btn.disabled = false; btn.textContent = 'Email me the updates'; }\n      sendForm(form).then(function(r){\n        if (r.status === 'ok' || r.status === 'unknown') {\n          sub.innerHTML = '<p class=\"msq-msg\"><strong>Done.<\/strong> We will email you when the next article on ' + meta.category\n            + ' goes up and when this page changes. If a confirmation email arrives, click it.<\/p>';\n          track('quiz_email', { result: r.status });\n          if (r.status === 'ok') { track('generate_lead', { method: 'quiz' }); }\n        } else if (r.status === 'notlive') {\n          msg.textContent = 'Sign up is not switched on yet for this site. Nothing was stored.'; reset();\n          track('quiz_email', { result: 'notlive' });\n        } else {\n          msg.textContent = r.message || 'Please check the email address and try again.'; reset();\n          track('quiz_email', { result: 'rejected' });\n        }\n      }).catch(function(){\n        msg.textContent = 'Could not reach the sign up service just now. Nothing was stored.'; reset();\n        track('quiz_email', { result: 'error' });\n      });\n    });\n  }\n  function finish(container, mode, score, total, missed){\n    var result = qs(container, '.msq-result');\n    track('quiz_complete', { mode: mode, score: score, total: total });\n    var h;\n    if (mode === 'pre') {\n      h = '<h3>You knew ' + score + ' of ' + total + ' before reading.<\/h3>';\n      h += (score === total) ? '<p>All of them. Read on anyway; the sections below carry the detail behind each answer.<\/p>'\n                             : '<p>The rest is below. Jump straight to what you missed:<\/p>' + jumpList(missed);\n      try { sessionStorage.setItem('msq-pre-' + meta.slug, String(score)); } catch (e) {}\n    } else {\n      var pre = null;\n      try { pre = sessionStorage.getItem('msq-pre-' + meta.slug); } catch (e) {}\n      h = '<h3>You got ' + score + ' of ' + total + '.<\/h3>';\n      if (pre !== null) { h += '<p>Before reading you had ' + pre + ' of ' + total + '.<\/p>'; }\n      if (missed.length) { h += '<p>Worth a second look:<\/p>' + jumpList(missed); }\n      h += emailForm();\n    }\n    result.innerHTML = h; result.hidden = false;\n    if (mode !== 'pre') { wireForm(qs(result, '.msq-sub')); }\n    result.scrollIntoView({ behavior: 'smooth', block: 'nearest' });\n  }\n  function setup(container, mode){\n    var qEls = qsa(container, '.msq-q'), answered = 0, score = 0, missed = [];\n    qEls.forEach(function(q){\n      var answer = q.getAttribute('data-answer'), opts = qsa(q, '.msq-opt'), explain = qs(q, '.msq-explain');\n      q.removeAttribute('data-done'); explain.hidden = true; qs(explain, '.msq-verdict').textContent = '';\n      opts.forEach(function(b){ b.disabled = false; b.classList.remove('is-right', 'is-wrong'); });\n      opts.forEach(function(b){\n        b.addEventListener('click', function(){\n          if (q.getAttribute('data-done')) { return; }\n          q.setAttribute('data-done', '1');\n          var ok = b.getAttribute('data-opt') === answer;\n          opts.forEach(function(o){ o.disabled = true; if (o.getAttribute('data-opt') === answer) { o.classList.add('is-right'); } });\n          if (ok) { score += 1; } else { b.classList.add('is-wrong'); missed.push(q); }\n          qs(explain, '.msq-verdict').textContent = ok ? 'Right. ' : 'Not quite. ';\n          explain.hidden = false;\n          answered += 1;\n          track('quiz_answer', { mode: mode, question: q.getAttribute('data-q'), correct: ok ? 1 : 0 });\n          if (answered === qEls.length) { finish(container, mode, score, qEls.length, missed); }\n        });\n      });\n    });\n  }\n  var box = qs(root, '.msq-box');\n  setup(root, 'pre');\n  if (box) { box.addEventListener('toggle', function(){ if (box.open) { track('quiz_open', { mode: 'pre' }); } }); }\n  \/* The end block sits far below this script, so it does not exist yet while this runs\n     during parsing. A delegated listener finds it at click time. *\/\n  document.addEventListener('click', function(e){\n    var startBtn = (e.target && e.target.closest) ? e.target.closest('.msq-start-test') : null;\n    if (!startBtn) { return; }\n    var end = startBtn.closest('.msq-end');\n    if (!end) { return; }\n    var mount = qs(end, '.msq-mount');\n    var clone = qs(root, '.msq-body').cloneNode(true);\n    var intro = qs(clone, '.msq-intro');\n    if (intro) { intro.textContent = 'The same five questions, now that you have read the page.'; }\n    var res = qs(clone, '.msq-result'); if (res) { res.hidden = true; res.innerHTML = ''; }\n    mount.innerHTML = ''; mount.appendChild(clone);\n    setup(mount, 'test');\n    startBtn.hidden = true;\n    track('quiz_open', { mode: 'test' });\n    mount.scrollIntoView({ behavior: 'smooth', block: 'start' });\n    var first = qs(mount, '.msq-opt'); if (first) { first.focus({ preventScroll: true }); }\n  });\n  \/* Shared tool behaviour: checklists remember their ticks on this device, and a chooser\n     shows the result for the option picked. Calculators carry their own small script. *\/\n  function initTools(){\n    qsa(document, '.msq-check').forEach(function(box){\n      var key = 'msq-check-' + meta.slug + '-' + (box.getAttribute('data-id') || 'x');\n      var boxes = qsa(box, 'input[type=checkbox]'), count = qs(box, '.msq-check-count');\n      var yes = qs(box, '.msq-verdict-yes'), no = qs(box, '.msq-verdict-no');\n      var saved = {};\n      try { saved = JSON.parse(localStorage.getItem(key) || '{}'); } catch (e) {}\n      boxes.forEach(function(cb, i){ if (saved[i]) { cb.checked = true; } });\n      function refresh(){\n        var n = boxes.filter(function(cb){ return cb.checked; }).length, state = {};\n        boxes.forEach(function(cb, i){ if (cb.checked) { state[i] = 1; } });\n        try { localStorage.setItem(key, JSON.stringify(state)); } catch (e) {}\n        if (count) { count.textContent = n + ' of ' + boxes.length + (box.getAttribute('data-verb') || ' done'); }\n        if (yes && no) { yes.hidden = n === 0; no.hidden = n !== 0; }\n      }\n      boxes.forEach(function(cb){ cb.addEventListener('change', function(){ refresh(); track('tool_check', { tool: box.getAttribute('data-id') }); }); });\n      refresh();\n    });\n    qsa(document, '.msq-choose').forEach(function(box){\n      var results = qsa(box, '.msq-choice-result');\n      qsa(box, 'input[type=radio]').forEach(function(r){\n        r.addEventListener('change', function(){\n          results.forEach(function(el){ el.hidden = el.getAttribute('data-for') !== r.value; });\n          track('tool_choose', { tool: box.getAttribute('data-id'), choice: r.value });\n        });\n      });\n    });\n  }\n  \/\/ read progress: how far down the article the reader has scrolled, fired once per quarter\n  (function(){\n    var art = root.closest('article') || root.parentNode, fired = {};\n    function check(){\n      var top = art.getBoundingClientRect().top + window.pageYOffset, h = art.offsetHeight || 1;\n      var seen = (window.pageYOffset + window.innerHeight - top) \/ h * 100;\n      [25, 50, 75, 100].forEach(function(m){ if (seen >= m && !fired[m]) { fired[m] = true; track('read_progress', { percent: m }); } });\n    }\n    window.addEventListener('scroll', check, { passive: true }); window.addEventListener('load', check);\n  })();\n  if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', initTools); } else { initTools(); }\n})();<\/script>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"what-does-openai-s-own-job-board-list-today\">What does OpenAI&#8217;s own job board list today?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">OpenAI runs its hiring through Ashby and leaves the board public, so what follows is a count rather than an impression. On 26 September 2026 the <a href=\"https:\/\/jobs.ashbyhq.com\/openai\" target=\"_blank\" rel=\"noopener\">OpenAI job board<\/a> carried 830 listed postings, 829 of them salaried full time roles. Exactly one is a contract role, a <a href=\"https:\/\/jobs.ashbyhq.com\/openai\/dbd5ae8a-7c01-4f17-be39-b8caa8fd95d5\" target=\"_blank\" rel=\"noopener\">Recruiting Coordinator in San Francisco<\/a> posted on 28 August 2026, so the only contract job on the board is the one that helps with hiring.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The department split is where the popular picture of an AI lab falls apart. Go To Market, the sales organisation, has 144 open postings. Scaling, which builds and runs the data centres, has 118, and Applied AI has 110. Research has 66, about eight percent of the board, so sales openings outnumber research openings by more than two to one. User Operations has 57, Marketing 46, Security 32, and the remaining 257 sit across roughly thirty smaller teams.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Geography is narrower still. 580 of the 830 postings, seventy percent, are in San Francisco, then Singapore with 33, Tokyo and London with 24 each and Dublin with 23. The same shape shows on <a href=\"https:\/\/getaiwork.com\/articles\/anthropic-jobs\/\">Anthropic&#8217;s board<\/a>, counted the day before this one.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Freshness cuts both ways: 84 postings went up in the week to 26 September and 296 in the last thirty days, but 137 are more than 180 days old and the oldest still listed dates to 25 May 2023.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1600\" height=\"900\" src=\"https:\/\/getaiwork.com\/articles\/wp-content\/uploads\/2026\/09\/openai-careers-chart.png\" alt=\"Bar chart of openai careers postings by department, sales largest at 144 of 830 roles.\" class=\"wp-image-738\" srcset=\"https:\/\/getaiwork.com\/articles\/wp-content\/uploads\/2026\/09\/openai-careers-chart.png 1600w, https:\/\/getaiwork.com\/articles\/wp-content\/uploads\/2026\/09\/openai-careers-chart-300x169.png 300w, https:\/\/getaiwork.com\/articles\/wp-content\/uploads\/2026\/09\/openai-careers-chart-1024x576.png 1024w, https:\/\/getaiwork.com\/articles\/wp-content\/uploads\/2026\/09\/openai-careers-chart-768x432.png 768w, https:\/\/getaiwork.com\/articles\/wp-content\/uploads\/2026\/09\/openai-careers-chart-1536x864.png 1536w\" sizes=\"auto, (max-width: 1600px) 100vw, 1600px\" \/><figcaption class=\"wp-block-image__caption\">Open postings by department, counted from OpenAI&#8217;s own Ashby job board on 26 September 2026. Research accounted for 66 of the 830, about eight percent.<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"does-openai-hire-remote-and-what-is-the-office-rule\">Does OpenAI hire remote, and what is the office rule?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Mostly it does not, and the board says so in its own words. Of the 830 postings, 514 are tagged hybrid, 31 on site, 24 remote, and 261 carry no workplace tag at all. 289 postings contain the same sentence: &#8220;We use a hybrid work model of 3 days in the office per week.&#8221; In 211 of them that sentence continues with an offer of relocation assistance, which is a polite way of saying the job expects you to move.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Search the location field instead and 35 postings mention Remote, 24 of them as US Remote. These are not a general remote pool: they are infrastructure security, power trading, land development and data centre roles, with listed floors from $125,000 to $401,000 on the day. The remote door at OpenAI is real, and it opens for people who have spent a decade near electrical substations.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">India gets ten postings: four in Delhi, three in Mumbai, two Bangalore remote and one India remote. All ten are commercial or solutions work, and none states pay.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1376\" height=\"768\" src=\"https:\/\/getaiwork.com\/articles\/wp-content\/uploads\/2026\/09\/man-at-desk-considering-openai-careers.jpg\" alt=\"A man wearing headphones at his desk researching remote openai careers opportunities.\" class=\"wp-image-733\" srcset=\"https:\/\/getaiwork.com\/articles\/wp-content\/uploads\/2026\/09\/man-at-desk-considering-openai-careers.jpg 1376w, https:\/\/getaiwork.com\/articles\/wp-content\/uploads\/2026\/09\/man-at-desk-considering-openai-careers-300x167.jpg 300w, https:\/\/getaiwork.com\/articles\/wp-content\/uploads\/2026\/09\/man-at-desk-considering-openai-careers-1024x572.jpg 1024w, https:\/\/getaiwork.com\/articles\/wp-content\/uploads\/2026\/09\/man-at-desk-considering-openai-careers-768x429.jpg 768w\" sizes=\"auto, (max-width: 1376px) 100vw, 1376px\" \/><figcaption class=\"wp-block-image__caption\">Remote work options remain highly competitive for modern technology roles.<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"what-does-openai-pay-as-listed-on-its-own-postings\">What does OpenAI pay, as listed on its own postings?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">664 of the 830 postings state a pay band, which is more openness than most employers manage. Of the 659 quoted in US dollars, the median band floor is $252,000 and 551 floors sit at $200,000 or above. Only nine fall below $150,000 and exactly one is below $120,000, a Corporate Security GSOC Operator at $99,000 to $110,000, which is the cheapest role on the entire board. The top is $510,000 to $536,000 for an engineering manager in Applied AI. Every figure here is as listed by OpenAI on 26 September 2026, and a listed band is a band, not an offer.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Department<\/th><th>Open postings<\/th><th>Lowest listed band floor<\/th><\/tr><\/thead><tbody><tr><td>Go To Market (sales)<\/td><td>144<\/td><td>$144,000<\/td><\/tr><tr><td>Scaling (data centres and supply)<\/td><td>118<\/td><td>$123,000<\/td><\/tr><tr><td>Applied AI<\/td><td>110<\/td><td>$180,000<\/td><\/tr><tr><td>Research<\/td><td>66<\/td><td>$157,000<\/td><\/tr><tr><td>User Operations<\/td><td>57<\/td><td>$162,000<\/td><\/tr><tr><td>Marketing<\/td><td>46<\/td><td>$198,000<\/td><\/tr><tr><td>Security<\/td><td>32<\/td><td>$129,600<\/td><\/tr><tr><td>Finance<\/td><td>29<\/td><td>$158,000<\/td><\/tr><tr><td>All other teams, about thirty of them<\/td><td>257<\/td><td>$99,000<\/td><\/tr><\/tbody><\/table><figcaption class=\"wp-element-caption\">OpenAI open postings and the lowest annual band floor stated in each department, counted from the company&#8217;s own Ashby board on 26 September 2026. Bands are as listed by OpenAI on that date and are not offers.<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"is-there-an-entry-level-or-ai-trainer-route-at-openai\">Is there an entry level or AI trainer route at OpenAI?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">No, and this is the most useful thing the board tells anyone who arrived hoping otherwise. Searching all 830 titles returns zero results for trainer, zero for annotator, zero for rater and zero for labeler. Three roles carry Human Data in the title: a <a href=\"https:\/\/jobs.ashbyhq.com\/openai\/932c9cc1-c542-4f67-8d0d-443de87b8213\" target=\"_blank\" rel=\"noopener\">Program Manager, Human Data<\/a> at $207,000 to $230,000 posted on 19 August 2026, a research programme manager for human data campaigns at $239,000 to $328,000, and a research software engineer for human data at $295,000 to $385,000. All three are in San Francisco, and all three run the human data programme rather than do the work inside it.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">There is no intern, apprentice, residency or entry level title anywhere on the board either. The gate is experience rather than education: 491 postings name a years figure and 395 of those ask for five years or more, while 21 ask for two or fewer, and only ten of the 830 postings name a bachelor&#8217;s degree at all.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Which means the certificate industry has it backwards. OpenAI is barely asking what you studied and is asking hard about what you have shipped, so a course selling a credential that appears in none of 830 postings is solving a problem this board does not have. To see which openings match what you can actually show today, the two minute match quiz at <a href=\"https:\/\/getaiwork.com\/?h=jobs&amp;utm_source=articles&amp;utm_medium=organic&amp;utm_content=openai-careers\">getaiwork.com<\/a> asks about your background and points you at the ones that fit it.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"what-do-people-who-looked-closely-at-openai-hiring-report\">What do people who looked closely at OpenAI hiring report?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">I read four public accounts for this section, three on Hacker News and one on OpenAI&#8217;s own developer forum. They are testimony rather than evidence, and they describe things a job board cannot.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The most detailed comes from a sales recruiter posting as seem_2211 on 26 May 2026, who <a href=\"https:\/\/news.ycombinator.com\/item?id=48284434\" target=\"_blank\" rel=\"noopener\">reviewed every Member of GTM Staff profile they could find<\/a> on LinkedIn, 607 of them, and classified the 390 based in the United States. 43 percent were quota carrying account executives, and the hires came from AWS, Google and Salesforce rather than the traditional enterprise software names, none of which reached their top thirty sources. They published the method and its weakness, that LinkedIn over represents people who keep a profile current, and the <a href=\"https:\/\/yournextventure.co\/open-ai-gtm-report\" target=\"_blank\" rel=\"noopener\">full report<\/a> is free to read. That count agrees with the board: sales is the largest block of open roles.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A commenter posting as abound wrote on 1 October 2024 that while <a href=\"https:\/\/news.ycombinator.com\/item?id=41713460\" target=\"_blank\" rel=\"noopener\">talking with OpenAI recruiters<\/a> they received calendar invitations carrying model generated images, and interview preparation guides that read as though an older model had written them. A small detail, and it describes a process that is genuine and a little chaotic.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The other two accounts are about approaches that were not OpenAI at all. On 16 June 2026 a commenter posting as blindriver reported <a href=\"https:\/\/news.ycombinator.com\/item?id=48549198\" target=\"_blank\" rel=\"noopener\">sending a CV and taking a phone call<\/a> with convincing recruiters claiming to represent Google, Netflix, Meta, OpenAI and Anthropic. On 21 November 2024 someone on OpenAI&#8217;s developer forum asked whether <a href=\"https:\/\/community.openai.com\/t\/got-recruiter-email-from-c-openai-com-is-it-phishing\/1027027\" target=\"_blank\" rel=\"noopener\">a recruiter email from c-openai.com<\/a> was genuine, and was pointed at earlier threads flagging that domain as spam.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Where the accounts and the board agree, the hiring is commercial rather than mostly research. Where they part company matters more: a board confirms that a role exists, and it cannot tell you whether the person in your inbox has anything to do with it. Three of the four accounts were about impersonation rather than hiring, which is a ratio worth keeping.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"which-ai-work-routes-are-actually-open-to-a-beginner\">Which AI work routes are actually open to a beginner?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Three routes get discussed as though they were one market. Compared on the same day they are not close.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Route<\/th><th>Open on 26 September 2026<\/th><th>Experience asked<\/th><th>Where<\/th><th>Pay, as listed<\/th><\/tr><\/thead><tbody><tr><td>OpenAI staff roles, own board<\/td><td>830<\/td><td>Five years or more in 395 of the 491 postings that name a figure<\/td><td>580 San Francisco, 24 remote<\/td><td>Median band floor $252,000 a year<\/td><\/tr><tr><td>AI training platform listings, getAIwork board<\/td><td>624 of 1,650 live listings, 265 tagged beginner<\/td><td>None stated on most beginner listings<\/td><td>619 of the 1,650 remote<\/td><td>Median listed hourly $36 for language work and $110 for licensed professional work<\/td><\/tr><tr><td>Staff trainer roles at a vendor, Handshake own board<\/td><td>4<\/td><td>Not stated in the postings<\/td><td>All four Seattle, on site<\/td><td>Not stated<\/td><\/tr><\/tbody><\/table><figcaption class=\"wp-element-caption\">The three routes compared on one day. Counts come from each company&#8217;s own board on 26 September 2026 and from the getAIwork board data published on 25 September 2026. Listed pay is what the poster stated and rates change.<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">The middle row is the board I run. On 25 September 2026 it held 1,650 live listings screened from public sources, 624 of them from AI training platforms, 265 tagged beginner level and 619 remote. Across the 1,008 listings that quoted pay, the median listed hourly figure was $36 for language work and $110 for licensed professional work, as listed on that date. Those rates move and none is a promise of what any individual is paid. The board is free and public at <a href=\"https:\/\/getaiwork.com\/board\/\">getaiwork.com\/board<\/a>, with no signup, and its counts are published as <a href=\"https:\/\/getaiwork.com\/stats.json\">open data<\/a>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1376\" height=\"768\" src=\"https:\/\/getaiwork.com\/articles\/wp-content\/uploads\/2026\/09\/workspace-setup-for-openai-careers-search.jpg\" alt=\"Close up of hands writing in a notebook while looking up remote openai careers.\" class=\"wp-image-734\" srcset=\"https:\/\/getaiwork.com\/articles\/wp-content\/uploads\/2026\/09\/workspace-setup-for-openai-careers-search.jpg 1376w, https:\/\/getaiwork.com\/articles\/wp-content\/uploads\/2026\/09\/workspace-setup-for-openai-careers-search-300x167.jpg 300w, https:\/\/getaiwork.com\/articles\/wp-content\/uploads\/2026\/09\/workspace-setup-for-openai-careers-search-1024x572.jpg 1024w, https:\/\/getaiwork.com\/articles\/wp-content\/uploads\/2026\/09\/workspace-setup-for-openai-careers-search-768x429.jpg 768w\" sizes=\"auto, (max-width: 1376px) 100vw, 1376px\" \/><figcaption class=\"wp-block-image__caption\">Beginners often start with flexible contracting roles rather than staff positions.<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">The salaried version of trainer work does exist, just not at OpenAI. Handshake&#8217;s own <a href=\"https:\/\/jobs.ashbyhq.com\/handshake\" target=\"_blank\" rel=\"noopener\">job board<\/a> carried four such roles on 26 September 2026: AI Model Policy Trainer posts for mental health, image evaluation and generalist work, plus an <a href=\"https:\/\/jobs.ashbyhq.com\/handshake\/4dcdfc01-076f-43f3-9bed-1acafd2c1cfa\" target=\"_blank\" rel=\"noopener\">AI Safety Policy Evaluator<\/a> for violence and threats. All four are full time, all four are Seattle on site, they went up between 27 August and 2 September 2026, and none states pay. Our <a href=\"https:\/\/getaiwork.com\/articles\/handshake-ai-review\/\">Handshake AI review<\/a> covers how its contributor side screens people, and the <a href=\"https:\/\/getaiwork.com\/articles\/ai-training-jobs-no-experience\/\">no experience routes guide<\/a> covers what is reachable without a technical background.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Whether any of these platforms works on OpenAI&#8217;s models is something I could not verify on the day. Scale&#8217;s own blog, dated 24 August 2023, says OpenAI <a href=\"https:\/\/scale.com\/blog\/open-ai-scale-partnership-gpt-3-5-fine-tuning\" target=\"_blank\" rel=\"noopener\">named it a preferred partner for fine tuning<\/a>, which is a three year old announcement rather than a statement about current work, and its <a href=\"https:\/\/boards.greenhouse.io\/scaleai\" target=\"_blank\" rel=\"noopener\">Greenhouse board<\/a> carried 203 postings on 26 September 2026, every one a staff job, with the contributor side living on the separate platform our <a href=\"https:\/\/getaiwork.com\/articles\/scale-ai-remote-tasks\/\">Scale AI remote tasks<\/a> page covers. Our newer <a href=\"https:\/\/getaiwork.com\/articles\/scale-ai-careers\/\">Scale AI careers breakdown<\/a>, reading the same board four days later, found 16 of its postings, the Human Frontier Collective Fellow roles, are actually 1099 contractor engagements rather than staff jobs. So treat any advert claiming to hire you to train OpenAI&#8217;s models as unverified, along with the <a href=\"https:\/\/getaiwork.com\/articles\/rlhf-jobs\/\">RLHF job adverts<\/a> that borrow a lab&#8217;s name for credibility.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"how-do-you-tell-a-real-openai-recruiter-from-a-fake-one\">How do you tell a real OpenAI recruiter from a fake one?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">One check settles most of it. If the exact role is not on OpenAI&#8217;s own board at <a href=\"https:\/\/jobs.ashbyhq.com\/openai\" target=\"_blank\" rel=\"noopener\">jobs.ashbyhq.com\/openai<\/a>, it is not an OpenAI role, however good the email looks.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The scale of the problem is documented rather than anecdotal. The US Federal Trade Commission reports that <a href=\"https:\/\/consumer.ftc.gov\/all-scams\/job-scams\" target=\"_blank\" rel=\"noopener\">job scam reports tripled between 2020 and 2024<\/a>, with reported losses over the same period rising from $90 million to $501 million, and it published a <a href=\"https:\/\/consumer.ftc.gov\/consumer-alerts\/2025\/09\/how-spot-job-scam\" target=\"_blank\" rel=\"noopener\">consumer alert on spotting a job scam<\/a> on 24 September 2025. The pattern around this company in particular is domain lookalikes, and c-openai.com has surfaced in OpenAI&#8217;s own developer forum more than once.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The checklist below is what I run before replying to any approach: six checks, about two minutes, no cost. If you would rather start from what you can already do, the <a href=\"https:\/\/getaiwork.com\/?h=remotenoexp&amp;utm_source=articles&amp;utm_medium=organic&amp;utm_content=openai-careers\">match quiz<\/a> is quicker, and the <a href=\"https:\/\/getaiwork.com\/articles\/highest-paying-ai-jobs\/\">highest paying AI jobs<\/a> page shows where the listed rates sit.<\/p>\n\n\n\n<div class=\"msq-tool msq-check\" data-id=\"openai-recruiter-checks\" data-verb=\" done\">\n<h3>Six checks before you answer a message claiming to recruit for OpenAI<\/h3>\n<p>Work down the list before you reply. Every check restates what this page already shows, and none of them costs anything.<\/p>\n<label><input type=\"checkbox\">Find that exact role on OpenAI&#8217;s own board at jobs.ashbyhq.com\/openai. No listing, no job.<\/label>\n<label><input type=\"checkbox\">Read the sender&#8217;s domain character by character against openai.com. Extra letters, a hyphen or a country suffix means it is not OpenAI.<\/label>\n<label><input type=\"checkbox\">Ask for a calendar invitation from that same corporate domain, and check the domain on the invitation when it arrives.<\/label>\n<label><input type=\"checkbox\">Check that the role&#8217;s location and working pattern match the posting. On 26 September 2026 only 24 of 830 roles were tagged remote.<\/label>\n<label><input type=\"checkbox\">Refuse any request for money: equipment deposits, training fees, onboarding costs or gift cards. Refuse to sign in to any account through a link in the message.<\/label>\n<label><input type=\"checkbox\">Report anything suspicious to the Federal Trade Commission at reportfraud.ftc.gov, then stop replying.<\/label>\n<p class=\"msq-check-count\"><\/p>\n<p class=\"msq-note\">Ticks are saved on this device only. This checklist is general information, not legal advice.<\/p>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"frequently-asked-questions\">Frequently asked questions<\/h2>\n\n\n<div id=\"rank-math-faq\" class=\"rank-math-block\">\n<div class=\"rank-math-list \">\n<div id=\"faq-q-1\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">How many OpenAI roles are outside the United States?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>On 26 September 2026 the largest non US locations on OpenAI&#8217;s own board were Singapore with 33 postings, Tokyo and London with 24 each, and Dublin with 23. India had ten, all commercial or solutions roles, and none of the ten stated pay.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-q-2\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">Does OpenAI list contract or freelance work on its job board?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Almost none. Of the 830 listed postings on 26 September 2026, 829 were salaried full time roles and one was a contract role, a Recruiting Coordinator in San Francisco posted on 28 August 2026. There was no freelance or task based work on the board at all.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-q-3\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">Why do some OpenAI postings show dates more than a year old?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Boards keep requisitions open. On 26 September 2026, 137 of the 830 postings were more than 180 days old and the oldest still listed was published on 25 May 2023. Treat an old posting date as a reason to check elsewhere before spending hours on an application.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-q-4\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">Does OpenAI require a computer science degree?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Its postings rarely mention one. Only ten of the 830 postings named a bachelor&#8217;s degree on 26 September 2026, while 491 named a years of experience figure and 395 of those asked for five years or more. Experience appears as the filter far more often than education.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-q-5\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">Do the AI training platforms work on OpenAI&#8217;s models?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>That could not be verified at a primary source on the day. Scale&#8217;s own blog, dated 24 August 2023, says OpenAI named it a preferred fine tuning partner, which is a three year old announcement. No current vendor page reviewed here states which lab a contributor&#8217;s tasks belong to, so any advert claiming to hire you to train OpenAI&#8217;s models should be treated as unverified.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-q-6\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">Where do you report a recruiter pretending to be OpenAI?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>In the United States, report it to the Federal Trade Commission at reportfraud.ftc.gov and stop replying. Its guidance on job scams sits at consumer.ftc.gov. Do not sign in to any account through a link in the message, and never send payment for equipment, training or onboarding.<\/p>\n\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n<div class=\"msq-end\" id=\"ms-quiz-end\">\n<p><strong>Finished the page?<\/strong> The same five questions from the top, to see what stuck.<\/p>\n<button type=\"button\" class=\"msq-btn msq-start-test\">Test Your Understanding of This Article<\/button>\n<div class=\"msq-mount\"><\/div>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Platform statuses and listed pay change without notice. Pay figures are quoted only as listed by the poster on the date shown and are never a promise of earnings. This page was verified on the date shown and is rechecked on the weekly refresh.<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>A dated count of OpenAI&#8217;s 830 open roles from its own Ashby board, what they pay as listed, why none of them is an entry level or AI trainer post, and the routes that are open instead.<\/p>\n","protected":false},"author":2,"featured_media":732,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","rank_math_title":"OpenAI Careers: Who Gets Hired and the Contractor Routes","rank_math_description":"OpenAI careers, counted from the company's own board on 26 September 2026: 830 open roles, 24 tagged remote, and no entry level or AI trainer route.","rank_math_focus_keyword":"openai careers","rank_math_canonical_url":"","rank_math_breadcrumb_title":"","rank_math_facebook_title":"","rank_math_facebook_description":"","rank_math_facebook_image":"","rank_math_twitter_title":"","rank_math_twitter_description":"","rank_math_twitter_image":"","rank_math_pillar_content":"","rank_math_robots":[],"rank_math_advanced_robots":[]},"categories":[3],"tags":[],"class_list":["post-735","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ai-jobs"],"_links":{"self":[{"href":"https:\/\/getaiwork.com\/articles\/wp-json\/wp\/v2\/posts\/735","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/getaiwork.com\/articles\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/getaiwork.com\/articles\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/getaiwork.com\/articles\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/getaiwork.com\/articles\/wp-json\/wp\/v2\/comments?post=735"}],"version-history":[{"count":7,"href":"https:\/\/getaiwork.com\/articles\/wp-json\/wp\/v2\/posts\/735\/revisions"}],"predecessor-version":[{"id":797,"href":"https:\/\/getaiwork.com\/articles\/wp-json\/wp\/v2\/posts\/735\/revisions\/797"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/getaiwork.com\/articles\/wp-json\/wp\/v2\/media\/732"}],"wp:attachment":[{"href":"https:\/\/getaiwork.com\/articles\/wp-json\/wp\/v2\/media?parent=735"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/getaiwork.com\/articles\/wp-json\/wp\/v2\/categories?post=735"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/getaiwork.com\/articles\/wp-json\/wp\/v2\/tags?post=735"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}