CINXE.COM
Bookkeeper Salary | Robert Half
<!DOCTYPE HTML> <html lang="en-US"> <head> <meta charset="UTF-8"/> <script defer="defer" type="text/javascript" src="/.rum/@adobe/helix-rum-js@%5E2/dist/rum-standalone.js"></script> <link rel="icon" type="image/x-icon" href="/content/dam/roberthalf/favicon.png"/> <meta name="template" content="full-width-page-content"/> <meta name="viewport" content="width=device-width, initial-scale=1"/> <meta name="robots" content="index, follow"/> <link rel="canonical" href="https://www.roberthalf.com/us/en/job-details/bookkeeper"/> <script> var salaryGuideGatingProperties = '{ enabled: false, redirectLocation: "null", key: "null" }'; if (salaryGuideGatingProperties.redirectLocation && !salaryGuideGatingProperties.redirectLocation.endsWith(".html")) { salaryGuideGatingProperties.redirectLocation += ".html"; } window.salaryGuideGatingProperties = salaryGuideGatingProperties; window.passesSalaryGuideGating = function() { if ( salaryGuideGatingProperties.enabled != undefined && salaryGuideGatingProperties.enabled.toString().toLowerCase() === "true" && window.localStorage.getItem("salaryGuideGatingKey") != salaryGuideGatingProperties.key && window.location.pathname != salaryGuideGatingProperties.redirectLocation ) { return false; } return true; } </script> <link media="print" rel="stylesheet" href="/etc.clientlibs/roberthalf/clientlibs/clientlib-base.lc-aadab028fda76fa101c57a36121a8a16-lc.min.css" type="text/css"> <script> let css = document.querySelector('link[media="print"]'); if(css) { css.media = "all"; } </script> <script> // window function to fetch UPO function getUPO() { let upoString = localStorage.getItem("unifiedProfileObject"); if (upoString === null || upoString === undefined) { return {}; } let parsedObject = decodeURIComponent(atob(upoString)); return JSON.parse(parsedObject); } // window function to update UPO async function setUPO(unifiedProfileObject) { const encodedString = btoa(encodeURIComponent(JSON.stringify(unifiedProfileObject))); localStorage.setItem("unifiedProfileObject", encodedString); await window.yieldToMain?.(); } </script> <script> window.addEventListener("rhcl-initialized", () => { window.setTimeout(handleClLoaded, 250); }); // Backup in case events do not sync up window.setTimeout(handleClLoaded, 5000); function handleClLoaded() { document.querySelector('style[data-source="rh-slot-style"]')?.remove(); } </script> <link rel="preload stylesheet" as="style" href="https://resources.roberthalfonline.com/rhcl/v25.3.0/assets/libraries/fontawesome6/css/all.css"/> <link rel="preload stylesheet" as="style" href="https://resources.roberthalfonline.com/rhcl/v25.3.0/css/rhcl.css"/> <link rel="preload" href="https://resources.roberthalfonline.com/rhcl/v25.3.0/assets/Fonts/NotoSans/notosans-display-light-webfont.woff2" as="font" crossorigin/> <link rel="preload" href="https://resources.roberthalfonline.com/rhcl/v25.3.0/assets/Fonts/NotoSans/notosans-display-webfont.woff2" as="font" crossorigin/> <link rel="preload" href="https://resources.roberthalfonline.com/rhcl/v25.3.0/assets/Fonts/NotoSans/notosans-italic-webfont.woff2" as="font" crossorigin/> <link rel="preload" href="https://resources.roberthalfonline.com/rhcl/v25.3.0/assets/Fonts/NotoSans/notosans-light-webfont.woff2" as="font" crossorigin/> <link rel="preload" href="https://resources.roberthalfonline.com/rhcl/v25.3.0/assets/Fonts/NotoSans/notosans-lightitalic-webfont.woff2" as="font" crossorigin/> <link rel="preload" href="https://resources.roberthalfonline.com/rhcl/v25.3.0/assets/Fonts/NotoSans/notosans-medium-webfont.woff2" as="font" crossorigin/> <link rel="preload" href="https://resources.roberthalfonline.com/rhcl/v25.3.0/assets/Fonts/NotoSans/notosans-regular-webfont.woff2" as="font" crossorigin/> <link rel="preload" href="https://resources.roberthalfonline.com/rhcl/v25.3.0/assets/Fonts/NotoSans/notosans-semibold-webfont.woff2" as="font" crossorigin/> <link rel="preload" href="https://resources.roberthalfonline.com/rhcl/v25.3.0/assets/Fonts/fontawesome6/fa-regular-400.woff2" as="font" crossorigin/> <link rel="preload" href="https://resources.roberthalfonline.com/rhcl/v25.3.0/assets/Fonts/fontawesome6/fa-solid-900.woff2" as="font" crossorigin/> <link rel="preload" href="https://resources.roberthalfonline.com/rhcl/v25.3.0/assets/Fonts/fontawesome6/fa-light-300.woff2" as="font" crossorigin/> <link rel="preload" href="https://resources.roberthalfonline.com/rhcl/v25.3.0/assets/Fonts/fontawesome6/fa-brands-400.woff2" as="font" crossorigin/> <script type="module" src="https://resources.roberthalfonline.com/rhcl/v25.3.0/lib/rhcl.esm.js" async></script> <style data-source="rh-slot-style"> [slot], rhcl-typography, rhcl-heading, rhcl-typeahead, .rhcl-typography, .rhcl-focused-search-block, .rhcl-block-paginated-feature, rhcl-modal, rhcl-block-stacking-cards, rhcl-block-focused-search, rhcl-search-bar, rhcl-button-group, rhcl-block-paired-content, .cmp-rhcl-focused-block-wrapper .cmp-rhcl-stacking-cards-block-wrapper, .cmp-container { visibility: hidden; } [slot]{font-family: "Noto Sans Regular";} h1[slot],h2[slot],h3[slot],h4[slot],h5[slot],h6[slot],p[slot]{ font-family: "Noto Sans Display";} </style> <script type="text/javascript"> window.pageObj = {}; izCountries = 'gb,de,fr,ch,cn,jp,cl,at,ae,be,nl,nz,hk,br,sg,au,lu'.split(","); naCountries = 'us,ca'.split(","); luxCountries = 'us,ca,de,be,gb'.split(","); euCountries = 'gb,de,fr,ch,at,ae,be,nl'.split(","); aemSettings ={ "rh_account_creation": { accountCheckEndpoint: 'https:\/\/prd\u002Ddr.gen.api.roberthalfonline.com\/sf\u002Daccount\/search?candidate_email=', accountCreateResendEmailEndpoint: 'https:\/\/prd\u002Ddr.gen.api.roberthalfonline.com\/salesforce\u002Dapi\/resend\u002Demail', accountRoutingMap: { "email": '\/us\/en\/sign\u002Dup\/create\u002Daccount', "resume": '\/us\/en\/find\u002Djobs\/upload\u002Dresume\/app', "candidate-email": '\/us\/en\/find\u002Djobs\/upload\u002Dresume\/email\u002Dverification\/app', "msjo": '\/us\/en\/find\u002Dyour\u002Dsolution\/app', "login": 'https:\/\/online.roberthalf.com\/s\/login?', "pendingAccount": '\/us\/en\/sign\u002Dup\/create\u002Daccount', "expiredVerification": '\/us\/en\/sign\u002Dup\/create\u002Daccount', "hasWebAccountClientOnly": 'https:\/\/online.roberthalf.com\/s\/login?', "hasWebAccount": 'https:\/\/online.roberthalf.com\/s\/login?', } }, "rh_candidate_apply": { aiConsentEndpoint: 'https:\/\/prd\u002Ddr.rf.api.roberthalfonline.com\/candidate\u002Dapply\/update\u002Dai\u002Dconsent', accountCheckEndpoint:'https:\/\/prd\u002Ddr.gen.api.roberthalfonline.com\/sf\u002Daccount\/search?candidate_email=', accountCreateEndpoint:'https:\/\/prd\u002Ddr.rf.api.roberthalfonline.com\/candidate\u002Dapply\/create\u002Daccount', directAccountCreateEndpoint: '', applyEndpoint:'https:\/\/prd\u002Ddr.rf.api.roberthalfonline.com\/candidate\u002Dapply\/job\u002Dapply', resendEmailEndpoint: '', submitResumeEndpoint:'https:\/\/prd\u002Ddr.rf.api.roberthalfonline.com\/candidate\u002Dapply\/submit\u002Dresume', resumeParseEndpoint:'https:\/\/prd\u002Ddr.rf.api.roberthalfonline.com\/parse\u002Dresume\/parse', xingUploadResumeEndpoint:'https:\/\/prd\u002Ddr.rf.api.roberthalfonline.com\/candidate\u002Dapply\/xing\u002Dresume', linkedInUploadResumeEndpoint:'https:\/\/prd\u002Ddr.rf.api.roberthalfonline.com\/candidate\u002Dapply\/job\u002Dapply\/linkedin\u002Dresume', geolocationEndpoint:'https:\/\/gen.api.roberthalfonline.com\/geocode\/getGeoByRegion?country_code=', googleGeoCodeEndpoint:'https:\/\/gen.api.roberthalfonline.com\/googlegeo\/getGeocode?address=', timezoneEndpoint:'https:\/\/prd\u002Ddr.gen.api.roberthalfonline.com\/timezone\/getTimezone', fetchSkills:'https:\/\/prd\u002Ddr.rf.api.roberthalfonline.com\/candidate\u002Dapply\/fetch\u002Dskills', patchSkills:'https:\/\/prd\u002Ddr.rf.api.roberthalfonline.com\/candidate\u002Dapply\/patch\u002Dskills', fetchResume:'https:\/\/prd\u002Ddr.rf.api.roberthalfonline.com\/candidate\u002Dapply\/job\u002Dapply\/fetch\u002Dresume', jobTypeValuesEndpoint:'https:\/\/gen.api.roberthalfonline.com\/iz\u002Dbranch\u002Dservice\/findJobTypeList', specializationValuesEndpoint:'https:\/\/gen.api.roberthalfonline.com\/iz\u002Dbranch\u002Dservice\/findSpecializationList', nearestOfficeValuesEndpoint:'https:\/\/gen.api.roberthalfonline.com\/iz\u002Dbranch\u002Dservice\/findOfficeList', xingPluginScript:'https:\/\/www.xing\u002Dshare.com\/plugins\/login_plugin.js', xingId:'82ac2657946cd0af3fa4' }, "rh_client_payment" :{ profileId:'EB9BBCE6\u002D70F7\u002D41BB\u002DB03B\u002DA8C27BB01D8E', accessKey: '5a4ab6d640e03d4dba86c1f9da33cf0b', maintenanceMode: 'false', cybersourceEndpoint:'https:\/\/secureacceptance.cybersource.com\/embedded\/pay', invoiceEndpoint:'https:\/\/prd\u002Ddr.gen.api.roberthalfonline.com\/cpp', }, "rh_job_search": { getAndSetSavedJobsEndpoint:'https:\/\/prd\u002Ddr.gen.api.roberthalfonline.com\/get\u002Dand\u002Dset\u002Djob\/query', jobAlertsEndpoint:'https:\/\/prd\u002Ddr.ma.api.roberthalfonline.com\/job\u002Dalerts\/subscribe', jobInterestEndpoint:'https:\/\/prd\u002Ddr.jps.api.roberthalfonline.com\/presented\u002Djob\/jobinterest', jobSearchEndpoint:'https:\/\/prd\u002Ddr.jps.api.roberthalfonline.com\/search', quickApplyEndpoint:'https:\/\/prd\u002Ddr.rf.api.roberthalfonline.com\/candidate\u002Dapply\/quick\u002Dapply', signInLink:'https:\/\/www.roberthalf.com\/login.rhlogin', jobSearchLocationTypeaheadEndpoint:'https:\/\/gen.api.roberthalfonline.com\/auto\u002Dcomplete\u002Daem\/search', feedbackDestinationEditAvailability:'avail', feedbackDestinationEditLocation:'loc', feedbackDestinationEditPayPreference:'pref', feedbackDestinationEditSkills:'skills', jobInterestFeedback:'https:\/\/prd\u002Ddr.rf.api.roberthalfonline.com\/candidate\u002Dapply\/feedback' }, "rh_multistep_job_order" :{ leadsProcessingEndpoint:'https:\/\/prd\u002Ddr.lp.api.roberthalfonline.com\/proxy\u002Dlead\u002Dprocessing\/send', jobFunctionTypeahead:'https:\/\/gen.api.roberthalfonline.com\/auto\u002Dcomplete\u002Daem\/job\u002Dfunction', skillSearch: 'https:\/\/prd\u002Ddr.gen.api.roberthalfonline.com\/sf\u002Dskills\/skillSearch', skillsRecommendation: 'https:\/\/prd\u002Ddr.gen.api.roberthalfonline.com\/sf\u002Dskills\/skillRecommendation', sfccRedirectUrl: 'https:\/\/online.roberthalf.com', accountCheckEndpoint: 'https:\/\/prd\u002Ddr.gen.api.roberthalfonline.com\/sf\u002Daccount\/search?candidate_email=', }, "rh_candidate_discovery": { accountCheckEndpoint:'https:\/\/prd\u002Ddr.gen.api.roberthalfonline.com\/sf\u002Daccount\/search?candidate_email=', candidateJobTitleTypeaheadEndpoint: 'https:\/\/gen.api.roberthalfonline.com\/auto\u002Dcomplete\u002Daem\/job\u002Dfunction', candidateLocationTypeaheadEndpoint: 'https:\/\/gen.api.roberthalfonline.com\/auto\u002Dcomplete\u002Daem\/search' }, "rh_common": { geolocationEndpoint: 'https:\/\/gen.api.roberthalfonline.com\/googlegeo\/getReverseGeocode', personDetailsEndpoint: '\/bin\/personDetails', recaptchaEndpoint: 'https:\/\/prd\u002Ddr.gen.api.roberthalfonline.com\/recaptcha\/verify\u002Dtoken', page_section: 'Job Search', page_user_type: 'Client and Candidate', page_type: 'Lead Form Page', isLuxCountry: 'true' } }; var articleDataLayer = { blog_type:'', industry_name :'', country_code :'', language :'', entityid :'', author_name :'', thumbnail_url :'', title :'', description :'', employment_type :'', published_date :'', page_url :'', categories :'', Article_tag :'' }; pageObj.__extrasettings__ = { language: 'en', country: 'us' }; </script> <script type="text/javascript"> aemSettings.rh_common.recaptchaEndpoint = 'https:\/\/prd\u002Ddr.gen.api.roberthalfonline.com\/recaptcha\/verify\u002Dtoken'; </script> <script> let readyFn = window.ready; if (!readyFn) { readyFn = function ready(fn) { if (typeof fn !== 'function') { throw new Error('Argument passed to ready should be a function'); } if (document.readyState != 'loading') { fn(); } else if (document.addEventListener) { document.addEventListener('DOMContentLoaded', fn, { once: true // A boolean value indicating that the listener should be invoked at most once after being added. If true, the listener would be automatically removed when invoked. }); } else { document.attachEvent('onreadystatechange', function () { if (document.readyState != 'loading') fn(); }); } } } readyFn(() => { let attempts = 0; // Initialize a counter const waitForEinsteinBot = setInterval(() => { attempts++; // Increment the counter each time the interval runs if (typeof initEinsteinBot === "function") { clearInterval(waitForEinsteinBot); try { const enableChat = aemSettings?.rh_common?.enableChat; const chatbot = document.querySelector(".chatbot"); const disableChatAutoInit = document.querySelector( "#disableChatAutoInit" ); if (enableChat && !chatbot && !disableChatAutoInit) { initEinsteinBot(); // CLS fix for chat button icon const styleEl = document.createElement("style"); styleEl.id = "chatButtonSize"; styleEl.innerHTML = ".embeddedServiceHelpButton .helpButton .uiButton {width: 115px; height: 50px;}"; document.head.appendChild(styleEl); } else { const styleEl = document.createElement("style"); styleEl.id = "hideChat"; styleEl.innerHTML = ".embeddedServiceHelpButton {display: none !important; }"; document.head.appendChild(styleEl); // will be removed by frontend when the chat is shown } } catch (error) { console.error(error); } } else if (attempts >= 10) { // If counter reaches 10, clear the interval clearInterval(waitForEinsteinBot); console.error("initEinsteinBot not loaded after 10 attempts"); } }, 100); // Check every 100ms }); aemSettings.rh_common.enableChat = "true"; </script> <script type="text/javascript" src="https://rh.my.salesforce.com/embeddedservice/5.0/esw.min.js" defer></script> <script type="text/javascript" src="https://rh.my.salesforce-sites.com/liveagent/EinsteinBotEmbedJS" defer></script> <title>Bookkeeper Salary | Robert Half</title> <meta property="page-type" content="Lead Form Page"/> <meta property="global-content-type" content="Job Search"/> <meta property="global-content-user-focus" content="Client and Candidate"/> <meta property="og:locale" content="en_US"/> <meta property="og:updated_time" content="2024-11-26T00:18:11+0000"/> <meta property="og:type" content="website"/> <meta property="og:site_name" content="Robert Half"/> <meta property="og:image" content="https://www.roberthalf.com/content/dam/roberthalf/rh.png"/> <meta property="og:image:type" content="image/png"/> <meta property="og:image:width" content="500"/> <meta property="og:image:height" content="500"/> <meta property="og:image:alt" content="rh-logo"/> <meta property="og:url" content="https://www.roberthalf.com/us/en/job-details/bookkeeper"/> <meta property="og:title" content="Bookkeeper Salary"/> <meta property="og:description" content="Explore Bookkeeper salary ranges to facilitate your next salary discussion"/> <meta name="title" content="Bookkeeper Salary"/> <meta name="description" content="Explore Bookkeeper salary ranges to facilitate your next salary discussion"/> <meta property="og:publication_time" content="2023-06-22T22:48:19+0000"/> <script> (function() { window.SM_SPLITSIGNAL = window.SM_SPLITSIGNAL || {ready: false} window.addEventListener( 'splitsignal.initialized', function() { if (!aemSettings.isReactApp) { window.SM_SPLITSIGNAL.ready = true } } ) var script = document.createElement('script') script.id = 'a4a03573-e3f5-4f01-8963-395af304b0b2' script.src = 'https://seoab.io/react/' script.type = 'module' script.defer = true document.head.appendChild(script) })() </script> <script type="application/ld+json"> { "@context": "http://schema.org", "@type": "WebPage", "name" : "Bookkeeper", "url": "https://www.roberthalf.com/us/en/job-details/bookkeeper", "isPartOf": { "@type": "WebSite", "name": "Robert Half", "url": "https://www.roberthalf.com/us/en", "publisher": { "type": "Organization", "name": "Robert Half", "legalName": "Robert Half Inc.", "url": "https://www.roberthalf.com/us/en", "@id": "https://www.roberthalf.com/us/en" } }, "mainEntity": [{"@context":"http://schema.org","@type":"Occupation","name":"Bookkeeper","description":"Candidates for bookkeeper positions should have solid communication, organizational and customer service skills. Technology expertise demands vary by company but may include proficiency in applications such as Microsoft Excel, Quickbooks or other small business accounting software. A high school diploma or equivalent is expected. Businesses often seek at least three years’ experience, although requirements differ significantly by firm.","estimatedSalary":{"@type":"MonetaryAmountDistribution","minValue":"54250","maxValue":"69000","name":"base","duration":"P1Y","currency":"USD","percentile25":"54250","median":"60750","percentile75":"69000"},"occupationLocation":{"@type":"country","name":"US"}}], "mainEntityOfPage": "https://www.roberthalf.com/us/en/job-details/bookkeeper" } </script> <script type="text/javascript"> window.addEventListener("load", () => { try { var articleSchema = document.querySelector("#articleSchema"); var jobpostingSchema = document.querySelector("#jobpostingSchema");//buildoccupationschema? var occupationSchema = document.querySelector("#occupationSchema");// buildOccupationSchema? if (articleSchema) { updateArticleSchema(articleSchema); } if (jobpostingSchema) { updateJobpostingSchema(jobpostingSchema); } if (occupationSchema) { updateOccupationSchema(occupationSchema); } } catch (error) { console.log(error); } }); const updateArticleSchema = (articleSchema) => { const articleSchemaText = articleSchema.text; const articlePlainText = removeTags(articleSchemaText); const articleJsonScript = JSON.parse(articlePlainText); if ( articleJsonScript.articleBody == null || articleJsonScript.articleBody === "" ) { replaceNullAndEmptyAttribute(articleJsonScript, "articleBody"); } if (articleJsonScript.headline == null || articleJsonScript.headline === "") { replaceNullAndEmptyAttribute(articleJsonScript, "headline"); } articleSchema.html(JSON.stringify(articleJsonScript)); }; const updateJobpostingSchema = (jobpostingSchema) => { const jobpostingSchemaText = jobpostingSchema.text; const jobpostingPlainText = removeTags(jobpostingSchemaText); const jobpostingJsonScript = JSON.parse(jobpostingPlainText); if ( jobpostingJsonScript.description == null || jobpostingJsonScript.description == "" ) { replaceNullAndEmptyAttribute(jobpostingJsonScript, "description"); } if (jobpostingJsonScript.title == null || jobpostingJsonScript.title == "") { replaceNullAndEmptyAttribute(jobpostingJsonScript, "title"); } jobpostingSchema.html(JSON.stringify(jobpostingJsonScript)); }; const updateOccupationSchema = (occupationSchema) => { const occupationSchemaText = occupationSchema.text; const occupationPlainText = removeTags(occupationSchemaText); const occupationJsonScript = JSON.parse(occupationPlainText); if ( occupationJsonScript.description == null || occupationJsonScript.description == "" ) { replaceNullAndEmptyAttribute(occupationJsonScript, "description"); } if (occupationJsonScript.name == null || occupationJsonScript.name == "") { replaceNullAndEmptyAttribute(occupationJsonScript, "name"); } occupationSchema.html(JSON.stringify(occupationJsonScript)); }; const removeTags = (str) => { if (str === null || str === "") { return false; } else { str = str.toString(); } // Regular expression to identify HTML tags in the input string. Replacing the identified HTML tag with a null string. str = str.replace(/(<([^>]+)>)/gi, ""); // Regular expression to identify enter in the input string. Replacing the identified enter with a null string. return (str = str.replace(/\r?\n|\r/g, "")); }; const replaceNullAndEmptyAttribute = (jsonEl, attr) => { let h1 = document.querySelector("[heading-tag='h1']"); if (h1) { const headline = jsonEl.attr("headline"); jsonEl[attr] = headline && headline.text ? headline.text : ""; } else { h1 = document.querySelector("h1"); jsonEl[attr] = h1 && h1.text ? h1.text : ""; } }; </script> <script async defer src="/etc.clientlibs/roberthalf/clientlibs/clientlib-clientId.lc-816e4fe05c72b7567d3214430c031c84-lc.min.js"></script> <script type="text/javascript"> function ready(a){if("function"!==typeof a)throw Error("Argument passed to ready should be a function");"loading"!=document.readyState?a():document.addEventListener?document.addEventListener("DOMContentLoaded",a,{once:!0}):document.attachEvent("onreadystatechange",function(){"loading"!=document.readyState&&a()})}; </script> <script async defer src="/etc.clientlibs/roberthalf/clientlibs/clientlib-base.lc-cd1db14a92651d76445b7ea2ff43a080-lc.min.js"></script> <!-- Language And Country en-us Country us--> <!-- OptanonConsentNoticeStart --> <script src="https://cdn.cookielaw.org/scripttemplates/otSDKStub.js" data-language="en-us" type="text/javascript" charset="UTF-8" data-domain-script="2a31b00d-1ad7-4a6f-aace-0bc849755db0" async defer></script> <script type="text/javascript"> function OptanonWrapper() { checkConsentValues(); } </script> <!-- OptanonConsentNoticeEnd --> <!-- Check Cookie Value Start--> <script type="text/javascript"> var isPerformanceCookiesChecked = false; function checkConsentValues() { var consentRatio = getOptanonConsentRatio(); if (consentRatio != null && consentRatio.includes("2:1")) { isPerformanceCookiesChecked = true; var oneTrustEvent = new CustomEvent("rh-onetrust-accepted", { "detail": "vanilla js version of one trust event" }); var oneTrustJSEvent = new CustomEvent("rh-onetrust-accepted-js", { "detail": "vanilla js version of one trust event" }); document.dispatchEvent(oneTrustJSEvent); document.dispatchEvent(oneTrustEvent); } } window.setTimeout(checkConsentValues, 2000); function getCookie(cname) { var name = cname + '='; var decodedCookie = decodeURIComponent(document.cookie); var ca = decodedCookie.split(';'); for (var i = 0; i < ca.length; i++) { var c = ca[i]; while (c.charAt(0) == ' ') { c = c.substring(1); } if (c.indexOf(name) == 0) { return c.substring(name.length, c.length); } } return false; } function getOptanonConsentRatio() { const queryParams = new URLSearchParams(getCookie("OptanonConsent")); return queryParams.get('groups'); } </script> <!-- Check Cookie Value End--> <!-- TealiumStart --> <script type="text/javascript"> var utag_data = {"pageType":"Lead Form Page","pageSection":"section","pageName":"English","countryCode":"us","currencyCode":"USD"}; // This script is provided, don't change without consulting the analytics team (function (a, b, c, d) { a = 'https://tags.roberthalf.com/usa2/prod/utag.js'; b = document; c = 'script'; d = b.createElement(c); d.src = a; d.type = 'text/java' + c; d.async = true; a = b.getElementsByTagName(c)[0]; a.parentNode.insertBefore(d, a); })(); </script> <script async defer src="/etc.clientlibs/roberthalf/clientlibs/clientlib-tealium.lc-1343a64b313c1ba8ca2cb65523ffa1e1-lc.min.js"></script> <!-- TealiumEnd --> <!-- InvocaStart --> <script> window.setTimeout(loadInvoca, 2000); function loadInvoca() { if (isPerformanceCookiesChecked) { // This script is provided, don't change without consulting the analytics team (function (i, n, v, o, c, a) { i.InvocaTagId = o; var s = n.createElement('script'); s.type = 'text/javascript'; s.async = true; s.src = ('https:' === n.location.protocol ? 'https://' : 'http://') + v; var fs = n.getElementsByTagName('script')[0]; fs.parentNode.insertBefore(s, fs); })(window, document, 'solutions.invocacdn.com/js/invoca-latest.min.js', '479/2192400593'); } else { document.addEventListener("rh-onetrust-accepted", loadInvoca); } } </script> <!-- InvocaEnd --> <!-- UtagStart --> <script> window.setTimeout(loadUtagSync, 2000); //Adding this function to prevent flicker happening because of utag.sync.js function makeBodyVisible() { let style = document.createElement("style"); style.textContent = "body { display: block !important; opacity: 1 !important; }"; if (document.body) { document.body.appendChild(style); } else { window.ready(function () { document.body.appendChild(style); }); } } function loadUtagSync() { if (isPerformanceCookiesChecked) { (function (document, scriptUrl) { makeBodyVisible(); var s = document.createElement('script'); s.type = 'text/javascript'; s.async = true; s.src = scriptUrl; var fs = document.getElementsByTagName('script')[0]; fs.parentNode.insertBefore(s, fs); })(document, 'https://tags.roberthalf.com/usa2/prod/utag.sync.js'); } else { document.addEventListener("rh-onetrust-accepted", loadUtagSync); } } </script> <!-- UtagEnd --> <script async src="/etc.clientlibs/core/wcm/components/commons/datalayer/v2/clientlibs/core.wcm.components.commons.datalayer.v2.lc-1e0136bad0acfb78be509234578e44f9-lc.min.js"></script> <script async src="/etc.clientlibs/core/wcm/components/commons/datalayer/acdl/core.wcm.components.commons.datalayer.acdl.lc-bf921af342fd2c40139671dbf0920a1f-lc.min.js"></script> </head> <body class="page basicpage" id="page-c51bee10f6" data-cmp-link-accessibility-enabled data-cmp-link-accessibility-text="opens in a new tab" data-cmp-data-layer-enabled data-cmp-data-layer-name="adobeDataLayer"> <script> var dataLayerName = 'adobeDataLayer' || 'adobeDataLayer'; window[dataLayerName] = window[dataLayerName] || []; window[dataLayerName].push({ page: JSON.parse("{\x22page\u002Dc51bee10f6\x22:{\x22@type\x22:\x22roberthalf\/components\/structure\/page\/page\x22,\x22repo:modifyDate\x22:\x222024\u002D11\u002D26T00:18:11Z\x22,\x22dc:title\x22:\x22JD\u002D02 | Role Details \u002D shell page\x22,\x22dc:description\x22:\x22Explore {jobTitle} salary ranges {locationPrefix} {location} to facilitate your next salary discussion\x22,\x22xdm:template\x22:\x22\/conf\/roberthalf\/settings\/wcm\/templates\/full\u002Dwidth\u002Dpage\u002Dcontent\x22,\x22xdm:language\x22:\x22en\u002DUS\x22,\x22xdm:tags\x22:[],\x22repo:path\x22:\x22\/content\/roberthalf\/us\/en\/job\u002Ddetails.html\x22}}"), event:'cmp:show', eventInfo: { path: 'page.page\u002Dc51bee10f6' } }); </script> <rhcl-base path="https://resources.roberthalfonline.com/rhcl/v25.3.0" locale="en-US"></rhcl-base> <div class="root container-fluid cmp-container"> <div id="container-da5f14ae6e" class="cmp-container"> <div class="aem-Grid aem-Grid--12 aem-Grid--default--12 "> <div class="experiencefragment aem-GridColumn aem-GridColumn--default--12"> <div id="experiencefragment-ca4ead7c74" class="cmp-experiencefragment cmp-experiencefragment--header"> <div id="container-d717616a81" class="cmp-container"> <div class="root container-fluid cmp-container"> <div class="cq-placeholder" data-emptytext="Navigation: Header"> </div> <div id="rh-nav" class="cmp-container"> <div id="skipToMainContent" data-skipToMainContent-label="Skip To Main Content"></div> <script> // needs to run once on any page with a nav header function identifyFirstComponent() { try { const excludedTags = ["RHCL-BLOCK-NAVIGATION", "RHCL-BLOCK-COOKIE-BAR"]; const rhclContentBlocks = Array.from(document.querySelectorAll("body *")) .filter( (elem) => elem.tagName.startsWith("RHCL-BLOCK") || elem.classList.contains("rh-homepage-hero") || elem.classList.contains("rh-first-component") ) .filter((elem) => !excludedTags.includes(elem.tagName)); const maxTries = 10; let tries = 1; const nav = document.querySelector("rhcl-block-navigation"); if (nav && nav.getAttribute("background") == "transparent") { // find first component if (rhclContentBlocks.length > 0) { rhclContentBlocks[0].setAttribute( "data-first-component-padded", "true" ); } else { tries++; if (tries <= maxTries) { setTimeout(identifyFirstComponent, 500); } } } else { const hero = document.querySelector(".rh-homepage-hero"); if (hero) { hero.removeAttribute("data-first-component-padded"); } } } catch (error) { console.log(error); } } window.ready(() => { window.dispatchEvent(new Event("scroll")); identifyFirstComponent(); }); </script> <rhcl-block-navigation branding-destination="/us/en" account-menu-label="My Account" branding-external="false" branding-title="Robert Half" sign-in-label="Sign in" sign-in-destination="/login.rhlogin?language=en&country=us" background="white" theme="light"> <rhcl-navigation-item slot="navigation-item" destination="/us/en/find-jobs" label="Find Jobs" cta-heading-label="Control your career. Find the right role for you - remote, hybrid or on-site." cta-label="Find your next job" cta-destination="/us/en/find-jobs" cta-external="false" cta-variant="primary"> <!-- using dynamic media template --> <img slot="accent-image" loading="lazy" fetchpriority="low" sizes="(min-width: 1024px) 307px,(min-width: 768px) 230px,(min-width: 0px) 288px" srcset="https://s7d9.scene7.com/is/image/roberthalfintl/sq1-nav-findjobs?$Squircle1-Large-1x$&fmt=webp-alpha 307w,https://s7d9.scene7.com/is/image/roberthalfintl/sq1-nav-findjobs?$Squircle1-Medium-1x$&fmt=webp-alpha 230w,https://s7d9.scene7.com/is/image/roberthalfintl/sq1-nav-findjobs?$Squircle1-Small-1x$&fmt=webp-alpha 288w" src="https://s7d9.scene7.com/is/image/roberthalfintl/sq1-nav-findjobs?$Squircle1-Large-1x$&fmt=webp-alpha" alt aria-hidden="true"/> <rhcl-list-base slot="secondary-nav-content"> <rhcl-menu-link slot="item"> <a slot="item" href="/us/en/jobs">Browse jobs</a> </rhcl-menu-link> <rhcl-menu-link slot="item"> <a slot="item" href="/us/en/find-jobs/upload-resume">Find the right job type for you</a> </rhcl-menu-link> <rhcl-menu-link slot="item"> <a slot="item" href="/us/en/find-jobs/partner">Explore how we help job seekers</a> </rhcl-menu-link> </rhcl-list-base> <rhcl-list-base slot="gradient-content" headline="Areas of expertise" layout="column"> <rhcl-menu-link slot="item"> <a slot="item" href="/us/en/accounting-finance">Finance and Accounting</a> </rhcl-menu-link> <rhcl-menu-link slot="item"> <a slot="item" href="/us/en/tech-it">Technology</a> </rhcl-menu-link> <rhcl-menu-link slot="item"> <a slot="item" href="/us/en/marketing-creative">Marketing and Creative</a> </rhcl-menu-link> <rhcl-menu-link slot="item"> <a slot="item" href="/us/en/administrative">Administrative and Customer Support</a> </rhcl-menu-link> <rhcl-menu-link slot="item"> <a slot="item" href="/us/en/legal">Legal</a> </rhcl-menu-link> </rhcl-list-base> </rhcl-navigation-item> <rhcl-navigation-item slot="navigation-item" destination="/us/en/hire-talent" label="Hire Talent" cta-heading-label="We're ready to help you hire talent at every level, from office support roles to C-suite." cta-label="Hire talent" cta-destination="/us/en/hire-talent" cta-external="false" cta-variant="primary"> <!-- using dynamic media template --> <img slot="accent-image" loading="lazy" fetchpriority="low" sizes="(min-width: 1024px) 307px,(min-width: 768px) 230px,(min-width: 0px) 288px" srcset="https://s7d9.scene7.com/is/image/roberthalfintl/sq1-nav-hiretalent?$Squircle1-Large-1x$&fmt=webp-alpha 307w,https://s7d9.scene7.com/is/image/roberthalfintl/sq1-nav-hiretalent?$Squircle1-Medium-1x$&fmt=webp-alpha 230w,https://s7d9.scene7.com/is/image/roberthalfintl/sq1-nav-hiretalent?$Squircle1-Small-1x$&fmt=webp-alpha 288w" src="https://s7d9.scene7.com/is/image/roberthalfintl/sq1-nav-hiretalent?$Squircle1-Large-1x$&fmt=webp-alpha" alt aria-hidden="true"/> <rhcl-list-base slot="secondary-nav-content" headline="Staffing"> <rhcl-menu-link slot="item"> <a slot="item" href="/us/en/hire-talent/find-candidates">Preview candidates</a> </rhcl-menu-link> <rhcl-menu-link slot="item"> <a slot="item" href="/us/en/hire-talent/flexible-staffing">Contract talent</a> </rhcl-menu-link> <rhcl-menu-link slot="item"> <a slot="item" href="/us/en/hire-talent/full-time-staffing">Permanent talent</a> </rhcl-menu-link> <rhcl-menu-link slot="item"> <a slot="item" href="/us/en/hire-talent/partner">Learn how we work with you</a> </rhcl-menu-link> </rhcl-list-base> <rhcl-list-base slot="secondary-nav-content" headline="Retained services"> <rhcl-menu-link slot="item"> <a slot="item" href="/us/en/hire-talent/executive-search">Executive search</a> </rhcl-menu-link> </rhcl-list-base> <rhcl-list-base slot="gradient-content" headline="Areas of expertise" layout="column"> <rhcl-menu-link slot="item"> <a slot="item" href="/us/en/accounting-finance">Finance and Accounting</a> </rhcl-menu-link> <rhcl-menu-link slot="item"> <a slot="item" href="/us/en/tech-it">Technology</a> </rhcl-menu-link> <rhcl-menu-link slot="item"> <a slot="item" href="/us/en/marketing-creative">Marketing and Creative</a> </rhcl-menu-link> <rhcl-menu-link slot="item"> <a slot="item" href="/us/en/administrative">Administrative and Customer Support</a> </rhcl-menu-link> <rhcl-menu-link slot="item"> <a slot="item" href="/us/en/legal">Legal</a> </rhcl-menu-link> </rhcl-list-base> </rhcl-navigation-item> <rhcl-navigation-item slot="navigation-item" destination="/us/en/consulting" label="Explore Consulting Solutions" cta-heading-label="See how our consulting capabilities can help transform your business." cta-label="Explore consulting solutions" cta-destination="/us/en/consulting" cta-external="false" cta-variant="primary"> <!-- using dynamic media template --> <img slot="accent-image" loading="lazy" fetchpriority="low" sizes="(min-width: 1024px) 307px,(min-width: 768px) 230px,(min-width: 0px) 288px" srcset="https://s7d9.scene7.com/is/image/roberthalfintl/sq1-nav-exploreconsultingsolutions?$Squircle1-Large-1x$&fmt=webp-alpha 307w,https://s7d9.scene7.com/is/image/roberthalfintl/sq1-nav-exploreconsultingsolutions?$Squircle1-Medium-1x$&fmt=webp-alpha 230w,https://s7d9.scene7.com/is/image/roberthalfintl/sq1-nav-exploreconsultingsolutions?$Squircle1-Small-1x$&fmt=webp-alpha 288w" src="https://s7d9.scene7.com/is/image/roberthalfintl/sq1-nav-exploreconsultingsolutions?$Squircle1-Large-1x$&fmt=webp-alpha" alt aria-hidden="true"/> <rhcl-list-base slot="gradient-content" headline="AREAS OF EXPERTISE" layout="column-two"> <rhcl-menu-link slot="item" description="Cloud • Cybersecurity • Data & Analytics • Data Privacy • Intelligent Automation • IT Service Desk"> <a slot="item" href="/us/en/consulting/tech">Technology</a> </rhcl-menu-link> <rhcl-menu-link slot="item" description="Internal Audit • Regulatory Compliance • Financial Crimes Compliance • Risk Management • Sarbanes-Oxley"> <a slot="item" href="/us/en/consulting/risk-compliance-audit">Risk, Audit and Compliance</a> </rhcl-menu-link> <rhcl-menu-link slot="item" description="Finance Transformation • Process Optimization • Finance Technology & Data • Reporting & Compliance • Cost & Performance Management"> <a slot="item" href="/us/en/consulting/finance">Finance and Accounting</a> </rhcl-menu-link> <rhcl-menu-link slot="item" description="Digital Transformation • Marketing Services • Marketing Technology • Creative and Design"> <a slot="item" href="/us/en/consulting/digital">Digital, Marketing and Customer Experience</a> </rhcl-menu-link> <rhcl-menu-link slot="item" description="Data Privacy • Legal Consulting • Transaction Services"> <a slot="item" href="/us/en/consulting/legal">Legal</a> </rhcl-menu-link> <rhcl-menu-link slot="item" description="Contact Centers • Sustainability • Operational Effectiveness • Supply Chain • Sourcing & Procurement"> <a slot="item" href="/us/en/consulting/administrative">Operations</a> </rhcl-menu-link> <rhcl-menu-link slot="item" description="HR Transformation • Employee Experience • Managed Talent • Future of Work • Organizational Transformation"> <a slot="item" href="/us/en/consulting/human-resources">Human Resources</a> </rhcl-menu-link> </rhcl-list-base> </rhcl-navigation-item> <rhcl-navigation-item slot="navigation-item" destination="/us/en/insights" label="Discover Insights" cta-heading-label="Make smarter decisions with the latest hiring trends and career insights." cta-label="Discover Insights" cta-destination="/us/en/insights" cta-external="false" cta-variant="primary"> <!-- using dynamic media template --> <img slot="accent-image" loading="lazy" fetchpriority="low" sizes="(min-width: 1024px) 307px,(min-width: 768px) 230px,(min-width: 0px) 288px" srcset="https://s7d9.scene7.com/is/image/roberthalfintl/sq1-nav-discoverinsights?$Squircle1-Large-1x$&fmt=webp-alpha 307w,https://s7d9.scene7.com/is/image/roberthalfintl/sq1-nav-discoverinsights?$Squircle1-Medium-1x$&fmt=webp-alpha 230w,https://s7d9.scene7.com/is/image/roberthalfintl/sq1-nav-discoverinsights?$Squircle1-Small-1x$&fmt=webp-alpha 288w" src="https://s7d9.scene7.com/is/image/roberthalfintl/sq1-nav-discoverinsights?$Squircle1-Large-1x$&fmt=webp-alpha" alt aria-hidden="true"/> <rhcl-list-base slot="secondary-nav-content"> <rhcl-menu-link slot="item"> <a slot="item" href="/us/en/insights/salary-guide">2025 Salary Guide</a> </rhcl-menu-link> <rhcl-menu-link slot="item"> <a slot="item" href="/us/en/insights/salary-hiring-trends/demand-for-skilled-talent">Demand for Skilled Talent Report</a> </rhcl-menu-link> <rhcl-menu-link slot="item"> <a slot="item" href="/us/en/insights/building-tech-teams">Building Future-Forward Tech Teams</a> </rhcl-menu-link> <rhcl-menu-link slot="item"> <a slot="item" href="/us/en/insights/job-market-outlook">Job Market Outlook</a> </rhcl-menu-link> <rhcl-menu-link slot="item"> <a slot="item" href="https://press.roberthalf.com/">Press Room</a> </rhcl-menu-link> </rhcl-list-base> <rhcl-list-base slot="gradient-content" headline="Trending topics" layout="column"> <rhcl-menu-link slot="item"> <a slot="item" href="/us/en/insights/salary-hiring-trends">Salary and hiring trends</a> </rhcl-menu-link> <rhcl-menu-link slot="item"> <a slot="item" href="/us/en/insights/flexible-working">Adaptive working</a> </rhcl-menu-link> <rhcl-menu-link slot="item"> <a slot="item" href="/us/en/insights/competitive-advantage">Competitive advantage</a> </rhcl-menu-link> <rhcl-menu-link slot="item"> <a slot="item" href="/us/en/insights/work-life-balance">Work/life balance</a> </rhcl-menu-link> <rhcl-menu-link slot="item"> <a slot="item" href="/us/en/insights/diversity-equity-inclusion">Diversity and inclusion</a> </rhcl-menu-link> </rhcl-list-base> </rhcl-navigation-item> <rhcl-site-search slot="site-search" search-destination="/us/en/search?param=:1" max-results="3" theme="light"> <a slot="quick-link" href="/us/en/jobs"><rhcl-typography variant="body2">Browse jobs</rhcl-typography></a> <a slot="quick-link" href="/us/en/hire-talent/form"><rhcl-typography variant="body2">Find your next hire</rhcl-typography></a> <a slot="quick-link" href="/us/en/locations"><rhcl-typography variant="body2">Our locations</rhcl-typography></a> </rhcl-site-search> <rhcl-list slot="account-menu" data-header-menu-endpoint="/graphql/execute.json/roberthalf/headerMenuItems" data-folder-path="/content/dam/roberthalf/content-fragments/en_us/account-menu-links" data-account-menu-config="{"[lux-tokens:lightning-page]":"https://online.roberthalf.com/s","[lux-tokens:visualforce-page]":"https://online.roberthalf.com","[lux-tokens:rhdirect-page]":"https://online.roberthalf.com/mpredirect","[site:url]":"https://www.roberthalf.com/"}" headline=""/> </rhcl-block-navigation> </div> <script type="text/javascript"> function initializeAccountMenu() { var accountMenu = document.querySelector('rhcl-list[slot="account-menu"]'); var userId = getCookie("apex__userid"); var userPermissions = getCookie("apex__psa"); if (!userId || !userPermissions) { if (accountMenu) { accountMenu.remove(); } return; } var userFirstName = getCookie("apex__firstname"); var userLastName = getCookie("apex__lastname"); accountMenu.setAttribute("headline", userFirstName + " " + userLastName); var userPermissionsArray = userPermissions.split(","); var accountMenuLinks = []; var accountMenuLinksAPI = accountMenu.getAttribute("data-header-menu-endpoint"); var accountMenuLinkCFFolderPath = accountMenu.getAttribute("data-folder-path"); var accountMenuConfig = accountMenu.getAttribute("data-account-menu-config"); if (!accountMenuLinkCFFolderPath) { accountMenuLinkCFFolderPath = ""; } var completeAPI = accountMenuLinksAPI + ";cfFolderPath=" + accountMenuLinkCFFolderPath; fetch(completeAPI) .then(response => { if (!response.ok) { throw new Error('Network response was not ok'); } return response.json(); }) .then(data => { accountMenuLinks = data.data.headerMenuItemList.items; accountMenuLinks.sort(function (a, b) { return a.displayWeight - b.displayWeight }); for (var i = 0; i < accountMenuLinks.length; i++) { var accountMenuLink = accountMenuLinks[i]; if ((accountMenuLink.showToAllLoggedInUsers != null && accountMenuLink.showToAllLoggedInUsers == true) || doPermissionsMatch(accountMenuLink.permissions, userPermissionsArray)) { var menuItemElement = document.createElement("rhcl-menu-link"); var link, mobileLink; menuItemElement.setAttribute("slot", "item"); menuItemElement.setAttribute("label", accountMenuLink.linkDisplayText); menuItemElement.setAttribute("external", accountMenuLink.linkTarget); if(accountMenuLink.linkUrl){ link = modifyLink(accountMenuLink.linkUrl, accountMenuConfig); }else{ link=""; } if(accountMenuLink.mobileUrlOverride){ mobileLink = modifyLink(accountMenuLink.mobileUrlOverride, accountMenuConfig); }else{ mobileLink=""; } menuItemElement.setAttribute("destination", link); menuItemElement.setAttribute("mobile-destination", mobileLink); accountMenu.append(menuItemElement); } } }) .catch(error => { console.error('There was a problem with the fetching the account menu items:', error); }); } function getCookie(cname) { var name = cname + "="; var decodedCookie = decodeURIComponent(document.cookie); var ca = decodedCookie.split(';'); for (var i = 0; i < ca.length; i++) { var c = ca[i]; while (c.charAt(0) == ' ') { c = c.substring(1); } if (c.indexOf(name) == 0) { return c.substring(name.length, c.length); } } return ""; } function doPermissionsMatch(array1, array2) { if (!array1 || !array2) { return false; } for (let i = 0; i < array2.length; i++) { if (array1.includes(array2[i].trim())) { return true; } } return false; } function modifyLink(link, accountMenuConfig) { if (accountMenuConfig) { var accountMenuConfigJSON = JSON.parse(accountMenuConfig); for (var key in accountMenuConfigJSON) { if (accountMenuConfigJSON.hasOwnProperty(key)) { link = link.replace(key, accountMenuConfigJSON[key]); } } } return link; } initializeAccountMenu(); </script> </div> </div> </div> </div> <div class="root container-fluid cmp-container aem-GridColumn aem-GridColumn--default--12"> <div id="container-08fa65cc71" class="cmp-container"> <div class="aem-Grid aem-Grid--12 aem-Grid--default--12 "> <div class="root container-fluid cmp-container aem-GridColumn aem-GridColumn--default--12"> <script type="text/javascript"> window.ready(function () { // check for salary data if(aemSettings.roleDetailsHasNoData == "true" && aemSettings.isEditMode == "false") { window.location.href = aemSettings.roleDetailsErrorPage; } // transfer headline to DCB let jobTitle = document .querySelector('.rh-role-details-data') ?.getAttribute("data-job-title"); let dcb = document.querySelector("rhcl-block-dynamic-cards"); if (jobTitle && dcb) { dcb.setAttribute( "headline", dcb.getAttribute("data-original-headline").replace("{jobTitle}", jobTitle) ); } }); </script> <style> .rh-role-details__standalone-headline{display:block;margin-top:var(--spacing-block-outer-default)}.rh-role-details-data{background-image:-webkit-gradient(linear,left top,left bottom,from(var(--rhcl-background-secondary-sandstone)),to(transparent));background-image:linear-gradient(to bottom,var(--rhcl-background-secondary-sandstone),transparent);border-radius:var(--rhcl-border-radius-sm);-webkit-box-shadow:var(--rhcl-elevation--box-8);box-shadow:var(--rhcl-elevation--box-8);margin-bottom:var(--rhcl-spacing-12-x);margin-top:var(--rhcl-spacing-12-x);padding-bottom:var(--rhcl-spacing-6-x);padding-top:var(--rhcl-spacing-8-x)}@media screen and (min-width:768px){.rh-role-details-data{border-radius:var(--rhcl-border-radius-md);padding-bottom:var(--rhcl-spacing-12-x);padding-top:var(--rhcl-spacing-16-x)}}@media screen and (min-width:1024px){.rh-role-details-data{border-radius:var(--rhcl-border-radius-lg)}}.rh-role-details-data__heading{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;margin-bottom:var(--rhcl-spacing-6-x)}@media screen and (min-width:768px){.rh-role-details-data__heading{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}}.rh-role-details-data__heading rhcl-icon{display:none}@media screen and (min-width:768px){.rh-role-details-data__heading rhcl-icon{color:var(--rhcl-text-secondary);display:inline-block;margin-right:var(--rhcl-spacing-3-x)}}.rh-role-details-data__salary-range{margin-bottom:var(--rhcl-spacing-12-x)}.rh-role-details-data__table-wrapper,.rh-role-details-data__upper{padding-left:var(--rhcl-spacing-4-x);padding-right:var(--rhcl-spacing-4-x)}@media screen and (min-width:768px){.rh-role-details-data__table-wrapper,.rh-role-details-data__upper{padding-left:var(--rhcl-spacing-24-x);padding-right:var(--rhcl-spacing-24-x)}}.rh-role-details-data__percentile{text-align:center}.rh-role-details-data__percentile-heading{-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-color:var(--rhcl-background-default);border:1px solid var(--rhcl-interaction-border);border-radius:75pt;display:-webkit-box;display:-ms-flexbox;display:flex;margin:0 auto;margin-bottom:var(--rhcl-spacing-4-x);padding:var(--rhcl-spacing-2-x) var(--rhcl-spacing-8-x);width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}@media screen and (min-width:768px){.rh-role-details-data__percentile-heading{margin-bottom:var(--rhcl-spacing-6-x)}.rh-role-details-data__percentile-heading rhcl-icon{display:none}}.rh-role-details-data__percentile-heading--low rhcl-icon{color:var(--rhcl-data-visualization-primary-solid-01)}.rh-role-details-data__percentile-heading--mid rhcl-icon{color:var(--rhcl-data-visualization-primary-solid-02)}.rh-role-details-data__percentile-heading--high rhcl-icon{color:var(--rhcl-data-visualization-primary-solid-03)}.rh-role-details-data__percentile-value{margin-bottom:var(--rhcl-spacing-4-x)}@media screen and (min-width:768px){.rh-role-details-data__percentile-value{margin-bottom:var(--rhcl-spacing-6-x)}}.rh-role-details-data__percentile-bar,.rh-role-details-data__percentile-triangle{display:none}@media screen and (min-width:768px){.rh-role-details-data__percentile-bar{-webkit-box-orient:vertical;-webkit-box-direction:normal;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;height:24px;margin-bottom:var(--rhcl-spacing-10-x);margin-left:calc(var(--bs-gutter-x)/2*-1 + 1.5px);margin-right:calc(var(--bs-gutter-x)/2*-1 + 1.5px)}.rh-role-details-data__percentile-bar-triangle{border-left:8px solid transparent;border-right:8px solid transparent;border-top:8px solid #000;height:0;margin:0 auto;margin-bottom:var(--rhcl-spacing-2-x);width:0}.rh-role-details-data__percentile-bar-triangle--low{border-top-color:var(--rhcl-data-visualization-primary-solid-01)}.rh-role-details-data__percentile-bar-triangle--mid{border-top-color:var(--rhcl-data-visualization-primary-solid-02)}.rh-role-details-data__percentile-bar-triangle--high{border-top-color:var(--rhcl-data-visualization-primary-solid-03)}.rh-role-details-data__percentile-bar--low{--rh-sg-bar-triangle-color:var(--rhcl-data-visualization-primary-solid-01);background-color:var(--rhcl-data-visualization-primary-solid-01);border-bottom-left-radius:75pt;border-top-left-radius:75pt}.rh-role-details-data__percentile-bar--mid{--rh-sg-bar-triangle-color:var(--rhcl-data-visualization-primary-solid-02);background-color:var(--rhcl-data-visualization-primary-solid-02)}.rh-role-details-data__percentile-bar--high{--rh-sg-bar-triangle-color:var(--rhcl-data-visualization-primary-solid-03);background-color:var(--rhcl-data-visualization-primary-solid-03);border-bottom-right-radius:75pt;border-top-right-radius:75pt}}.rh-role-details-data__percentile-copy{margin-bottom:var(--rhcl-spacing-6-x)}@media screen and (min-width:768px){.rh-role-details-data__percentile-copy{margin-bottom:0}}.rh-role-details-data__percentile-copy rhcl-heading{display:block;margin-bottom:var(--rhcl-spacing-2-x)}@media screen and (min-width:768px){.rh-role-details-data__percentile-copy rhcl-heading{margin-bottom:var(--rhcl-spacing-6-x)}}.rh-role-details-data__legal-copy{display:block;margin-top:var(--rhcl-spacing-8-x)}.rh-role-details-data__lower{border-top:1px solid var(--rhcl-interaction-border);margin-top:var(--rhcl-spacing-10-x);padding-top:var(--rhcl-spacing-12-x)}.rh-role-details-data__table-heading{display:block;margin-bottom:var(--rhcl-spacing-12-x)}.rh-role-details-data__table-wrapper rhcl-button{display:block;margin:0 auto;margin-top:var(--rhcl-spacing-6-x);text-align:center} </style> <rhcl-block-paired-content variant="wide-data"> <h1 slot="headline">Bookkeeper</h1> <rhcl-copy-section slot="section"> <h2 slot="headline">Bookkeeper Job Description</h2> <rhcl-typography slot="">Candidates for bookkeeper positions should have solid communication, organizational and customer service skills. Technology expertise demands vary by company but may include proficiency in applications such as Microsoft Excel, Quickbooks or other small business accounting software. A high school diploma or equivalent is expected. Businesses often seek at least three years’ experience, although requirements differ significantly by firm.</rhcl-typography></rhcl-copy-section> <rhcl-copy-section slot="section"> <h2 slot="headline">Typical bookkeeper duties:</h2> <rhcl-typography slot=""><rhcl-list-base><rhcl-list-item-base slot="item">Reconciling bank statements</rhcl-list-item-base><rhcl-list-item-base slot="item">Processing payroll, accounts payable and accounts receivable</rhcl-list-item-base><rhcl-list-item-base slot="item">Posting and updating journal entries</rhcl-list-item-base><rhcl-list-item-base slot="item">Performing month-end closings</rhcl-list-item-base><rhcl-list-item-base slot="item">Tracking fixed assets and preparing depreciation schedules</rhcl-list-item-base><rhcl-list-item-base slot="item">Preparing the trial balance</rhcl-list-item-base></rhcl-list-base></rhcl-typography></rhcl-copy-section> <rhcl-copy-section slot="section"> <h2 slot="headline"></h2> </rhcl-copy-section> <rhcl-copy-section slot="section"> <h2 slot="headline">Looking for a bookkeeper or a bookkeeper job?</h2> <rhcl-typography slot=""><a href="/us/en/find-jobs/upload-resume">Submit your resume</a> or <a href="/us/en/find-your-solution">request talent now</a> and our expert recruiters will be with you shortly.</rhcl-typography><rhcl-typography slot="">Robert Half can help you with your <a href="/us/en/accounting-finance">bookkeeper staffing</a> needs.</rhcl-typography></rhcl-copy-section> <!-- Hide skills list --> <rhcl-content-card slot="content-card" headline="SALARY RANGE" copy="$54,250 - $69,000" variant="data-list" layout="icon-highlights" subheadline="SKILLS"> </rhcl-content-card> <!-- <sly data-sly-test="$54,250 - $69,000"> <rhcl-content-card slot="content-card" headline="SALARY RANGE" copy="$54,250 - $69,000" variant="data-list" layout="icon-highlights" subheadline="SKILLS"> <sly data-sly-list=""> <div slot="subcopy"></div> </sly> </rhcl-content-card> </sly> --> </rhcl-block-paired-content> <div class="rhcl-content-container"> <div class="rh-role-details-data" data-job-title="Bookkeeper"> <div class="rh-role-details-data__upper"> <div class="rh-role-details-data__heading"> <rhcl-icon icon="flag"></rhcl-icon><rhcl-heading variant="display3">Salary for Bookkeeper</rhcl-heading> </div> <div class="rh-role-details-data__salary-range"><rhcl-heading variant="display1" modifier="centered"><rhcl-currency rounded="true" code="USD">54250</rhcl-currency> - <rhcl-currency rounded="true" code="USD">69000</rhcl-currency></rhcl-heading></div> <div class="rh-role-details-data__percentiles-wrapper"> <div class="row"> <div class="rh-role-details-data__percentile rh-role-details-data__percentile--low col-12 col-md-4"> <div class="rh-role-details-data__percentile-heading rh-role-details-data__percentile-heading--low"> <rhcl-icon icon="circle" weight="solid"></rhcl-icon><rhcl-heading variant="display6" modifier="centered">25th percentile</rhcl-heading> </div> <div class="rh-role-details-data__percentile-value rh-role-details-data__percentile-value--low"> <rhcl-heading variant="display2" modifier="centered"><rhcl-currency rounded="true" code="USD">54250</rhcl-heading></rhcl-heading> </div> <div class="rh-role-details-data__percentile-bar-triangle rh-role-details-data__percentile-bar-triangle--low"> </div> <div class="rh-role-details-data__percentile-bar rh-role-details-data__percentile-bar--low"></div> <div class="rh-role-details-data__percentile-copy rh-role-details-data__percentile-copy--low"> <rhcl-typography variant="body3" modifier="centered">The candidate is new to the role and building the needed skills, experience and autonomy.</rhcl-typography> <rhcl-typography variant="body3" modifier="centered"></rhcl-typography> </div> </div> <div class="rh-role-details-data__percentile rh-role-details-data__percentile--mid col-12 col-md-4"> <div class="rh-role-details-data__percentile-heading rh-role-details-data__percentile-heading--mid"> <rhcl-icon icon="circle" weight="solid"></rhcl-icon><rhcl-heading variant="display6" modifier="centered">50th percentile</rhcl-heading> </div> <div class="rh-role-details-data__percentile-value rh-role-details-data__percentile-value--mid"> <rhcl-heading variant="display2" modifier="centered"><rhcl-currency rounded="true" code="USD">60750</rhcl-currency></rhcl-heading> </div> <div class="rh-role-details-data__percentile-bar-triangle rh-role-details-data__percentile-bar-triangle--mid"> </div> <div class="rh-role-details-data__percentile-bar rh-role-details-data__percentile-bar--mid"></div> <div class="rh-role-details-data__percentile-copy rh-role-details-data__percentile-copy--mid"> <rhcl-typography variant="body3" modifier="centered">The candidate has the experience to perform core responsibilities without direct supervision and is comfortable with the role’s processes and subject matter.</rhcl-typography> <rhcl-typography variant="body3" modifier="centered"></rhcl-typography> </div> </div> <div class="rh-role-details-data__percentile rh-role-details-data__percentile--high col-12 col-md-4"> <div class="rh-role-details-data__percentile-heading rh-role-details-data__percentile-heading--high"> <rhcl-icon icon="circle" weight="solid"></rhcl-icon><rhcl-heading variant="display6" modifier="centered">75th percentile</rhcl-heading> </div> <div class="rh-role-details-data__percentile-value rh-role-details-data__percentile-value--high"> <rhcl-heading variant="display2" modifier="centered"><rhcl-currency rounded="true" code="USD">69000</rhcl-currency></rhcl-heading> </div> <div class="rh-role-details-data__percentile-bar-triangle rh-role-details-data__percentile-bar-triangle--high"> </div> <div class="rh-role-details-data__percentile-bar rh-role-details-data__percentile-bar--high"></div> <div class="rh-role-details-data__percentile-copy rh-role-details-data__percentile-copy--high"> <rhcl-typography variant="body3" modifier="centered">The candidate delivers value beyond the stated job duties, has advanced qualifications and experience, and is ready for the next career level.</rhcl-typography> <rhcl-typography variant="body3" modifier="centered"></rhcl-typography> </div> </div> </div> <rhcl-typography class="rh-role-details-data__legal-copy" variant="legal" modifier="centered"></rhcl-typography> </div> </div> <div class="rh-role-details-data__lower"> <div class="rh-role-details-data__table-wrapper"> <rhcl-heading variant="display3" modifier="centered" class="rh-role-details-data__table-heading">Projected salaries for related positions</rhcl-heading> <rhcl-table variant="themed" theme="primary"> <rhcl-heading slot="heading">Position title</rhcl-heading> <rhcl-heading slot="heading">25th percentile</rhcl-heading> <rhcl-heading slot="heading">50th percentile</rhcl-heading> <rhcl-heading slot="heading">75th percentile</rhcl-heading> <rhcl-table-row slot="row"> <rhcl-heading slot="heading"><a href="/us/en/job-details/full-charge-bookkeeper">Full Charge Bookkeeper</a></rhcl-heading> <rhcl-typography slot="cell"><rhcl-currency rounded="true" code="USD">60000</rhcl-currency></rhcl-typography> <rhcl-typography slot="cell"><rhcl-currency rounded="true" code="USD">68500</rhcl-currency></rhcl-typography> <rhcl-typography slot="cell"><rhcl-currency rounded="true" code="USD">80000</rhcl-currency></rhcl-typography> </rhcl-table-row> <rhcl-table-row slot="row"> <rhcl-heading slot="heading"><a href="/us/en/job-details/accounting-specialist">Accounting Specialist</a></rhcl-heading> <rhcl-typography slot="cell"><rhcl-currency rounded="true" code="USD">44250</rhcl-currency></rhcl-typography> <rhcl-typography slot="cell"><rhcl-currency rounded="true" code="USD">50250</rhcl-currency></rhcl-typography> <rhcl-typography slot="cell"><rhcl-currency rounded="true" code="USD">54000</rhcl-currency></rhcl-typography> </rhcl-table-row> </rhcl-table> <rhcl-button destination="/us/en/insights/salary-guide/calculator" label="Explore More Salaries" size="large" variant="secondary"> </div> </div> </div> <script> aemSettings.roleDetailsErrorPage = "\/content\/roberthalf\/us\/en\/job\u002Ddetails\u002Dall"; aemSettings.roleDetailsHasNoData = "false"; aemSettings.isEditMode = "false"; </script> </div></div> <div class="root container-fluid cmp-container aem-GridColumn aem-GridColumn--default--12"> <div class="cq-placeholder" data-emptytext="PFB.001 Paginated Features Block"></div> <rhcl-block-paginated-feature headline="Explore exclusive insights" heading-tag="h2"> <rhcl-promo variant="standard" headline="Get in the know" copy="Make more informed decisions with our Salary Guide." cta-label="View our 2025 Salary Guide" cta-destination="/us/en/insights/salary-guide" width="full" theme="primary-light" layout="media-right" image-anchor="center" image-anchor-sm="center" slot="promo"> <img slot="image" loading="lazy" fetchpriority="low" src="/content/dam/roberthalf/images/deco/rt1/rt1-2151833739.png" alt/> </rhcl-promo> <rhcl-promo variant="standard" headline="Find and keep talent" copy="Learn what workers are looking for in today’s market." cta-label="Get insights" cta-destination="/us/en/insights/salary-hiring-trends/demand-for-skilled-talent" width="full" theme="primary-dark" layout="media-right" image-anchor="bottom" image-anchor-sm="center" slot="promo"> <img slot="image" loading="lazy" fetchpriority="low" src="/content/dam/roberthalf/images/deco/pr1/pr1-dfst24-0324.png" alt/> </rhcl-promo> </rhcl-block-paginated-feature> </div> <div class="root container-fluid cmp-container aem-GridColumn aem-GridColumn--default--12"> <div class="cmp-dynamiccard" data-cmp-is="dynamiccard" data-useSalesforcePreference="false" data-hide="false" data-isloggedin="false"> <rhcl-block-dynamic-cards data-original-headline="Newest {jobTitle} jobs" min-jobs="1"> <h2 slot="headline">Newest Bookkeeper jobs</h2> <a slot="cta" href="/us/en/jobs" target="_self">Search Jobs</a> <rhcl-job-card slot="card" type="Contract / Temporary to Hire" location="Philadelphia, PA" salary-min="21.00" salary-max="23.00" salary-currency="USD" salary-period="Hourly" date="2024-11-23T04:24:28Z" date-style="relative" job-id="03720-0013117829-usen" destination="https://www.roberthalf.com/us/en/job/philadelphia-pa/bookkeeper/03720-0013117829-usen" save-status="none"> <a href="https://www.roberthalf.com/us/en/job/philadelphia-pa/bookkeeper/03720-0013117829-usen" slot="headline">Bookkeeper</a> </rhcl-job-card> <rhcl-job-card slot="card" type="Permanent" location="Phoenix, AZ" salary-min="60000.00" salary-max="85000.00" salary-currency="USD" salary-period="Yearly" date="2024-11-01T15:54:01Z" date-style="relative" job-id="00200-0013078743-usen" destination="https://www.roberthalf.com/us/en/job/phoenix-az/bookkeeper/00200-0013078743-usen" save-status="none"> <a href="https://www.roberthalf.com/us/en/job/phoenix-az/bookkeeper/00200-0013078743-usen" slot="headline">Bookkeeper</a> </rhcl-job-card> <rhcl-job-card slot="card" type="Permanent" location="Chanhassen, MN" salary-min="39000.00" salary-max="42000.00" salary-currency="USD" salary-period="Yearly" date="2024-11-24T00:20:09Z" date-style="relative" job-id="02300-0013110074-usen" destination="https://www.roberthalf.com/us/en/job/chanhassen-mn/bookkeeper/02300-0013110074-usen" save-status="none"> <a href="https://www.roberthalf.com/us/en/job/chanhassen-mn/bookkeeper/02300-0013110074-usen" slot="headline">Bookkeeper</a> </rhcl-job-card> <rhcl-job-card slot="card" type="Temporary" location="Woodland Hills, CA" salary-min="25.00" salary-max="35.00" salary-currency="USD" salary-period="Hourly" date="2024-11-15T08:04:44Z" date-style="relative" job-id="00480-9504043165-usen" destination="https://www.roberthalf.com/us/en/job/woodland-hills-ca/bookkeeper/00480-9504043165-usen" save-status="none"> <a href="https://www.roberthalf.com/us/en/job/woodland-hills-ca/bookkeeper/00480-9504043165-usen" slot="headline">Bookkeeper</a> </rhcl-job-card> <rhcl-typography slot="no-results" tag="p" theme="standard" variant="body1"> </rhcl-typography> <a href="/us/en/jobs/all/bookkeeper" slot="cta-card" target="_self">See More</a> </rhcl-block-dynamic-cards> </div> <script type="text/javascript"> window.ready(function () { const dynamicCardEl = document.querySelector(".cmp-dynamiccard") var salesForcePreference = dynamicCardEl.getAttribute("data-usesalesforcepreference") == "true"; var hideFromGuestUser = dynamicCardEl.getAttribute("data-hide") == "true"; var isUserLoggedIn = dynamicCardEl.getAttribute("data-isloggedin") == "true"; if (salesForcePreference && hideFromGuestUser) { if (!isUserLoggedIn) { document.querySelector("rhcl-block-dynamic-cards").style.display = "none"; } else { document.querySelector("rhcl-block-dynamic-cards").style.display = "block"; } } }); </script> </div> <div class="root container-fluid cmp-container aem-GridColumn aem-GridColumn--default--12"> <div class="cq-placeholder" data-emptytext="PC.001 Paired Content Block: Split"></div> <rhcl-block-paired-content variant="split" layout="media-left" accent-variant="image-rounded"> <h2 slot="headline">Hiring? Start here.</h2> <rhcl-typography slot="copy">Access millions of skilled contract and permanent candidates at every level from support roles to C-suite, and pinpoint the talent you need using our industry-leading matching technology.</rhcl-typography> <!-- using dynamic media template --> <img slot="accent-image" loading="lazy" fetchpriority="low" sizes="(min-width: 1024px) 840px,(min-width: 768px) 619px,(min-width: 0px) 420px" srcset="https://s7d9.scene7.com/is/image/roberthalfintl/rt1-1712082700?$Rectangle1-Large-1x$&fmt=webp-alpha 840w,https://s7d9.scene7.com/is/image/roberthalfintl/rt1-1712082700?$Rectangle1-Medium-1x$&fmt=webp-alpha 619w,https://s7d9.scene7.com/is/image/roberthalfintl/rt1-1712082700?$Rectangle1-Small-1x$&fmt=webp-alpha 420w" src="https://s7d9.scene7.com/is/image/roberthalfintl/rt1-1712082700?$Rectangle1-Large-1x$&fmt=webp-alpha" alt aria-hidden="true"/> <a slot="primary-cta" href="/us/en/find-your-solution" target="_self">Find your next hire</a> </rhcl-block-paired-content> </div> </div> </div> </div> <div class="experiencefragment aem-GridColumn aem-GridColumn--default--12"> <div id="experiencefragment-8082353bc2" class="cmp-experiencefragment cmp-experiencefragment--footer"> <div id="container-cec186e8c7" class="cmp-container"> <div class="aem-Grid aem-Grid--12 aem-Grid--default--12 "> <div class="footer aem-GridColumn aem-GridColumn--default--12"> <rhcl-footer logo-destination="/us/en" variant="default"> <rhcl-list-base slot="menu" headline="Services" headline-tag="h2"> <rhcl-menu-link slot="item" data-modal-identifier="linklist_1_modal_1"> <a slot="item" href="/us/en/jobs">Browse Jobs</a> </rhcl-menu-link> <rhcl-menu-link slot="item" data-modal-identifier="linklist_1_modal_2"> <a slot="item" href="/us/en/hire-talent/flexible-staffing">Contract Talent</a> </rhcl-menu-link> <rhcl-menu-link slot="item" data-modal-identifier="linklist_1_modal_3"> <a slot="item" href="/us/en/hire-talent/full-time-staffing">Permanent Talent</a> </rhcl-menu-link> <rhcl-menu-link slot="item" data-modal-identifier="linklist_1_modal_4"> <a slot="item" href="/us/en/consulting">Consulting Solutions</a> </rhcl-menu-link> </rhcl-list-base> <rhcl-list-base slot="menu" headline="Areas of Expertise" headline-tag="h2"> <rhcl-menu-link slot="item" data-modal-identifier="linklist_2_modal_1"> <a slot="item" href="/us/en/accounting-finance">Finance & Accounting</a> </rhcl-menu-link> <rhcl-menu-link slot="item" data-modal-identifier="linklist_2_modal_2"> <a slot="item" href="/us/en/tech-it">Technology</a> </rhcl-menu-link> <rhcl-menu-link slot="item" data-modal-identifier="linklist_2_modal_3"> <a slot="item" href="/us/en/marketing-creative">Marketing & Creative</a> </rhcl-menu-link> <rhcl-menu-link slot="item" data-modal-identifier="linklist_2_modal_4"> <a slot="item" href="/us/en/administrative">Administrative & Customer Support</a> </rhcl-menu-link> <rhcl-menu-link slot="item" data-modal-identifier="linklist_2_modal_5"> <a slot="item" href="/us/en/legal">Legal</a> </rhcl-menu-link> </rhcl-list-base> <rhcl-list-base slot="menu" headline="Resources & Tools" headline-tag="h2"> <rhcl-menu-link slot="item" data-modal-identifier="linklist_3_modal_1"> <a slot="item" href="/us/en/insights">Discover Insights</a> </rhcl-menu-link> <rhcl-menu-link slot="item" data-modal-identifier="linklist_3_modal_2"> <a slot="item" href="/us/en/pay">Invoice</a> </rhcl-menu-link> <rhcl-menu-link slot="item" data-modal-identifier="linklist_3_modal_3"> <a slot="item" href="/us/en/job-details-all">Job Directory</a> </rhcl-menu-link> <rhcl-menu-link slot="item" data-modal-identifier="linklist_3_modal_4"> <a slot="item" href="/us/en/insights/salary-guide">Salary Guide</a> </rhcl-menu-link> <rhcl-menu-link slot="item" data-modal-identifier="linklist_3_modal_5"> <a slot="item" href="/us/en/login">Time Reports</a> </rhcl-menu-link> <rhcl-menu-link slot="item" data-modal-identifier="linklist_3_modal_6"> <a slot="item" href="/us/en/contact">Contact Us</a> </rhcl-menu-link> </rhcl-list-base> <rhcl-list-base slot="menu" headline="About" headline-tag="h2"> <rhcl-menu-link slot="item" data-modal-identifier="linklist_4_modal_1"> <a slot="item" href="/us/en/about/about-robert-half">About Robert Half</a> </rhcl-menu-link> <rhcl-menu-link slot="item" data-modal-identifier="linklist_4_modal_2"> <a slot="item" href="/us/en/about/leadership">Leadership</a> </rhcl-menu-link> <rhcl-menu-link slot="item" data-modal-identifier="linklist_4_modal_3"> <a slot="item" href="https://careers.roberthalf.com/global/en/home">Careers With Us</a> </rhcl-menu-link> <rhcl-menu-link slot="item" data-modal-identifier="linklist_4_modal_4"> <a slot="item" href="/us/en/locations">Locations</a> </rhcl-menu-link> <rhcl-menu-link slot="item" data-modal-identifier="linklist_4_modal_5"> <a slot="item" href="/us/en/about/investor-center">Investor Center</a> </rhcl-menu-link> <rhcl-menu-link slot="item" data-modal-identifier="linklist_4_modal_6"> <a slot="item" href="https://press.roberthalf.com/">Press</a> </rhcl-menu-link> <rhcl-menu-link slot="item" data-modal-identifier="linklist_4_modal_7"> <a slot="item" href="/us/en/about/our-company/brands">Our Brands</a> </rhcl-menu-link> <rhcl-menu-link slot="item" data-modal-identifier="linklist_4_modal_8"> <a slot="item" href="/us/en/about/supplier-relations">Supplier Relations</a> </rhcl-menu-link> </rhcl-list-base> <rhcl-list-base slot="social-menu"> <rhcl-menu-link slot="item" icon="facebook" description="Facebook"> <a slot="item" href="https://www.facebook.com/pages/Robert-Half/182444181913924"></a> </rhcl-menu-link> <rhcl-menu-link slot="item" icon="linkedin" description="LinkedIn"> <a slot="item" href="https://www.linkedin.com/company/robert-half-international"></a> </rhcl-menu-link> <rhcl-menu-link slot="item" icon="twitter" description="Twitter"> <a slot="item" href="https://twitter.com/roberthalf"></a> </rhcl-menu-link> <rhcl-menu-link slot="item" icon="youtube" description="Youtube"> <a slot="item" href="https://www.youtube.com/roberthalfna"></a> </rhcl-menu-link> <rhcl-menu-link slot="item" icon="instagram" description="Instagram"> <a slot="item" href="https://www.instagram.com/roberthalf/"></a> </rhcl-menu-link> </rhcl-list-base> <rhcl-list-base slot="legal-menu"> <rhcl-menu-link slot="item"> <a slot="item" href="/us/en/fraud-alert">Fraud Alert</a> </rhcl-menu-link> <rhcl-menu-link slot="item"> <a slot="item" href="/us/en/government-notice">Government Notice</a> </rhcl-menu-link> <rhcl-menu-link slot="item"> <a slot="item" href="/us/en/privacy">Privacy Notice</a> </rhcl-menu-link> <rhcl-menu-link slot="item"> <a slot="item" href="/us/en/terms">Terms of Use</a> </rhcl-menu-link> </rhcl-list-base> <rhcl-typography slot="copyright">Robert Half Inc. <a href="/us/en/equal-opportunity-employer" target="_self" title="equal-opportunity-employer" rel="noopener noreferrer">An Equal Opportunity Employer</a> <a href="/us/en/equal-opportunity-employer" target="_self" title="equal-opportunity-employer" rel="noopener noreferrer">M/F/Disability/Veterans.</a> <a href="#" class="ot-sdk-show-settings">Do Not Sell or Share My Personal Information</a></rhcl-typography> <rhcl-country-selector slot="locale-selector" name="locale"> <a data-locale="en-AU" href="https://www.roberthalf.com/au/en/job-details" slot="link"> Australia - English </a> <a data-locale="en-BE" href="https://www.roberthalf.com/be/en/job-details" slot="link"> Belgium - English </a> <a data-locale="nl-BE" href="https://www.roberthalf.com/be/nl/job-details" slot="link"> Belgium - Nederlands </a> <a data-locale="fr-BE" href="https://www.roberthalf.com/be/fr/details-emploi" slot="link"> Belgium - Français </a> <a data-locale="pt-BR" href="https://www.roberthalf.com/br/pt/vagas-detalhes" slot="link"> Brazil - Português </a> <a data-locale="en-CA" href="https://www.roberthalf.com/ca/en/job-details" slot="link"> Canada - English </a> <a data-locale="fr-CA" href="https://www.roberthalf.com/ca/fr/details-emploi" slot="link"> Canada - Français </a> <a data-locale="es-CL" href="https://www.roberthalf.com/cl/es/vacantes-detalles" slot="link"> Chile - Español </a> <a data-locale="en-CN" href="https://www.roberthalf.cn/cn/en/job-details" slot="link"> China - English </a> <a data-locale="zh-CN" href="https://www.roberthalf.cn/cn/zh/job-details" slot="link"> China - 中文 </a> <a data-locale="fr-FR" href="https://www.roberthalf.com/fr/fr/details-emploi" slot="link"> France - Français </a> <a data-locale="de-DE" href="https://www.roberthalf.com/de/de/job-details" slot="link"> Germany - Deutsch </a> <a data-locale="en-HK" href="https://www.roberthalf.com/hk/en/job-details" slot="link"> Hong Kong, China - English </a> <a data-locale="en-IE" href="https://www.roberthalf.com/ie/en" slot="link"> Ireland - English </a> <a data-locale="en-JP" href="https://www.roberthalf.com/jp/en/job-details" slot="link"> Japan - English </a> <a data-locale="ja-JP" href="https://www.roberthalf.com/jp/ja/job-details" slot="link"> Japan - 日本語 </a> <a data-locale="en-LU" href="https://www.roberthalf.com/lu/en" slot="link"> Luxembourg - English </a> <a data-locale="fr-LU" href="https://www.roberthalf.com/lu/fr" slot="link"> Luxembourg - Français </a> <a data-locale="en-NL" href="https://www.roberthalf.com/nl/en/job-details" slot="link"> Netherlands - English </a> <a data-locale="nl-NL" href="https://www.roberthalf.com/nl/nl/baan-details" slot="link"> Netherlands - Nederlands </a> <a data-locale="en-NZ" href="https://www.roberthalf.com/nz/en/job-details" slot="link"> New Zealand - English </a> <a data-locale="en-SG" href="https://www.roberthalf.com/sg/en/job-details" slot="link"> Singapore - English </a> <a data-locale="de-CH" href="https://www.roberthalf.com/ch/de/job-details" slot="link"> Switzerland - Deutsch </a> <a data-locale="en-CH" href="https://www.roberthalf.com/ch/en/job-details" slot="link"> Switzerland - English </a> <a data-locale="fr-CH" href="https://www.roberthalf.com/ch/fr/details-emploi" slot="link"> Switzerland - Français </a> <a data-locale="en-AE" href="https://www.roberthalf.com/ae/en/job-details" slot="link"> United Arab Emirates - English </a> <a data-locale="en-GB" href="https://www.roberthalf.com/gb/en/job-details" slot="link"> United Kingdom - English </a> <a data-locale="en-US" href="https://www.roberthalf.com/us/en/job-details" slot="link"> United States - English </a> </rhcl-country-selector> </rhcl-footer> <rhcl-back-to-top-button></rhcl-back-to-top-button> <script type="text/javascript"> window.addEventListener("rhcl-menu-link-clicked", (e) => { e.preventDefault(); let link = e.composedPath()[0]; if(link.hasAttribute('data-modal-popup')) { let modalId = link.getAttribute('data-modal-identifier'); let modal = document.querySelector(`div#${modalId} rhcl-modal`); modal.setAttribute('show-modal', true); } }); document.addEventListener('rhcl-locale-selector-item-clicked', function (e) { if(e && e.detail){ window.location.href = e.detail; } }); </script> </div> </div> </div> </div> </div> </div> </div> </div> <link rel="preload" href="https://rh.my.salesforce-sites.com/liveagent/EinsteinBotEmbedCSS" as="style" onload="this.onload=null;this.rel='stylesheet'"/> <noscript><link rel="stylesheet" href="https://rh.my.salesforce-sites.com/liveagent/EinsteinBotEmbedCSS"/></noscript> </body> </html>