LOG IN
SIGN UP
Canary Wharfian - Online Investment Banking & Finance Community.
Sign In
Forgot password?
Don't have an account?
or
Join Canary Wharfian
By signing up, you agree to our Terms & Conditions and Privacy Policy.
or

Software Engineer, Back Office Systems

ExperiencedNo visa sponsorship
Point72 logo

at Point72

Hedge Funds

Posted a month ago

No clicks

Based on the provided job description, here's a simplified and formatted version: --- **Software Engineer, Back Office Systems** **About the Team and Role** - Join Point72's Technology team, driving innovation in investing through software development and AI integration. - Collaborate with stakeholders to build software solutions using test-driven and agile methodologies. - Manage system upgrades, enhance resiliency, and migrate applications to cloud platforms. - Work with DevOps teams and contribute to cross-departmental initiatives. **Required Skills and Experience** - 3+ years in software development, focusing on Python/Java/.Net based technologies. - Strong SQL Development and experience with large-scale data warehouses. - Experience with messaging architectures, high volume streaming, and transaction processing systems. - Familiarity with building and consuming RESTful services. - Understanding of agile methodologies, excellent communication skills, problem-solving abilities, and commitment to ethical standards. - Familiarity with Java. **We Invest in Our People** - Comprehensive health care benefits - Generous parental and family leave policies - Mental and physical wellness programs - Volunteer opportunities and non-profit matching gift program - Affinity groups supporting diversity and inclusion - Tuition assistance and 401(k) savings program with employer match **About Point72** Point72 Asset Management, led by Steven Cohen, invests in multiple asset classes and strategies worldwide. We redefine the future of finance by evolving our IT infrastructure and revolutionizing how we use data. Visit [www.Point72.com/working-here](https://www.point72.com/working-here) for more information. **Application Process** - Apply now via the link below: - [Apply Now](

Compensation
$160,000 – $225,000 USD

Currency: $ (USD)

City
New York City
Country
United States

Full Job Description

@font-face { font-family: 'WistiaPlayerInterNumbersSemiBold'; font-feature-settings: 'tnum' 1; src: url(data:application/x-font-woff;charset=utf-8;base64,d09GMk9UVE8AAAaMAAwAAAAACgAAAAZBAAMD1wAAAAAAAAAAAAAAAAAAAAAAAAAADYpwGhQbIBwqBmAAgTIBNgIkAzAEBgWDGgcgGykJEZWkARP8KHCbm2tEznyIN98tPTUk9Ig3oiVV3pbDIzXa+f/fZgXpALFTZhBoMVFC9cp036dXvRKVmVnsxe+D+1NDQI5lG7ikZWEINIElTeBIdnxlhauQ5GQtoLHA/wN0riVdSx5xgbxF3KTbgnjVQ4B9P7YqCx7FpEZK+6ilx0AoopUh4aExJEKmkU+0ncdr4iFfKhdSFD9y91LCRaxNbVqvi0dND3rxI7ndUDR7EiwT3bhiua9krFA0oepCy2hCjwmjnjDjKjNTDz2ZuHtN8820Wfw/l8u4w4yV/f8/6uscs5rmiN00LcP4hAofyZUSyS3WinX0RGFFtnGrjj36x6dlNa57+PLTlrUisH2n9orfgd+R34XfDd0NsWDXwfwhvKHpbs3UBni37dBlPvO4KYn/PgylilcgSdw6sjsSSxsRGfIJgqhi14bKZCHcQvjUh/+3HMotTYrGLVYCxyMFjEnYC98yTAp6atAKVxaZ9eu2NMji8WTj4w/Y34elD60PPwb5bEywLqAX/amwmUo6TBCy14N/TL44jb3sE5JdUIPXXI0RBSoGt3BUObn4agKGIxxQhlyQacbstK4fS2mZoBtFNQ1bd+4zND2vQu6anl7gWFOj8MV2DVMtU44xMhpwElrrjA7zO5IqWojd/v1Vso6cqp91zC2YrGhDOy07Iqyza2q9smDIwUYek0AWbCt/8x78QmrzayQ6xtpmqfCYsLfgU9HdeP3UqutZTTNd/9Q8k08XzXzIxSdvLPda8YaeeZnkxUwql0nDKyUYdaWZjGAy7UDLHpVqBVHTxSV0wBy21El9u/491ik2J3YkdiP2LPZL41RBeeNUWtp97Bbn0Ee1g9wr9qqV/X+4R9nlPX03743dylnaXZyNp8v58yLOsFYCbUnCVQzjN+5QhlmKccO7aMkueWJggROd4qnw2x5LydUcg/NRamE3XMlkGovpRWPKWEavP74P2O1RANM/3gIIPJj7TX+lqU2geQuaBx4B/7cWAOx0ucTiEHYJU9y5DBuUMYNIHeHZz9tn+Fw2G5EBTqUlHRfRi4eB5wNlJsRsv5k4b6HyFkhIC6BO4LzPbWhW7rbCcxubeKHOc6UaBKZBMMd4j8XuRUynOCCa4EMfF9grkI1NcTaSAVtk1nrIOwFfeEBlQw4f4phb6zHzBOm0ZZ0dBcaZRVdYIo5xYiyOMEWONwQHmjKGE//VuRBgul1QrpyxmMvF4vGj0xfuuQrNt4tVTsRhEnjY9AuKa1FVLSEneQWzFd5WbO7hasX08ONUOVQgwQuVqACFXkSoIoUgK1hJEkAgbkG5CjqBS5wrRFuY2IfVwhRnLsVyZTZpatveGR4yEbYqbE6J80nM4aa+LD7Oqmr8PdSJFUQVynmgN4lerGQV1+uLdYzdOFWHPW/iK2gIQayhizQ0NMwyvBEBlrDczRfmU40CTtAHqLQGnjQG8MYkxm1MwJuTqjHwVCu9iRJ1C8ojWGHxUYowH0c5X57zpXquvlw0wzHHGMTfufxiJ1psFJTzq6nGeDvHF4LgmHHWCUViZBaInRn+cswnBi460RBPRYg9TRUQ0CZUC5LAT0qLLu50FpdTeBhjGf7/h4dg9hE0uqsBx/saOcYRDIfnOhfzGFBHyizcJK3p2edUjWrC0rn1aGjXtfVUCHMAKKhlxV8eTEIcV2jCOdKiqahv/MisrfRQVnxPJoOU62mR6pu2ZllIzo8zOZqQB7kWJXW2/c0aihata5PcIVJKfFRgHAETmEQVTCELptGMGcyigTnMJ1voUVN6uCZS9pV2hrwl7FYMvBwtUSd7L7E5qP9t7BIPRF7EcmA9ct2nIPHrxgWajtDltbXuBLuaY6qRZGa5ZlX5anfR0lYXaHUzVSFjZa8rfdhZ8rKXFZg21LVL5LFjI5TlDIbwnFGHE2dypHs6Q50N015dpOgLONEUlOqoiQgIaeCsjMq9gITDKwRMieQgKUy9UQY1BTFYZU2KpE2SkILMIjW8IdFwIKmMaK8oClJVssAEtFnz5dQ1s+w6EZoNGtPGQfzx+aoE8ikiP8GCYOWtgB+HBdWDaxACAZInVq14dZI85RRDvZGIghyONw59KV/BBEQ02P1ER8hmNGiURT2hQP8WfAY=); }
{ "@context": "https://schema.org", "@graph": [ { "@type": "WebSite", "@id": "http://careers.point72.com/#website", "url": "http://careers.point72.com/", "name": "Point72", "description": "", "potentialAction": [ ], "inLanguage": "en-US" }, , ] }
img.wp-smiley, img.emoji { display: inline !important; border: none !important; box-shadow: none !important; height: 1em !important; width: 1em !important; margin: 0 0.07em !important; vertical-align: -0.1em !important; background: none !important; padding: 0 !important; } body{--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--duotone--dark-grayscale: url('#wp-duotone-dark-grayscale');--wp--preset--duotone--grayscale: url('#wp-duotone-grayscale');--wp--preset--duotone--purple-yellow: url('#wp-duotone-purple-yellow');--wp--preset--duotone--blue-red: url('#wp-duotone-blue-red');--wp--preset--duotone--midnight: url('#wp-duotone-midnight');--wp--preset--duotone--magenta-yellow: url('#wp-duotone-magenta-yellow');--wp--preset--duotone--purple-green: url('#wp-duotone-purple-green');--wp--preset--duotone--blue-orange: url('#wp-duotone-blue-orange');--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;} try { Typekit.load({ async: true }); } catch (e) {}
Software Engineer, Back Office Systems Career
!function(e,t,n,s,u,a){e.twq||(s=e.twq=function(){s.exe?s.exe.apply(s,arguments):s.queue.push(arguments); },s.version='1.1',s.queue=[],u=t.createElement(n),u.async=!0,u.src='//static.ads-twitter.com/uwt.js', a=t.getElementsByTagName(n)[0],a.parentNode.insertBefore(u,a))}(window,document,'script'); // Insert Twitter Pixel ID and Standard Event data below twq('init','o38l9'); twq('track','PageView'); _linkedin_partner_id = "592849"; window._linkedin_data_partner_ids = window._linkedin_data_partner_ids || []; window._linkedin_data_partner_ids.push(_linkedin_partner_id); (function() {var s = document.getElementsByTagName("script")[0]; var b = document.createElement("script"); b.type = "text/javascript";b.async = true; b.src = "https://snap.licdn.com/li.lms-analytics/insight.min.js"; s.parentNode.insertBefore(b, s);} )(); (function(e,a){if(!a.__SV){var b=window;try{var c,l,i,j=b.location,g=j.hash;c=function(a,b){return(l=a.match(RegExp(b+"=([^&]*)")))?l[1]:null};g&&c(g,"state")&&(i=JSON.parse(decodeURIComponent(c(g,"state"))),"mpeditor"===i.action&&(b.sessionStorage.setItem("_mpcehash",g),history.replaceState(i.desiredHash||"",e.title,j.pathname+j.search)))}catch(m){}var k,h;window.mixpanel=a;a._i=[];a.init=function(b,c,f){function e(b,a){var c=a.split(".");2==c.length&&(b=b[c[0]],a=c[1]);b[a]=function(){b.push([a].concat(Array.prototype.slice.call(arguments, 0)))}}var d=a;"undefined"!==typeof f?d=a[f]=[]:f="mixpanel";d.people=d.people||[];d.toString=function(b){var a="mixpanel";"mixpanel"!==f&&(a+="."+f);b||(a+=" (stub)");return a};d.people.toString=function(){return d.toString(1)+".people (stub)"};k="disable time_event track track_pageview track_links track_forms register register_once alias unregister identify name_tag set_config reset people.set people.set_once people.increment people.append people.union people.track_charge people.clear_charges people.delete_user".split(" "); for(h=0;h
if(!window.sfdcPage) { window.sfdcPage = new ApexPage(); }UserContext.initialize();
(function enforceAnalyticsDelayGateEarly() { if (window.__p72AnalyticsDelayGateInstalled) { return; } window.__p72AnalyticsDelayGateInstalled = true; const ANALYTICS_DELAY_MS = 10000; const releaseAt = Date.now() + ANALYTICS_DELAY_MS; let gateOpen = false; const queuedScripts = []; const pendingScriptSrc = new WeakMap(); const pendingConnectedScripts = []; function isAnalyticsUrl(url) { if (!url) { return false; } try { const parsed = new URL(url, window.location.href); const host = parsed.hostname.toLowerCase(); return host === "www.googletagmanager.com" || host === "googletagmanager.com" || host === "www.google-analytics.com" || host === "google-analytics.com"; } catch (error) { return false; } } function queueScript(parent, node, referenceNode, mode) { queuedScripts.push({ parent, node, referenceNode, mode, }); } function rememberDeferredSrc(scriptNode, srcValue) { pendingScriptSrc.set(scriptNode, srcValue); if (scriptNode.isConnected) { pendingConnectedScripts.push(scriptNode); } } function getScriptSrc(scriptNode) { if (!scriptNode || scriptNode.tagName !== "SCRIPT") { return ""; } return pendingScriptSrc.get(scriptNode) || scriptNode.getAttribute("src") || scriptNode.src || ""; } const originalAppendChild = Node.prototype.appendChild; const originalInsertBefore = Node.prototype.insertBefore; const originalSetAttribute = Element.prototype.setAttribute; const originalScriptSrcDescriptor = Object.getOwnPropertyDescriptor(HTMLScriptElement.prototype, "src"); function applyPendingSrc(scriptNode) { if (!scriptNode || scriptNode.tagName !== "SCRIPT") { return; } const deferredSrc = pendingScriptSrc.get(scriptNode); if (!deferredSrc) { return; } pendingScriptSrc.delete(scriptNode); if (originalScriptSrcDescriptor && typeof originalScriptSrcDescriptor.set === "function") { originalScriptSrcDescriptor.set.call(scriptNode, deferredSrc); } else { originalSetAttribute.call(scriptNode, "src", deferredSrc); } } Node.prototype.appendChild = function patchedAppendChild(node) { const src = getScriptSrc(node); if (!gateOpen && src && isAnalyticsUrl(src)) { queueScript(this, node, null, "append"); return node; } return originalAppendChild.call(this, node); }; Node.prototype.insertBefore = function patchedInsertBefore(node, referenceNode) { const src = getScriptSrc(node); if (!gateOpen && src && isAnalyticsUrl(src)) { queueScript(this, node, referenceNode, "insert"); return node; } return originalInsertBefore.call(this, node, referenceNode); }; Element.prototype.setAttribute = function patchedSetAttribute(name, value) { if (!gateOpen && this.tagName === "SCRIPT" && typeof name === "string" && name.toLowerCase() === "src") { const src = String(value || ""); if (src && isAnalyticsUrl(src)) { rememberDeferredSrc(this, src); return; } } return originalSetAttribute.call(this, name, value); }; if (originalScriptSrcDescriptor && typeof originalScriptSrcDescriptor.get === "function" && typeof originalScriptSrcDescriptor.set === "function") { Object.defineProperty(HTMLScriptElement.prototype, "src", { configurable: true, enumerable: originalScriptSrcDescriptor.enumerable, get: function patchedScriptSrcGet() { if (pendingScriptSrc.has(this)) { return pendingScriptSrc.get(this); } return originalScriptSrcDescriptor.get.call(this); }, set: function patchedScriptSrcSet(value) { const src = String(value || ""); if (!gateOpen && src && isAnalyticsUrl(src)) { rememberDeferredSrc(this, src); return src; } pendingScriptSrc.delete(this); return originalScriptSrcDescriptor.set.call(this, src); }, }); } function flushQueuedScripts() { gateOpen = true; if (pendingConnectedScripts.length > 0) { const uniqueConnectedScripts = Array.from(new Set(pendingConnectedScripts)); uniqueConnectedScripts.forEach((scriptNode) => { try { applyPendingSrc(scriptNode); } catch (error) { // Ignore failures from stale nodes; other script paths may retry safely. } }); } while (queuedScripts.length > 0) { const item = queuedScripts.shift(); try { if (!item || !item.parent || !item.node) { continue; } applyPendingSrc(item.node); if (item.mode === "insert" && item.referenceNode && item.referenceNode.parentNode === item.parent) { originalInsertBefore.call(item.parent, item.node, item.referenceNode); } else { originalAppendChild.call(item.parent, item.node); } } catch (error) { // Ignore failures from stale nodes; other script paths may retry safely. } } } const remainingDelay = Math.max(releaseAt - Date.now(), 0); window.setTimeout(flushQueuedScripts, remainingDelay); })();
P72 Careers - Header
.c-cookie-consent{ opacity:1; position:relative; top:0; transform:translateY(0); transition:transform .4s cubic-bezier(.65,0,.35,1); transition:transform var(--p72-animation-duration) var(--p72-animation-timing); } .c-cookie-consent__container{ align-items:flex-start; display:flex;gap:1rem; gap:var(--p72-space); padding-bottom: .5rem; padding-bottom:var(--p72-space-xs); padding-top:.5rem; padding-top:var(--p72-space-xs) } .c-cookie-consent__content>:last-child{ /* margin-bottom:0*/ } /* .c-cookie-consent__content a{ -webkit-text-decoration:underline; text-decoration:underline }*/ .c-cookie-consent__close{ position:relative; right:-.75rem; right:calc(var(--p72-space-sm)*-1); top:-.75rem; top:calc(var(--p72-space-sm)*-1) } .c-cookie-consent.is-hidden{ opacity:0;transform:translateY(-100%) } .c-menu-mobile__menu-item > a, .c-menu-mobile__menu-item > a span { color: #18181a; /* matches your current inline color */ } .c-menu-mobile__button:hover { background: #f5f4ee !important; border-color: #18181a !important; color: #18181a !important; } .c-menu-mega-careers ul a:focus, .c-menu-mega-careers ul a:hover { color: #b08725 !important; color: var(--p72-color-content-stronger) !important; } li.c-menu-mobile__menu-item > a.c-menu-mobile__link, li.c-menu-mobile__menu-item > a.c-menu-mobile__link span { color: #18181a !important; } li.c-menu-mobile__menu-item > a.c-menu-mobile__link:hover, li.c-menu-mobile__menu-item > a.c-menu-mobile__link:hover span { color: var(--p72-color-content-stronger, #b08725) !important; } li.c-menu-mobile__menu-item > a.c-menu-mobile__link, li.c-menu-mobile__menu-item > a.c-menu-mobile__link span { color: #18181a !important; } li.o-icon > a.o-icon:hover, li.o-icon > a.o-icon:hover span { color: var(--p72-color-content-stronger, #b08725) !important; } .o-button--outlined { background-color: transparent; color: black; border: 1px solid black; transition: all 0.3s ease; } .o-button--outlined:focus, .o-button--outlined:hover { background-color: var(--p72-color-button-background, #b08725); border-color: var(--p72-color-button-background, #b08725); color: var(--p72-color-button-text, #f5f4ee); } .c-menu-mega { opacity: 0; visibility: hidden; transform: translateY(5px); transition: opacity 0.15s ease-out, transform 0.15s ease-out; will-change: opacity, transform; } body.header-scrolled .c-header { top: var(--p72-cookie-consent-height, 0px) !important; } body.header-scrolled .c-menu-mobile { /*top: 0 !important;*/ } /* Header common style */ .c-header, .c-header.l-wrap, .c-header .l-wrap { transition: none !important; will-change: auto; } /* Optional: reset header when scrolled */ body.header-scrolled .c-header, body.header-scrolled .c-header.l-wrap, body.header-scrolled .c-header .l-wrap { top: 0 !important; } @media only screen and (max-width:768px) { .c-cookie-consent__container { padding: 8px 10px !important; } body.header-scrolled .c-header, body.header-scrolled .c-header.l-wrap { padding-top: 13px; !important; } body.header-scrolled .c-header .l-wrap { padding-top: 13px; !important; } .c-cookie-consent__content p,.c-cookie-consent__content a { max-width: 100% !important; font-family:"Aptos", sans-serif; font-size:14px !important; line-height:18.2px !important; } } /* ========================================================= Combined CSS: c-menu-mobile + u-hide-after--md + u-spacing--lg Includes required variables + hamburger related CSS ========================================================= */ /* ========================================================= Required Variables ========================================================= */ :root { --p72-header-height: 100px; --p72-space-xxs: 0.25rem; --p72-space-xs: 0.5rem; --p72-space-sm: 0.75rem; --p72-space: 1rem; --p72-space-md: 1.5rem; --p72-space-lg: 2rem; --p72-animation-duration: 0.4s; --p72-animation-duration-long: 0.6s; --p72-animation-timing: cubic-bezier(0.65, 0, 0.35, 1); --p72-z-index-5: 5; --p72-border-width: 1px; --p72-font-family-secondary: Aptos, sans-serif; --p72-font-weight-bold: 700; --p72-font-size-heading-xs: 1.25rem; --p72-line-height-tight: 1.1; --p72-letter-spacing-wide: 0.06em; --p72-typography-heading-xs: var(--p72-font-weight-bold) var(--p72-font-size-heading-xs) / var(--p72-line-height-tight) var(--p72-font-family-secondary); --p72-color-brand-cream: #f5f4ee; --p72-color-brand-gold: #b08725; --p72-color-brand-slate: #505a6b; --p72-color-brand-charcoal: #18181a; --p72-color-background: var(--p72-color-brand-charcoal); --p72-color-content: var(--p72-color-brand-cream); --p72-color-content-stronger: var(--p72-color-brand-gold); --p72-color-border: var(--p72-color-brand-slate); --p72-cookie-consent-height: 0px; --p72-icon-size-sm: 0.9375rem; } /* ========================================================= Utility: u-hide-after--md Hidden after medium breakpoint ========================================================= */ @media (min-width: 769px) { .u-hide-after--md { display: none !important; } } /* ========================================================= Utility: u-spacing--lg Adds large vertical spacing between direct children ========================================================= */ .u-spacing--lg > * + * { margin-top: 2rem; margin-top: var(--p72-space-lg); } /* ========================================================= Mobile Menu Container ========================================================= */ .c-menu-mobile { bottom: 0; height: calc(100% - var(--p72-cookie-consent-height)); overflow-y: scroll; padding: calc(100px + 1.5rem) 1.5rem 1.5rem; padding: calc(var(--p72-header-height) + var(--p72-space-md)) var(--p72-space-md) var(--p72-space-md) var(--p72-space-md); position: fixed; right: 0; top: var(--p72-cookie-consent-height) !important; transform: translate3d(100%, 0, 0); transition: all 0.6s cubic-bezier(0.65, 0, 0.35, 1); transition: all var(--p72-animation-duration-long) var(--p72-animation-timing); visibility: hidden; width: 100%; z-index: 5; z-index: var(--p72-z-index-5); background-color: var(--p72-color-background); color: var(--p72-color-content); } /* ========================================================= Mobile Menu Open State Add class c-menu-mobile-is-active to body or parent ========================================================= */ @media (max-width: 767px) { .c-menu-mobile-is-active .c-menu-mobile { transform: translateZ(0); visibility: visible; } body.c-menu-mobile-is-active { overflow: hidden; } } /* ========================================================= Mobile Menu Item ========================================================= */ .c-menu-mobile__menu-item { border-bottom: 1px solid #505a6b; border-bottom: var(--p72-border-width) solid var(--p72-color-border); display: flex; flex-flow: column nowrap; gap: 0.25rem; gap: var(--p72-space-xxs); overflow: hidden; width: 100%; } /* ========================================================= Mobile Menu Link / Button ========================================================= */ .c-menu-mobile__link { align-items: center; background: transparent; border: none; color: #f5f4ee; color: var(--p72-color-content); cursor: pointer; display: flex; font: 700 1.25rem/1.1 Aptos, sans-serif; font: var(--p72-typography-heading-xs); gap: 0.25rem; gap: var(--p72-space-xxs); justify-content: space-between; letter-spacing: 0.06em; letter-spacing: var(--p72-letter-spacing-wide); padding: 0.75rem 0; padding: var(--p72-space-sm) 0; text-transform: uppercase; transition: color 0.4s cubic-bezier(0.65, 0, 0.35, 1); transition: color var(--p72-animation-duration) var(--p72-animation-timing); width: 100%; text-align: left; } @media (max-width: 768px) { .c-menu-mobile__link { font-size: 1.0625rem; } } .c-menu-mobile__link:focus, .c-menu-mobile__link:hover { color: #b08725; color: var(--p72-color-content-stronger); } .c-menu-mobile__link svg { height: var(--p72-icon-size-sm); min-width: var(--p72-icon-size-sm); width: var(--p72-icon-size-sm); } /* ========================================================= Mobile Sub Menu ========================================================= */ .c-menu-mobile--sub-menu { display: none; } .c-menu-mobile--sub-menu ul { display: flex; flex-direction: column; gap: 0.25rem; gap: var(--p72-space-xxs); margin-bottom: 0.75rem; margin-bottom: var(--p72-space-sm); list-style: none; padding: 0; } .c-menu-mobile--sub-menu a { color: #f5f4ee; color: var(--p72-color-content); text-decoration: none; } @media (max-width: 768px) { .c-menu-mobile--sub-menu a { font-size: 0.875rem; } } .c-menu-mobile--sub-menu a:focus, .c-menu-mobile--sub-menu a:hover { color: #b08725; color: var(--p72-color-content-stronger); } /* Show submenu when menu item is active */ .c-menu-mobile__menu-item.this-is-active .c-menu-mobile--sub-menu { display: block; } /* ========================================================= Header Style When Mobile Menu Is Active ========================================================= */ .c-menu-mobile-is-active .c-header { backdrop-filter: blur(0); border-color: #505a6b; border-color: var(--p72-color-border); } /* ========================================================= Hamburger Button Base ========================================================= */ .o-button-hamburger { align-items: center; -webkit-appearance: none; -moz-appearance: none; appearance: none; background: transparent; border: none; color: #f5f4ee; color: var(--p72-color-content); cursor: pointer; display: flex; height: 50px; padding: 0; --p72-hamburger-line-height: 1px; --p72-hamburger-line-spacing: 6px; --p72-hamburger-line-width: 25px; --p72-hamburger-lines-total-height: calc( var(--p72-hamburger-line-spacing) * 2 + var(--p72-hamburger-line-height) * 3 ); } .o-button-hamburger__label { font: 700 1rem/1.1 Aptos, sans-serif; letter-spacing: 0.06em; letter-spacing: var(--p72-letter-spacing-wide); text-transform: uppercase; } .o-button-hamburger__lines { height: var(--p72-hamburger-lines-total-height); margin-left: 0.25rem; margin-left: var(--p72-space-xxs); position: relative; transition: transform 0.5s ease-in-out; width: var(--p72-hamburger-line-width); } .o-button-hamburger__line { background-color: currentcolor; height: var(--p72-hamburger-line-height); left: 0; position: absolute; transition: transform 0.3s ease, top 0.3s ease, opacity 0.3s ease; width: 100%; } .o-button-hamburger__line:first-child { top: 0; } .o-button-hamburger__line:nth-child(2) { top: calc( var(--p72-hamburger-line-spacing) + var(--p72-hamburger-line-height) ); } .o-button-hamburger__line:nth-child(3) { top: calc( (var(--p72-hamburger-line-spacing) + var(--p72-hamburger-line-height)) * 2 ); } /* ========================================================= Hamburger Active Animation Triggered by .c-menu-mobile-is-active ========================================================= */ .c-menu-mobile-is-active .o-button-hamburger__line:first-child { top: 50%; transform: rotate(45deg); } .c-menu-mobile-is-active .o-button-hamburger__line:nth-child(2) { opacity: 0; } .c-menu-mobile-is-active .o-button-hamburger__line:nth-child(3) { top: 50%; transform: rotate(-45deg); } /** * Extracted scroll-related functionality from the bundled app. * * Requires: * - GSAP * - ScrollTrigger * - Optional: jQuery if using the jQuery-based class add below * * If you are using ES modules: * * import gsap from "gsap"; * import ScrollTrigger from "gsap/ScrollTrigger"; * * gsap.registerPlugin(ScrollTrigger); */ /* ========================================================================== Cookie consent scroll/resize height tracking ========================================================================== */ const COOKIE_NOTICE_KEY = "p72_cookie_notice_dismissed"; /** * Global analytics gate: defer GA/GTM script injection attempts until 10s. * This catches third-party code paths that try to load tags before our * CookieConsentTracking delay executes. */ (function enforceAnalyticsDelayGate() { if (window.__p72AnalyticsDelayGateInstalled) { return; } window.__p72AnalyticsDelayGateInstalled = true; const ANALYTICS_DELAY_MS = 10000; const releaseAt = Date.now() + ANALYTICS_DELAY_MS; let gateOpen = false; const queuedScripts = []; function isAnalyticsUrl(url) { if (!url) { return false; } try { const parsed = new URL(url, window.location.href); const host = parsed.hostname.toLowerCase(); return host === "www.googletagmanager.com" || host === "googletagmanager.com" || host === "www.google-analytics.com" || host === "google-analytics.com"; } catch (error) { return false; } } function queueScript(parent, node, referenceNode, mode) { queuedScripts.push({ parent, node, referenceNode, mode, }); } const originalAppendChild = Node.prototype.appendChild; const originalInsertBefore = Node.prototype.insertBefore; Node.prototype.appendChild = function patchedAppendChild(node) { const src = node && node.tagName === "SCRIPT" ? node.src : ""; if (!gateOpen && src && isAnalyticsUrl(src)) { queueScript(this, node, null, "append"); return node; } return originalAppendChild.call(this, node); }; Node.prototype.insertBefore = function patchedInsertBefore(node, referenceNode) { const src = node && node.tagName === "SCRIPT" ? node.src : ""; if (!gateOpen && src && isAnalyticsUrl(src)) { queueScript(this, node, referenceNode, "insert"); return node; } return originalInsertBefore.call(this, node, referenceNode); }; function flushQueuedScripts() { gateOpen = true; while (queuedScripts.length > 0) { const item = queuedScripts.shift(); try { if (!item || !item.parent || !item.node) { continue; } if (item.mode === "insert" && item.referenceNode && item.referenceNode.parentNode === item.parent) { originalInsertBefore.call(item.parent, item.node, item.referenceNode); } else { originalAppendChild.call(item.parent, item.node); } } catch (error) { // Ignore failures from stale nodes; other script paths may retry safely. } } } const remainingDelay = Math.max(releaseAt - Date.now(), 0); window.setTimeout(flushQueuedScripts, remainingDelay); })(); const cookieConsentScroll = { _raf: null, _scrollBound: false, _onScroll: null, isDismissed() { try { return sessionStorage.getItem(COOKIE_NOTICE_KEY) === "1"; } catch (error) { return false; } }, setDismissed() { try { sessionStorage.setItem(COOKIE_NOTICE_KEY, "1"); } catch (error) {} }, showBanner() { const banner = document.querySelector(".js-cookie-consent"); if (banner) { banner.classList.remove("is-hidden"); banner.classList.add("is-visible"); this.updateHeightVar(); this.bindScroll(); } }, hideBanner() { const banner = document.querySelector(".js-cookie-consent"); if (banner) { banner.classList.remove("is-visible"); banner.classList.add("is-hidden"); this.unbindScroll(); this.updateHeightVar(); } }, updateHeightVar() { const banner = document.querySelector(".js-cookie-consent"); let height = 0; if (banner && !banner.classList.contains("is-hidden")) { const rect = banner.getBoundingClientRect(); height = Math.min( Math.max(rect.bottom, 0), banner.offsetHeight ); } document.documentElement.style.setProperty( "--p72-cookie-consent-height", `${height}px` ); }, onScroll() { if (!this._raf) { this._raf = window.requestAnimationFrame(() => { this._raf = null; this.updateHeightVar(); }); } }, bindScroll() { if (!this._scrollBound) { this._scrollBound = true; this._onScroll = this.onScroll.bind(this); window.addEventListener("scroll", this._onScroll, { passive: true, }); window.addEventListener("resize", this._onScroll, { passive: true, }); } }, unbindScroll() { if (this._scrollBound) { this._scrollBound = false; window.removeEventListener("scroll", this._onScroll); window.removeEventListener("resize", this._onScroll); } }, observeHeight() { const banner = document.querySelector(".js-cookie-consent"); if (!banner || typeof ResizeObserver === "undefined") return; new ResizeObserver(() => this.updateHeightVar()).observe(banner); }, handleClose() { this.setDismissed(); this.hideBanner(); }, init() { const banner = document.querySelector(".js-cookie-consent"); if (banner) { if (this.isDismissed()) { this.updateHeightVar(); } else { this.showBanner(); } this.observeHeight(); } else { document.documentElement.style.setProperty( "--p72-cookie-consent-height", "0px" ); } }, }; const CookieConsentTracking = { gaConfig: null, getGAConfig() { if (this.gaConfig !== null) { return this.gaConfig; } const cookieConsentEl = document.querySelector(".js-cookie-consent"); const gaConfigRaw = cookieConsentEl && (cookieConsentEl.dataset.p72GaConfig || cookieConsentEl.dataset.gaConfig); if (gaConfigRaw) { try { const config = JSON.parse(gaConfigRaw); this.gaConfig = Array.isArray(config) ? config.filter((item) => item.tracking_id && item.tag_type) : []; } catch (error) { console.warn("Cookie Consent: Invalid GA config", error); this.gaConfig = []; } } else { this.gaConfig = []; } return this.gaConfig; }, isDismissed() { try { return sessionStorage.getItem(COOKIE_NOTICE_KEY) === "1"; } catch (error) { return false; } }, setDismissed() { try { sessionStorage.setItem(COOKIE_NOTICE_KEY, "1"); } catch (error) { // Ignore sessionStorage errors } }, loadGTM(trackingId) , loadGtagAnalytics(configs) { if (configs.length === 0) { return; } window.dataLayer = window.dataLayer || []; function gtag() { window.dataLayer.push(arguments); } window.gtag = gtag; const primaryConfig = configs.find((item) => item.tag_type === "ga4") || configs[0]; const script = document.createElement("script"); script.async = true; script.src = `https://www.googletagmanager.com/gtag/js?id=${primaryConfig.tracking_id}`; document.head.appendChild(script); gtag("js", new Date()); configs.forEach((item) => { gtag("config", item.tracking_id); }); }, loadCustomScripts() { const template = document.querySelector("template.js-tracking-scripts"); if (!template) { return; } const clonedContent = template.content.cloneNode(true); clonedContent.querySelectorAll("script").forEach((script) => { const newScript = document.createElement("script"); for (const attr of script.attributes) { newScript.setAttribute(attr.name, attr.value); } if (script.textContent) { newScript.textContent = script.textContent; } script.parentNode.replaceChild(newScript, script); }); document.body.appendChild(clonedContent); }, loadTrackingPixels() { if (window.p72PixelsLoaded) { return; } window.p72PixelsLoaded = true; const gaConfig = this.getGAConfig(); const gtmConfigs = gaConfig.filter((item) => item.tag_type === "gtm"); const analyticsConfigs = gaConfig.filter( (item) => item.tag_type === "ga4" || item.tag_type === "ua" ); gtmConfigs.forEach((item) => { this.loadGTM(item.tracking_id); }); this.loadGtagAnalytics(analyticsConfigs); this.loadCustomScripts(); }, scheduleTrackingPixels() { if (window.p72PixelsScheduled) { return; } window.p72PixelsScheduled = true; window.setTimeout(() => { this.loadTrackingPixels(); }, 10000); }, updateHeightVar() { const cookieConsentEl = document.querySelector(".js-cookie-consent"); let height = 0; if (cookieConsentEl && !cookieConsentEl.classList.contains("is-hidden")) { const rect = cookieConsentEl.getBoundingClientRect(); height = Math.min(Math.max(rect.bottom, 0), cookieConsentEl.offsetHeight); } document.documentElement.style.setProperty( "--p72-cookie-consent-height", `${height}px` ); }, showBanner() { const cookieConsentEl = document.querySelector(".js-cookie-consent"); if (!cookieConsentEl) { return; } cookieConsentEl.classList.remove("is-hidden"); cookieConsentEl.classList.add("is-visible"); this.updateHeightVar(); this.bindScroll(); }, hideBanner() { const cookieConsentEl = document.querySelector(".js-cookie-consent"); if (!cookieConsentEl) { return; } cookieConsentEl.classList.remove("is-visible"); cookieConsentEl.classList.add("is-hidden"); this.unbindScroll(); this.updateHeightVar(); }, onScroll() { if (this._raf) { return; } this._raf = window.requestAnimationFrame(() => { this._raf = null; this.updateHeightVar(); }); }, bindScroll() { if (this._scrollBound) { return; } this._scrollBound = true; this._onScroll = this.onScroll.bind(this); window.addEventListener("scroll", this._onScroll, { passive: true }); window.addEventListener("resize", this._onScroll, { passive: true }); }, unbindScroll() { if (!this._scrollBound) { return; } this._scrollBound = false; window.removeEventListener("scroll", this._onScroll); window.removeEventListener("resize", this._onScroll); }, observeHeight() { const cookieConsentEl = document.querySelector(".js-cookie-consent"); if (!cookieConsentEl || typeof ResizeObserver === "undefined") { return; } new ResizeObserver(() => { this.updateHeightVar(); }).observe(cookieConsentEl); }, handleClose() { this.setDismissed(); this.hideBanner(); }, init() { const cookieConsentEl = document.querySelector(".js-cookie-consent"); if (cookieConsentEl) { this.scheduleTrackingPixels(); if (this.isDismissed()) { this.updateHeightVar(); } else { this.showBanner(); } this.observeHeight(); } else { document.documentElement.style.setProperty( "--p72-cookie-consent-height", "0px" ); } }, }; /* ========================================================================== Smooth anchor scrolling with header offset ========================================================================== */ function getAnchorTarget(hash) { if (!hash || hash === "#") return null; const id = hash.startsWith("#") ? hash.substring(1) : hash; let target = document.getElementById(id); if (!target) { try { target = document.querySelector(hash); } catch (error) { return null; } } return target; } function scrollToElementWithHeaderOffset(element) { const headerHeight = parseInt( getComputedStyle(document.documentElement) .getPropertyValue("--p72-header-height") ) || 0; const top = element.getBoundingClientRect().top + window.pageYOffset - headerHeight; window.scrollTo({ top, behavior: "smooth", }); } function initSmoothAnchorScrolling() { document.addEventListener("click", function (event) { const link = event.target.closest( 'a[href^="#"]:not([href="#"])' ); if (!link) return; const href = link.getAttribute("href"); const target = getAnchorTarget(href); if (target) { event.preventDefault(); scrollToElementWithHeaderOffset(target); if (history.pushState) { history.pushState(null, null, href); } } }); if (window.location.hash) { setTimeout(() => { const target = getAnchorTarget(window.location.hash); if (target) { scrollToElementWithHeaderOffset(target); } }, 100); } } /* ========================================================================== GSAP ScrollTrigger animations ========================================================================== */ function initGsapScrollAnimations() { if (typeof gsap === "undefined" || typeof ScrollTrigger === "undefined") { console.warn("GSAP or ScrollTrigger is not available."); return; } gsap.registerPlugin(ScrollTrigger); document.querySelectorAll(".js-gsap-trigger").forEach((trigger) => { /** * Fade in on scroll */ const fadeItems = trigger.querySelectorAll(".js-gsap-fade-in"); if (fadeItems.length > 0) { fadeItems.forEach((item, index) => { gsap.to(item, { opacity: 1, duration: 0.8, ease: "power1.in", scrollTrigger: item, delay: 0.1 * index, }); }); } /** * Scale in on scroll */ const scaleItems = trigger.querySelectorAll(".js-gsap-scale-in"); if (scaleItems.length > 0) { scaleItems.forEach((item, index) => { gsap.to(item, { scale: 1, opacity: 1, duration: 0.8, ease: "power1.in", scrollTrigger: item, delay: 0.1 * index, transformOrigin: "center center", }); }); } /** * Slide up on scroll */ const slideUpItems = trigger.querySelectorAll(".js-gsap-slide-in-up"); if (slideUpItems.length > 0) { slideUpItems.forEach((item, index) => { gsap.to(item, { opacity: 1, y: 0, duration: 0.8, ease: "power1.in", scrollTrigger: item, delay: 0.1 * index, }); }); } /** * Card entrance animation * * Note: * In the original bundle this is inside `.js-gsap-trigger`, * but it is not actually tied to ScrollTrigger. It runs immediately. */ const cards = trigger.querySelectorAll(".js-card-animate"); if (cards.length > 0) { console.log("Found cards to animate:", cards.length); gsap.set(cards, { opacity: 0, y: 12, filter: "blur(0.5px)", clearProps: "none", }); gsap.to(cards, { opacity: 1, y: 0, filter: "blur(0px)", duration: 0.3, ease: "power2.out", stagger: 0.03, delay: 0.05, }); } }); /** * Generic scroll class trigger */ gsap.utils.toArray(".u-scroll-animation").forEach((element) => { ScrollTrigger.create({ trigger: element, start: "top 90%", onEnter: () => { element.classList.add("u-scroll-animate"); }, }); }); } /* ========================================================================== Load-more card animation ========================================================================== */ function initLoadMoreScrollRelatedAnimation() { if (typeof jQuery === "undefined") { console.warn("jQuery is not available."); return; } if (typeof gsap === "undefined") { console.warn("GSAP is not available."); return; } const $ = jQuery; $(".js-button-load-more").on("click", () => { const hiddenItems = $(".js-filter-item.u-display--none").not(".ft-hidden"); const itemsToShow = hiddenItems.slice(0, 8); if (itemsToShow.length > 0) { const animatedCards = itemsToShow.find(".js-card-animate").get(); if (animatedCards.length > 0) { gsap.set(animatedCards, { opacity: 0, y: 12, filter: "blur(0.5px)", }); } itemsToShow.removeClass("u-display--none"); const filterContainer = $(".js-filter-container"); try { if (filterContainer.data("isotope")) { filterContainer.isotope("layout"); } } catch (error) {} if (animatedCards.length > 0) { gsap.to(animatedCards, { opacity: 1, y: 0, filter: "blur(0px)", duration: 0.4, ease: "power2.out", stagger: 0.04, }); } $(".js-button-load-more") .blur() .removeClass("active focus"); if (hiddenItems.length <= 8) { $(".js-button-load-more").hide(); } } }); } /* ========================================================================== Optional: Swiper timeline with horizontal scroll/drag behavior ========================================================================== */ /** * The bundle initializes a horizontal Swiper timeline. * * Requires Swiper and Navigation module. * * In the original minified code: * - fl = Swiper * - ml = Navigation module */ function initTimelineSwiper() { if (typeof Swiper === "undefined") { console.warn("Swiper is not available."); return; } // If using Swiper modules globally, adjust as needed. // Swiper.use([Navigation]); new Swiper(".js-timeline", { slidesPerView: 1, spaceBetween: "-10%", breakpoints: { 640: { slidesPerView: 2, }, 768: { slidesPerView: 3, }, 1024: { slidesPerView: 4, }, 1200: { slidesPerView: 5, }, }, direction: "horizontal", freeMode: true, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); } /* ========================================================================== Optional: Posts slider horizontal drag/scroll behavior ========================================================================== */ class PostsSlider { constructor() { this.sliders = document.querySelectorAll(".js-posts-slider"); this.swiperInstances = []; this.init(); } init() { if (!this.sliders.length) return; if (typeof Swiper === "undefined") { console.warn("Swiper is not available."); return; } // If using Swiper modules globally, adjust as needed. // Swiper.use([Navigation]); this.sliders.forEach((slider) => { const container = slider.querySelector(".js-posts-slider-container"); if (!container) return; const prevButton = slider.querySelector(".js-posts-slider-prev"); const nextButton = slider.querySelector(".js-posts-slider-next"); const swiper = new Swiper(container, { slidesPerView: "auto", spaceBetween: 0, grabCursor: true, watchSlidesProgress: true, wrapperClass: "js-posts-slider-wrapper", slideClass: "js-posts-slider-card", navigation: { nextEl: nextButton, prevEl: prevButton, }, on: { init: function () { if (prevButton) { prevButton.classList.add("swiper-button-disabled"); prevButton.setAttribute("disabled", "disabled"); } }, slideChange: function () { if (prevButton) { if (this.isBeginning) { prevButton.classList.add("swiper-button-disabled"); prevButton.setAttribute("disabled", "disabled"); } else { prevButton.classList.remove("swiper-button-disabled"); prevButton.removeAttribute("disabled"); } } if (nextButton) { if (this.isEnd) { nextButton.classList.add("swiper-button-disabled"); nextButton.setAttribute("disabled", "disabled"); } else { nextButton.classList.remove("swiper-button-disabled"); nextButton.removeAttribute("disabled"); } } }, }, }); this.swiperInstances.push(swiper); }); } } /* ========================================================================== Main initializer ========================================================================== */ function initExtractedScrollFunctionality() { cookieConsentScroll.init(); CookieConsentTracking.init(); initSmoothAnchorScrolling(); initGsapScrollAnimations(); initLoadMoreScrollRelatedAnimation(); initTimelineSwiper(); new PostsSlider(); } /* ========================================================================== DOM ready ========================================================================== */ document.addEventListener("DOMContentLoaded", () => { initExtractedScrollFunctionality(); });

Point72, L.P. and its affiliates and our third-party partners use cookies and similar technologies to view and retain your site interactions to perform analytics, enable site functionality and assist our marketing efforts exclusively for recruiting purposes. By continuing to use our site, you consent to these data practices, as described in our Privacy Policy.

  • About Us
  • Careers
  • Perspectives
Browse Open Roles
Menu
  • About Us
    • What We Do
    • Our Values
    • Leadership
    • Locations
  • Careers
    • Working Here
    • Students & Early-Career
    • Point72 Academy
    • Fundamental Equities
    • Cubist Systematic
    • Point72 LaunchPoint
    • Global Macro
    • Private Investments
    • Investment Services
    • Proprietary Research
  • Perspectives
Browse Open Roles
What We Do
Learn about the strategies and asset classes that make up our global business.
Our Values
See how we support our people, communities, and the planet through our ESG efforts.
Leadership
Meet the team responsible for shaping our firm.
Locations
Find us in financial hubs across the globe as we pursue the worlds best talent.

Working Here

Learn about the culture and community you can expect when you join us.
Define Your Path

Students & Early-Career

  • All Programs
  • Point72 Academy

Experienced Professionals

  • Fundamental Equities
  • Cubist Systematic
  • Point72 LaunchPoint
  • Global Macro
  • Private Investments
  • Investment Services
  • Proprietary Research
if (window.innerWidth > 768) { document.write(' /* rules */ <\/script>'); } /* rules */ !function(){"use strict";var r,n={},e={};function t(r){var o=e[r];if(void 0!==o)return o.exports;var u=e[r]={exports:{}};return n[r].call(u.exports,u,u.exports,t),u.exports}t.m=n,r=[],t.O=function(n,e,o,u){if(!e){var i=1/0;for(s=0;s
=u)&&Object.keys(t.O).every(function(r){return t.O[r](e[a])})?e.splice(a--,1):(f=!1,u0&&r[s-1][2]>u;s--)r[s]=r[s-1];r[s]=[e,o,u]},t.n=function(r){var n=r&&r.__esModule?function(){return r.default}:function(){return r};return t.d(n,{a:n}),n},t.d=function(r,n){for(var e in n)t.o(n,e)&&!t.o(r,e)&&Object.defineProperty(r,e,{enumerable:!0,get:n[e]})},t.o=function(r,n){return Object.prototype.hasOwnProperty.call(r,n)},function(){var r={666:0};t.O.j=function(n){return 0===r[n]};var n=function(n,e){var o,u,i=e[0],f=e[1],a=e[2],c=0;if(i.some(function(n){return 0!==r[n]})){for(o in f)t.o(f,o)&&(t.m[o]=f[o]);if(a)var s=a(t)}for(n&&n(e);c console.log("Custom tracking script loaded after consent tracking delay");

Software Engineer, Back Office Systems

Apply Now
Experience

Experienced Professionals

Location

New York

Focus

Software & System Engineering

Business

Point72

A Career with Point72s Technology Team

As Point72 reimagines the future of investing, our Technology team is constantly evolving our firms IT infrastructure and engineering capabilities, positioning us at the forefront of a rapidly evolving technology landscape. Were a team of experts who experiment and work to discover new ways to harness open-source solutions, modern cloud architectures, and sophisticated Artificial Intelligence (AI) solutions, while embracing enterprise agile methodologies. Our commitment to building and innovating in the AI space provides the framework intended to drive smarter decision making and enhance how we build and operate our platforms and applications.


As a member of Point72s Technology team, we encourage and support your professional development from day onehelping you advance your technical skills, contribute innovative ideas, and satisfy your own intellectual curiosityall while delivering real business impact for our multi-billion-dollar global business.


What youll do

  • Build software applications and deliver software enhancements and projects supporting fund accounting and trade processing technology.
  • Work closely with business stakeholders to develop software solutions using test-driven and agile software development methodologies.
  • Be responsible for system upgrades and features supporting resiliency and capacity improvements, automation and controls, and integration with internal and external vendors and services.
  • Work with DevOps teams to manage and resolve operational issues and leverage CI/CD platforms while following DevOps practices within the team and projects.
  • Continuously improve the platforms using the latest technologies and software development ideas.
  • Participate in initiatives to transition select applications to cloud platforms, enhancing stability, scalability and performance of the existing platform.
  • Develop close working relationships and collaborate with other technology teams to deliver cross-departmental initiatives.

Whats required

  • 3+ years of professional software development experience with a focus on python/Java/.Net based technologies.
  • Strong SQL development and experience developing large-scale data warehouses.
  • Experience developing projects based on messaging architectures, high volume streaming, and/or transaction processing systems.
  • Experience with building and consuming RESTful services.
  • Understanding of agile methodologies.
  • Excellent verbal communication skills.
  • Strong problem solving and analytical skills.
  • Familiarity with Java.
  • Commitment to the highest ethical standards.

We take care of our people

We invest in our people, their careers, their health, and their well-being. When you work here, we provide:

  • Fully-paid health care benefits
  • Generous parental and family leave policies
  • Mental and physical wellness programs
  • Volunteer opportunities
  • Non-profit matching gift program
  • Support for employee-led affinity groups representing women, minorities and the LGBT+ community
  • Tuition assistance
  • A 401(k) savings program with an employer match and more

About Point72

Point72 Asset Management is a global firm led by Steven Cohen that invests in multiple asset classes and strategies worldwide. Resting on more than a quarter-century of investing experience, we seek to be the industrys premier asset manager through delivering superior risk-adjusted returns, adhering to the highest ethical standards, and offering the greatest opportunities to the industrys brightest talent. Were inventing the future of finance by revolutionizing how we develop our people and how we use data to shape our thinking. For more information, visit www.Point72.com/working-here


The annual base salary range for this role is $160,000-$225,000 (USD) , which does not include discretionary bonus compensation or our comprehensive benefits package. Actual compensation offered to the successful candidate may vary from posted hiring range based upon geographic location, work experience, education, and/or skill level, among other things.


Apply Now

Job Application Checklist

  • Rsum
  • Education background
Apply Now

Still Exploring?

Browse Open Roles

P72 Careers - Footer
/* Main footer padding control */ @media (min-width: 1921px) { .c-menu-footer__graphic{ margin-bottom: -85px !important; } .c-footer{ padding-top:40px !important; } .c-footer__upper{ /*padding-top:100px;*/ } .c-menu-footer__menu{ padding-top:20px !important; } .c-footer__branding{ margin-bottom:0px !important; } .c-menu-footer__link{ line-height:1.3 !important; font-size:1.127rem !important; } .c-menu-footer__title{ line-height:1.4 !important; } } @media (max-width: 1920px) { .c-menu-footer__graphic{ margin-bottom: -65px !important; } .c-menu-footer__title{ line-height:1.4 !important; } .c-menu-footer__link{ line-height:1.3 !important; font-size:1.127rem !important; } .c-menu-footer__menu{ padding-top:20px; } .c-footer__branding{ margin-bottom:0px !important; } } .c-menu-footer__title{ color:#f5f4ee; } @media (max-width: 1024px) { .c-footer__graphic { display: none; } } @media (max-width: 768px) { .c-footer{ padding-top:25px; } .c-footer__upper{ margin-bottom:-20px; } .c-footer__branding{ margin-top:20px; } .c-menu-utility__menu-item { padding-top:3px; } } @media (min-width: 769px) { .c-menu-utility__menu-item { padding-top:0; } }

Point72

  • About Us
    • What We Do
    • Our Values
    • Leadership
    • Locations
  • Join Our Team
    • Working Here
    • Students & Early-Career
    • Asia-Pacific Offices
    • Warsaw Office
  • Career Paths
    • Fundamental Equities
    • Point72 Academy
    • Point72 LaunchPoint
    • Cubist Systematic
    • Global Macro
    • Point72 Private Investments
    • Proprietary Research
    • Investment Services
  • Resources
    • Perspectives
    • General Inquiries
    • Press Inquiries
    • Investor Login
  • 2026 Point72. All Rights Reserved
  • | Global Privacy Policy
  • | Terms of Use
  • | Disclosures
  • | Brand Misuse Fraudulent Schemes Notice
// Mixpanel ignore tracking for known IPs var excludeIPS = '[65.213.72.30, 185.142.16.9, 203.176.115.9, 208.68.197.6, 208.68.197.9, 208.68.199.6, 208.68.199.9, 208.85.160.9, 208.85.161.9]'; $.getJSON('//api.ipify.org?format=json', function(data) { try{ if(true && excludeIPS.indexOf(data.ip) > -1)else{ mixpanel.unregister("$ignore"); mixpanel.track("View Page", ); mixpanel.people.set_once({ 'First Career Page Visit' : new Date().toISOString() }); mixpanel.people.set({ 'Last Career Page Visit' : new Date().toISOString() }); // Only for Careers Site mixpanel.people.increment("# of Career Page Visits"); (function(){ var links = document.querySelectorAll('a'); [].forEach.call(links, function(link) ); })(); } }catch(e){} }); jQuery(document).ready(function(){ var str = navigator.userAgent; if (str.toLowerCase().indexOf("firefox") >= 0) { jQuery('body').addClass("gecko"); } }); CSJobDetailModule.init('{\"lastModifiedDateFormatted\":\"2026-09-04\",\"job\":,\"friendlyJobName\":\"software-engineer-back-office-systems\",\"formattedTeam\":\"Software & System Engineering\",\"formattedLocation\":\"New York\",\"formattedArea\":\"Technology & Engineering\"}');

Software Engineer, Back Office Systems

Compensation

$160,000 – $225,000 USD

City: New York City

Country: United States

Point72 logo
Hedge Funds

a month ago

No clicks

at Point72

ExperiencedNo visa sponsorship

Based on the provided job description, here's a simplified and formatted version: --- **Software Engineer, Back Office Systems** **About the Team and Role** - Join Point72's Technology team, driving innovation in investing through software development and AI integration. - Collaborate with stakeholders to build software solutions using test-driven and agile methodologies. - Manage system upgrades, enhance resiliency, and migrate applications to cloud platforms. - Work with DevOps teams and contribute to cross-departmental initiatives. **Required Skills and Experience** - 3+ years in software development, focusing on Python/Java/.Net based technologies. - Strong SQL Development and experience with large-scale data warehouses. - Experience with messaging architectures, high volume streaming, and transaction processing systems. - Familiarity with building and consuming RESTful services. - Understanding of agile methodologies, excellent communication skills, problem-solving abilities, and commitment to ethical standards. - Familiarity with Java. **We Invest in Our People** - Comprehensive health care benefits - Generous parental and family leave policies - Mental and physical wellness programs - Volunteer opportunities and non-profit matching gift program - Affinity groups supporting diversity and inclusion - Tuition assistance and 401(k) savings program with employer match **About Point72** Point72 Asset Management, led by Steven Cohen, invests in multiple asset classes and strategies worldwide. We redefine the future of finance by evolving our IT infrastructure and revolutionizing how we use data. Visit [www.Point72.com/working-here](https://www.point72.com/working-here) for more information. **Application Process** - Apply now via the link below: - [Apply Now](

Full Job Description

@font-face { font-family: 'WistiaPlayerInterNumbersSemiBold'; font-feature-settings: 'tnum' 1; src: url(data:application/x-font-woff;charset=utf-8;base64,d09GMk9UVE8AAAaMAAwAAAAACgAAAAZBAAMD1wAAAAAAAAAAAAAAAAAAAAAAAAAADYpwGhQbIBwqBmAAgTIBNgIkAzAEBgWDGgcgGykJEZWkARP8KHCbm2tEznyIN98tPTUk9Ig3oiVV3pbDIzXa+f/fZgXpALFTZhBoMVFC9cp036dXvRKVmVnsxe+D+1NDQI5lG7ikZWEINIElTeBIdnxlhauQ5GQtoLHA/wN0riVdSx5xgbxF3KTbgnjVQ4B9P7YqCx7FpEZK+6ilx0AoopUh4aExJEKmkU+0ncdr4iFfKhdSFD9y91LCRaxNbVqvi0dND3rxI7ndUDR7EiwT3bhiua9krFA0oepCy2hCjwmjnjDjKjNTDz2ZuHtN8820Wfw/l8u4w4yV/f8/6uscs5rmiN00LcP4hAofyZUSyS3WinX0RGFFtnGrjj36x6dlNa57+PLTlrUisH2n9orfgd+R34XfDd0NsWDXwfwhvKHpbs3UBni37dBlPvO4KYn/PgylilcgSdw6sjsSSxsRGfIJgqhi14bKZCHcQvjUh/+3HMotTYrGLVYCxyMFjEnYC98yTAp6atAKVxaZ9eu2NMji8WTj4w/Y34elD60PPwb5bEywLqAX/amwmUo6TBCy14N/TL44jb3sE5JdUIPXXI0RBSoGt3BUObn4agKGIxxQhlyQacbstK4fS2mZoBtFNQ1bd+4zND2vQu6anl7gWFOj8MV2DVMtU44xMhpwElrrjA7zO5IqWojd/v1Vso6cqp91zC2YrGhDOy07Iqyza2q9smDIwUYek0AWbCt/8x78QmrzayQ6xtpmqfCYsLfgU9HdeP3UqutZTTNd/9Q8k08XzXzIxSdvLPda8YaeeZnkxUwql0nDKyUYdaWZjGAy7UDLHpVqBVHTxSV0wBy21El9u/491ik2J3YkdiP2LPZL41RBeeNUWtp97Bbn0Ee1g9wr9qqV/X+4R9nlPX03743dylnaXZyNp8v58yLOsFYCbUnCVQzjN+5QhlmKccO7aMkueWJggROd4qnw2x5LydUcg/NRamE3XMlkGovpRWPKWEavP74P2O1RANM/3gIIPJj7TX+lqU2geQuaBx4B/7cWAOx0ucTiEHYJU9y5DBuUMYNIHeHZz9tn+Fw2G5EBTqUlHRfRi4eB5wNlJsRsv5k4b6HyFkhIC6BO4LzPbWhW7rbCcxubeKHOc6UaBKZBMMd4j8XuRUynOCCa4EMfF9grkI1NcTaSAVtk1nrIOwFfeEBlQw4f4phb6zHzBOm0ZZ0dBcaZRVdYIo5xYiyOMEWONwQHmjKGE//VuRBgul1QrpyxmMvF4vGj0xfuuQrNt4tVTsRhEnjY9AuKa1FVLSEneQWzFd5WbO7hasX08ONUOVQgwQuVqACFXkSoIoUgK1hJEkAgbkG5CjqBS5wrRFuY2IfVwhRnLsVyZTZpatveGR4yEbYqbE6J80nM4aa+LD7Oqmr8PdSJFUQVynmgN4lerGQV1+uLdYzdOFWHPW/iK2gIQayhizQ0NMwyvBEBlrDczRfmU40CTtAHqLQGnjQG8MYkxm1MwJuTqjHwVCu9iRJ1C8ojWGHxUYowH0c5X57zpXquvlw0wzHHGMTfufxiJ1psFJTzq6nGeDvHF4LgmHHWCUViZBaInRn+cswnBi460RBPRYg9TRUQ0CZUC5LAT0qLLu50FpdTeBhjGf7/h4dg9hE0uqsBx/saOcYRDIfnOhfzGFBHyizcJK3p2edUjWrC0rn1aGjXtfVUCHMAKKhlxV8eTEIcV2jCOdKiqahv/MisrfRQVnxPJoOU62mR6pu2ZllIzo8zOZqQB7kWJXW2/c0aihata5PcIVJKfFRgHAETmEQVTCELptGMGcyigTnMJ1voUVN6uCZS9pV2hrwl7FYMvBwtUSd7L7E5qP9t7BIPRF7EcmA9ct2nIPHrxgWajtDltbXuBLuaY6qRZGa5ZlX5anfR0lYXaHUzVSFjZa8rfdhZ8rKXFZg21LVL5LFjI5TlDIbwnFGHE2dypHs6Q50N015dpOgLONEUlOqoiQgIaeCsjMq9gITDKwRMieQgKUy9UQY1BTFYZU2KpE2SkILMIjW8IdFwIKmMaK8oClJVssAEtFnz5dQ1s+w6EZoNGtPGQfzx+aoE8ikiP8GCYOWtgB+HBdWDaxACAZInVq14dZI85RRDvZGIghyONw59KV/BBEQ02P1ER8hmNGiURT2hQP8WfAY=); }
{ "@context": "https://schema.org", "@graph": [ { "@type": "WebSite", "@id": "http://careers.point72.com/#website", "url": "http://careers.point72.com/", "name": "Point72", "description": "", "potentialAction": [ ], "inLanguage": "en-US" }, , ] }
img.wp-smiley, img.emoji { display: inline !important; border: none !important; box-shadow: none !important; height: 1em !important; width: 1em !important; margin: 0 0.07em !important; vertical-align: -0.1em !important; background: none !important; padding: 0 !important; } body{--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--duotone--dark-grayscale: url('#wp-duotone-dark-grayscale');--wp--preset--duotone--grayscale: url('#wp-duotone-grayscale');--wp--preset--duotone--purple-yellow: url('#wp-duotone-purple-yellow');--wp--preset--duotone--blue-red: url('#wp-duotone-blue-red');--wp--preset--duotone--midnight: url('#wp-duotone-midnight');--wp--preset--duotone--magenta-yellow: url('#wp-duotone-magenta-yellow');--wp--preset--duotone--purple-green: url('#wp-duotone-purple-green');--wp--preset--duotone--blue-orange: url('#wp-duotone-blue-orange');--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;} try { Typekit.load({ async: true }); } catch (e) {}
Software Engineer, Back Office Systems Career
!function(e,t,n,s,u,a){e.twq||(s=e.twq=function(){s.exe?s.exe.apply(s,arguments):s.queue.push(arguments); },s.version='1.1',s.queue=[],u=t.createElement(n),u.async=!0,u.src='//static.ads-twitter.com/uwt.js', a=t.getElementsByTagName(n)[0],a.parentNode.insertBefore(u,a))}(window,document,'script'); // Insert Twitter Pixel ID and Standard Event data below twq('init','o38l9'); twq('track','PageView'); _linkedin_partner_id = "592849"; window._linkedin_data_partner_ids = window._linkedin_data_partner_ids || []; window._linkedin_data_partner_ids.push(_linkedin_partner_id); (function() {var s = document.getElementsByTagName("script")[0]; var b = document.createElement("script"); b.type = "text/javascript";b.async = true; b.src = "https://snap.licdn.com/li.lms-analytics/insight.min.js"; s.parentNode.insertBefore(b, s);} )(); (function(e,a){if(!a.__SV){var b=window;try{var c,l,i,j=b.location,g=j.hash;c=function(a,b){return(l=a.match(RegExp(b+"=([^&]*)")))?l[1]:null};g&&c(g,"state")&&(i=JSON.parse(decodeURIComponent(c(g,"state"))),"mpeditor"===i.action&&(b.sessionStorage.setItem("_mpcehash",g),history.replaceState(i.desiredHash||"",e.title,j.pathname+j.search)))}catch(m){}var k,h;window.mixpanel=a;a._i=[];a.init=function(b,c,f){function e(b,a){var c=a.split(".");2==c.length&&(b=b[c[0]],a=c[1]);b[a]=function(){b.push([a].concat(Array.prototype.slice.call(arguments, 0)))}}var d=a;"undefined"!==typeof f?d=a[f]=[]:f="mixpanel";d.people=d.people||[];d.toString=function(b){var a="mixpanel";"mixpanel"!==f&&(a+="."+f);b||(a+=" (stub)");return a};d.people.toString=function(){return d.toString(1)+".people (stub)"};k="disable time_event track track_pageview track_links track_forms register register_once alias unregister identify name_tag set_config reset people.set people.set_once people.increment people.append people.union people.track_charge people.clear_charges people.delete_user".split(" "); for(h=0;h
if(!window.sfdcPage) { window.sfdcPage = new ApexPage(); }UserContext.initialize();
(function enforceAnalyticsDelayGateEarly() { if (window.__p72AnalyticsDelayGateInstalled) { return; } window.__p72AnalyticsDelayGateInstalled = true; const ANALYTICS_DELAY_MS = 10000; const releaseAt = Date.now() + ANALYTICS_DELAY_MS; let gateOpen = false; const queuedScripts = []; const pendingScriptSrc = new WeakMap(); const pendingConnectedScripts = []; function isAnalyticsUrl(url) { if (!url) { return false; } try { const parsed = new URL(url, window.location.href); const host = parsed.hostname.toLowerCase(); return host === "www.googletagmanager.com" || host === "googletagmanager.com" || host === "www.google-analytics.com" || host === "google-analytics.com"; } catch (error) { return false; } } function queueScript(parent, node, referenceNode, mode) { queuedScripts.push({ parent, node, referenceNode, mode, }); } function rememberDeferredSrc(scriptNode, srcValue) { pendingScriptSrc.set(scriptNode, srcValue); if (scriptNode.isConnected) { pendingConnectedScripts.push(scriptNode); } } function getScriptSrc(scriptNode) { if (!scriptNode || scriptNode.tagName !== "SCRIPT") { return ""; } return pendingScriptSrc.get(scriptNode) || scriptNode.getAttribute("src") || scriptNode.src || ""; } const originalAppendChild = Node.prototype.appendChild; const originalInsertBefore = Node.prototype.insertBefore; const originalSetAttribute = Element.prototype.setAttribute; const originalScriptSrcDescriptor = Object.getOwnPropertyDescriptor(HTMLScriptElement.prototype, "src"); function applyPendingSrc(scriptNode) { if (!scriptNode || scriptNode.tagName !== "SCRIPT") { return; } const deferredSrc = pendingScriptSrc.get(scriptNode); if (!deferredSrc) { return; } pendingScriptSrc.delete(scriptNode); if (originalScriptSrcDescriptor && typeof originalScriptSrcDescriptor.set === "function") { originalScriptSrcDescriptor.set.call(scriptNode, deferredSrc); } else { originalSetAttribute.call(scriptNode, "src", deferredSrc); } } Node.prototype.appendChild = function patchedAppendChild(node) { const src = getScriptSrc(node); if (!gateOpen && src && isAnalyticsUrl(src)) { queueScript(this, node, null, "append"); return node; } return originalAppendChild.call(this, node); }; Node.prototype.insertBefore = function patchedInsertBefore(node, referenceNode) { const src = getScriptSrc(node); if (!gateOpen && src && isAnalyticsUrl(src)) { queueScript(this, node, referenceNode, "insert"); return node; } return originalInsertBefore.call(this, node, referenceNode); }; Element.prototype.setAttribute = function patchedSetAttribute(name, value) { if (!gateOpen && this.tagName === "SCRIPT" && typeof name === "string" && name.toLowerCase() === "src") { const src = String(value || ""); if (src && isAnalyticsUrl(src)) { rememberDeferredSrc(this, src); return; } } return originalSetAttribute.call(this, name, value); }; if (originalScriptSrcDescriptor && typeof originalScriptSrcDescriptor.get === "function" && typeof originalScriptSrcDescriptor.set === "function") { Object.defineProperty(HTMLScriptElement.prototype, "src", { configurable: true, enumerable: originalScriptSrcDescriptor.enumerable, get: function patchedScriptSrcGet() { if (pendingScriptSrc.has(this)) { return pendingScriptSrc.get(this); } return originalScriptSrcDescriptor.get.call(this); }, set: function patchedScriptSrcSet(value) { const src = String(value || ""); if (!gateOpen && src && isAnalyticsUrl(src)) { rememberDeferredSrc(this, src); return src; } pendingScriptSrc.delete(this); return originalScriptSrcDescriptor.set.call(this, src); }, }); } function flushQueuedScripts() { gateOpen = true; if (pendingConnectedScripts.length > 0) { const uniqueConnectedScripts = Array.from(new Set(pendingConnectedScripts)); uniqueConnectedScripts.forEach((scriptNode) => { try { applyPendingSrc(scriptNode); } catch (error) { // Ignore failures from stale nodes; other script paths may retry safely. } }); } while (queuedScripts.length > 0) { const item = queuedScripts.shift(); try { if (!item || !item.parent || !item.node) { continue; } applyPendingSrc(item.node); if (item.mode === "insert" && item.referenceNode && item.referenceNode.parentNode === item.parent) { originalInsertBefore.call(item.parent, item.node, item.referenceNode); } else { originalAppendChild.call(item.parent, item.node); } } catch (error) { // Ignore failures from stale nodes; other script paths may retry safely. } } } const remainingDelay = Math.max(releaseAt - Date.now(), 0); window.setTimeout(flushQueuedScripts, remainingDelay); })();
P72 Careers - Header
.c-cookie-consent{ opacity:1; position:relative; top:0; transform:translateY(0); transition:transform .4s cubic-bezier(.65,0,.35,1); transition:transform var(--p72-animation-duration) var(--p72-animation-timing); } .c-cookie-consent__container{ align-items:flex-start; display:flex;gap:1rem; gap:var(--p72-space); padding-bottom: .5rem; padding-bottom:var(--p72-space-xs); padding-top:.5rem; padding-top:var(--p72-space-xs) } .c-cookie-consent__content>:last-child{ /* margin-bottom:0*/ } /* .c-cookie-consent__content a{ -webkit-text-decoration:underline; text-decoration:underline }*/ .c-cookie-consent__close{ position:relative; right:-.75rem; right:calc(var(--p72-space-sm)*-1); top:-.75rem; top:calc(var(--p72-space-sm)*-1) } .c-cookie-consent.is-hidden{ opacity:0;transform:translateY(-100%) } .c-menu-mobile__menu-item > a, .c-menu-mobile__menu-item > a span { color: #18181a; /* matches your current inline color */ } .c-menu-mobile__button:hover { background: #f5f4ee !important; border-color: #18181a !important; color: #18181a !important; } .c-menu-mega-careers ul a:focus, .c-menu-mega-careers ul a:hover { color: #b08725 !important; color: var(--p72-color-content-stronger) !important; } li.c-menu-mobile__menu-item > a.c-menu-mobile__link, li.c-menu-mobile__menu-item > a.c-menu-mobile__link span { color: #18181a !important; } li.c-menu-mobile__menu-item > a.c-menu-mobile__link:hover, li.c-menu-mobile__menu-item > a.c-menu-mobile__link:hover span { color: var(--p72-color-content-stronger, #b08725) !important; } li.c-menu-mobile__menu-item > a.c-menu-mobile__link, li.c-menu-mobile__menu-item > a.c-menu-mobile__link span { color: #18181a !important; } li.o-icon > a.o-icon:hover, li.o-icon > a.o-icon:hover span { color: var(--p72-color-content-stronger, #b08725) !important; } .o-button--outlined { background-color: transparent; color: black; border: 1px solid black; transition: all 0.3s ease; } .o-button--outlined:focus, .o-button--outlined:hover { background-color: var(--p72-color-button-background, #b08725); border-color: var(--p72-color-button-background, #b08725); color: var(--p72-color-button-text, #f5f4ee); } .c-menu-mega { opacity: 0; visibility: hidden; transform: translateY(5px); transition: opacity 0.15s ease-out, transform 0.15s ease-out; will-change: opacity, transform; } body.header-scrolled .c-header { top: var(--p72-cookie-consent-height, 0px) !important; } body.header-scrolled .c-menu-mobile { /*top: 0 !important;*/ } /* Header common style */ .c-header, .c-header.l-wrap, .c-header .l-wrap { transition: none !important; will-change: auto; } /* Optional: reset header when scrolled */ body.header-scrolled .c-header, body.header-scrolled .c-header.l-wrap, body.header-scrolled .c-header .l-wrap { top: 0 !important; } @media only screen and (max-width:768px) { .c-cookie-consent__container { padding: 8px 10px !important; } body.header-scrolled .c-header, body.header-scrolled .c-header.l-wrap { padding-top: 13px; !important; } body.header-scrolled .c-header .l-wrap { padding-top: 13px; !important; } .c-cookie-consent__content p,.c-cookie-consent__content a { max-width: 100% !important; font-family:"Aptos", sans-serif; font-size:14px !important; line-height:18.2px !important; } } /* ========================================================= Combined CSS: c-menu-mobile + u-hide-after--md + u-spacing--lg Includes required variables + hamburger related CSS ========================================================= */ /* ========================================================= Required Variables ========================================================= */ :root { --p72-header-height: 100px; --p72-space-xxs: 0.25rem; --p72-space-xs: 0.5rem; --p72-space-sm: 0.75rem; --p72-space: 1rem; --p72-space-md: 1.5rem; --p72-space-lg: 2rem; --p72-animation-duration: 0.4s; --p72-animation-duration-long: 0.6s; --p72-animation-timing: cubic-bezier(0.65, 0, 0.35, 1); --p72-z-index-5: 5; --p72-border-width: 1px; --p72-font-family-secondary: Aptos, sans-serif; --p72-font-weight-bold: 700; --p72-font-size-heading-xs: 1.25rem; --p72-line-height-tight: 1.1; --p72-letter-spacing-wide: 0.06em; --p72-typography-heading-xs: var(--p72-font-weight-bold) var(--p72-font-size-heading-xs) / var(--p72-line-height-tight) var(--p72-font-family-secondary); --p72-color-brand-cream: #f5f4ee; --p72-color-brand-gold: #b08725; --p72-color-brand-slate: #505a6b; --p72-color-brand-charcoal: #18181a; --p72-color-background: var(--p72-color-brand-charcoal); --p72-color-content: var(--p72-color-brand-cream); --p72-color-content-stronger: var(--p72-color-brand-gold); --p72-color-border: var(--p72-color-brand-slate); --p72-cookie-consent-height: 0px; --p72-icon-size-sm: 0.9375rem; } /* ========================================================= Utility: u-hide-after--md Hidden after medium breakpoint ========================================================= */ @media (min-width: 769px) { .u-hide-after--md { display: none !important; } } /* ========================================================= Utility: u-spacing--lg Adds large vertical spacing between direct children ========================================================= */ .u-spacing--lg > * + * { margin-top: 2rem; margin-top: var(--p72-space-lg); } /* ========================================================= Mobile Menu Container ========================================================= */ .c-menu-mobile { bottom: 0; height: calc(100% - var(--p72-cookie-consent-height)); overflow-y: scroll; padding: calc(100px + 1.5rem) 1.5rem 1.5rem; padding: calc(var(--p72-header-height) + var(--p72-space-md)) var(--p72-space-md) var(--p72-space-md) var(--p72-space-md); position: fixed; right: 0; top: var(--p72-cookie-consent-height) !important; transform: translate3d(100%, 0, 0); transition: all 0.6s cubic-bezier(0.65, 0, 0.35, 1); transition: all var(--p72-animation-duration-long) var(--p72-animation-timing); visibility: hidden; width: 100%; z-index: 5; z-index: var(--p72-z-index-5); background-color: var(--p72-color-background); color: var(--p72-color-content); } /* ========================================================= Mobile Menu Open State Add class c-menu-mobile-is-active to body or parent ========================================================= */ @media (max-width: 767px) { .c-menu-mobile-is-active .c-menu-mobile { transform: translateZ(0); visibility: visible; } body.c-menu-mobile-is-active { overflow: hidden; } } /* ========================================================= Mobile Menu Item ========================================================= */ .c-menu-mobile__menu-item { border-bottom: 1px solid #505a6b; border-bottom: var(--p72-border-width) solid var(--p72-color-border); display: flex; flex-flow: column nowrap; gap: 0.25rem; gap: var(--p72-space-xxs); overflow: hidden; width: 100%; } /* ========================================================= Mobile Menu Link / Button ========================================================= */ .c-menu-mobile__link { align-items: center; background: transparent; border: none; color: #f5f4ee; color: var(--p72-color-content); cursor: pointer; display: flex; font: 700 1.25rem/1.1 Aptos, sans-serif; font: var(--p72-typography-heading-xs); gap: 0.25rem; gap: var(--p72-space-xxs); justify-content: space-between; letter-spacing: 0.06em; letter-spacing: var(--p72-letter-spacing-wide); padding: 0.75rem 0; padding: var(--p72-space-sm) 0; text-transform: uppercase; transition: color 0.4s cubic-bezier(0.65, 0, 0.35, 1); transition: color var(--p72-animation-duration) var(--p72-animation-timing); width: 100%; text-align: left; } @media (max-width: 768px) { .c-menu-mobile__link { font-size: 1.0625rem; } } .c-menu-mobile__link:focus, .c-menu-mobile__link:hover { color: #b08725; color: var(--p72-color-content-stronger); } .c-menu-mobile__link svg { height: var(--p72-icon-size-sm); min-width: var(--p72-icon-size-sm); width: var(--p72-icon-size-sm); } /* ========================================================= Mobile Sub Menu ========================================================= */ .c-menu-mobile--sub-menu { display: none; } .c-menu-mobile--sub-menu ul { display: flex; flex-direction: column; gap: 0.25rem; gap: var(--p72-space-xxs); margin-bottom: 0.75rem; margin-bottom: var(--p72-space-sm); list-style: none; padding: 0; } .c-menu-mobile--sub-menu a { color: #f5f4ee; color: var(--p72-color-content); text-decoration: none; } @media (max-width: 768px) { .c-menu-mobile--sub-menu a { font-size: 0.875rem; } } .c-menu-mobile--sub-menu a:focus, .c-menu-mobile--sub-menu a:hover { color: #b08725; color: var(--p72-color-content-stronger); } /* Show submenu when menu item is active */ .c-menu-mobile__menu-item.this-is-active .c-menu-mobile--sub-menu { display: block; } /* ========================================================= Header Style When Mobile Menu Is Active ========================================================= */ .c-menu-mobile-is-active .c-header { backdrop-filter: blur(0); border-color: #505a6b; border-color: var(--p72-color-border); } /* ========================================================= Hamburger Button Base ========================================================= */ .o-button-hamburger { align-items: center; -webkit-appearance: none; -moz-appearance: none; appearance: none; background: transparent; border: none; color: #f5f4ee; color: var(--p72-color-content); cursor: pointer; display: flex; height: 50px; padding: 0; --p72-hamburger-line-height: 1px; --p72-hamburger-line-spacing: 6px; --p72-hamburger-line-width: 25px; --p72-hamburger-lines-total-height: calc( var(--p72-hamburger-line-spacing) * 2 + var(--p72-hamburger-line-height) * 3 ); } .o-button-hamburger__label { font: 700 1rem/1.1 Aptos, sans-serif; letter-spacing: 0.06em; letter-spacing: var(--p72-letter-spacing-wide); text-transform: uppercase; } .o-button-hamburger__lines { height: var(--p72-hamburger-lines-total-height); margin-left: 0.25rem; margin-left: var(--p72-space-xxs); position: relative; transition: transform 0.5s ease-in-out; width: var(--p72-hamburger-line-width); } .o-button-hamburger__line { background-color: currentcolor; height: var(--p72-hamburger-line-height); left: 0; position: absolute; transition: transform 0.3s ease, top 0.3s ease, opacity 0.3s ease; width: 100%; } .o-button-hamburger__line:first-child { top: 0; } .o-button-hamburger__line:nth-child(2) { top: calc( var(--p72-hamburger-line-spacing) + var(--p72-hamburger-line-height) ); } .o-button-hamburger__line:nth-child(3) { top: calc( (var(--p72-hamburger-line-spacing) + var(--p72-hamburger-line-height)) * 2 ); } /* ========================================================= Hamburger Active Animation Triggered by .c-menu-mobile-is-active ========================================================= */ .c-menu-mobile-is-active .o-button-hamburger__line:first-child { top: 50%; transform: rotate(45deg); } .c-menu-mobile-is-active .o-button-hamburger__line:nth-child(2) { opacity: 0; } .c-menu-mobile-is-active .o-button-hamburger__line:nth-child(3) { top: 50%; transform: rotate(-45deg); } /** * Extracted scroll-related functionality from the bundled app. * * Requires: * - GSAP * - ScrollTrigger * - Optional: jQuery if using the jQuery-based class add below * * If you are using ES modules: * * import gsap from "gsap"; * import ScrollTrigger from "gsap/ScrollTrigger"; * * gsap.registerPlugin(ScrollTrigger); */ /* ========================================================================== Cookie consent scroll/resize height tracking ========================================================================== */ const COOKIE_NOTICE_KEY = "p72_cookie_notice_dismissed"; /** * Global analytics gate: defer GA/GTM script injection attempts until 10s. * This catches third-party code paths that try to load tags before our * CookieConsentTracking delay executes. */ (function enforceAnalyticsDelayGate() { if (window.__p72AnalyticsDelayGateInstalled) { return; } window.__p72AnalyticsDelayGateInstalled = true; const ANALYTICS_DELAY_MS = 10000; const releaseAt = Date.now() + ANALYTICS_DELAY_MS; let gateOpen = false; const queuedScripts = []; function isAnalyticsUrl(url) { if (!url) { return false; } try { const parsed = new URL(url, window.location.href); const host = parsed.hostname.toLowerCase(); return host === "www.googletagmanager.com" || host === "googletagmanager.com" || host === "www.google-analytics.com" || host === "google-analytics.com"; } catch (error) { return false; } } function queueScript(parent, node, referenceNode, mode) { queuedScripts.push({ parent, node, referenceNode, mode, }); } const originalAppendChild = Node.prototype.appendChild; const originalInsertBefore = Node.prototype.insertBefore; Node.prototype.appendChild = function patchedAppendChild(node) { const src = node && node.tagName === "SCRIPT" ? node.src : ""; if (!gateOpen && src && isAnalyticsUrl(src)) { queueScript(this, node, null, "append"); return node; } return originalAppendChild.call(this, node); }; Node.prototype.insertBefore = function patchedInsertBefore(node, referenceNode) { const src = node && node.tagName === "SCRIPT" ? node.src : ""; if (!gateOpen && src && isAnalyticsUrl(src)) { queueScript(this, node, referenceNode, "insert"); return node; } return originalInsertBefore.call(this, node, referenceNode); }; function flushQueuedScripts() { gateOpen = true; while (queuedScripts.length > 0) { const item = queuedScripts.shift(); try { if (!item || !item.parent || !item.node) { continue; } if (item.mode === "insert" && item.referenceNode && item.referenceNode.parentNode === item.parent) { originalInsertBefore.call(item.parent, item.node, item.referenceNode); } else { originalAppendChild.call(item.parent, item.node); } } catch (error) { // Ignore failures from stale nodes; other script paths may retry safely. } } } const remainingDelay = Math.max(releaseAt - Date.now(), 0); window.setTimeout(flushQueuedScripts, remainingDelay); })(); const cookieConsentScroll = { _raf: null, _scrollBound: false, _onScroll: null, isDismissed() { try { return sessionStorage.getItem(COOKIE_NOTICE_KEY) === "1"; } catch (error) { return false; } }, setDismissed() { try { sessionStorage.setItem(COOKIE_NOTICE_KEY, "1"); } catch (error) {} }, showBanner() { const banner = document.querySelector(".js-cookie-consent"); if (banner) { banner.classList.remove("is-hidden"); banner.classList.add("is-visible"); this.updateHeightVar(); this.bindScroll(); } }, hideBanner() { const banner = document.querySelector(".js-cookie-consent"); if (banner) { banner.classList.remove("is-visible"); banner.classList.add("is-hidden"); this.unbindScroll(); this.updateHeightVar(); } }, updateHeightVar() { const banner = document.querySelector(".js-cookie-consent"); let height = 0; if (banner && !banner.classList.contains("is-hidden")) { const rect = banner.getBoundingClientRect(); height = Math.min( Math.max(rect.bottom, 0), banner.offsetHeight ); } document.documentElement.style.setProperty( "--p72-cookie-consent-height", `${height}px` ); }, onScroll() { if (!this._raf) { this._raf = window.requestAnimationFrame(() => { this._raf = null; this.updateHeightVar(); }); } }, bindScroll() { if (!this._scrollBound) { this._scrollBound = true; this._onScroll = this.onScroll.bind(this); window.addEventListener("scroll", this._onScroll, { passive: true, }); window.addEventListener("resize", this._onScroll, { passive: true, }); } }, unbindScroll() { if (this._scrollBound) { this._scrollBound = false; window.removeEventListener("scroll", this._onScroll); window.removeEventListener("resize", this._onScroll); } }, observeHeight() { const banner = document.querySelector(".js-cookie-consent"); if (!banner || typeof ResizeObserver === "undefined") return; new ResizeObserver(() => this.updateHeightVar()).observe(banner); }, handleClose() { this.setDismissed(); this.hideBanner(); }, init() { const banner = document.querySelector(".js-cookie-consent"); if (banner) { if (this.isDismissed()) { this.updateHeightVar(); } else { this.showBanner(); } this.observeHeight(); } else { document.documentElement.style.setProperty( "--p72-cookie-consent-height", "0px" ); } }, }; const CookieConsentTracking = { gaConfig: null, getGAConfig() { if (this.gaConfig !== null) { return this.gaConfig; } const cookieConsentEl = document.querySelector(".js-cookie-consent"); const gaConfigRaw = cookieConsentEl && (cookieConsentEl.dataset.p72GaConfig || cookieConsentEl.dataset.gaConfig); if (gaConfigRaw) { try { const config = JSON.parse(gaConfigRaw); this.gaConfig = Array.isArray(config) ? config.filter((item) => item.tracking_id && item.tag_type) : []; } catch (error) { console.warn("Cookie Consent: Invalid GA config", error); this.gaConfig = []; } } else { this.gaConfig = []; } return this.gaConfig; }, isDismissed() { try { return sessionStorage.getItem(COOKIE_NOTICE_KEY) === "1"; } catch (error) { return false; } }, setDismissed() { try { sessionStorage.setItem(COOKIE_NOTICE_KEY, "1"); } catch (error) { // Ignore sessionStorage errors } }, loadGTM(trackingId) , loadGtagAnalytics(configs) { if (configs.length === 0) { return; } window.dataLayer = window.dataLayer || []; function gtag() { window.dataLayer.push(arguments); } window.gtag = gtag; const primaryConfig = configs.find((item) => item.tag_type === "ga4") || configs[0]; const script = document.createElement("script"); script.async = true; script.src = `https://www.googletagmanager.com/gtag/js?id=${primaryConfig.tracking_id}`; document.head.appendChild(script); gtag("js", new Date()); configs.forEach((item) => { gtag("config", item.tracking_id); }); }, loadCustomScripts() { const template = document.querySelector("template.js-tracking-scripts"); if (!template) { return; } const clonedContent = template.content.cloneNode(true); clonedContent.querySelectorAll("script").forEach((script) => { const newScript = document.createElement("script"); for (const attr of script.attributes) { newScript.setAttribute(attr.name, attr.value); } if (script.textContent) { newScript.textContent = script.textContent; } script.parentNode.replaceChild(newScript, script); }); document.body.appendChild(clonedContent); }, loadTrackingPixels() { if (window.p72PixelsLoaded) { return; } window.p72PixelsLoaded = true; const gaConfig = this.getGAConfig(); const gtmConfigs = gaConfig.filter((item) => item.tag_type === "gtm"); const analyticsConfigs = gaConfig.filter( (item) => item.tag_type === "ga4" || item.tag_type === "ua" ); gtmConfigs.forEach((item) => { this.loadGTM(item.tracking_id); }); this.loadGtagAnalytics(analyticsConfigs); this.loadCustomScripts(); }, scheduleTrackingPixels() { if (window.p72PixelsScheduled) { return; } window.p72PixelsScheduled = true; window.setTimeout(() => { this.loadTrackingPixels(); }, 10000); }, updateHeightVar() { const cookieConsentEl = document.querySelector(".js-cookie-consent"); let height = 0; if (cookieConsentEl && !cookieConsentEl.classList.contains("is-hidden")) { const rect = cookieConsentEl.getBoundingClientRect(); height = Math.min(Math.max(rect.bottom, 0), cookieConsentEl.offsetHeight); } document.documentElement.style.setProperty( "--p72-cookie-consent-height", `${height}px` ); }, showBanner() { const cookieConsentEl = document.querySelector(".js-cookie-consent"); if (!cookieConsentEl) { return; } cookieConsentEl.classList.remove("is-hidden"); cookieConsentEl.classList.add("is-visible"); this.updateHeightVar(); this.bindScroll(); }, hideBanner() { const cookieConsentEl = document.querySelector(".js-cookie-consent"); if (!cookieConsentEl) { return; } cookieConsentEl.classList.remove("is-visible"); cookieConsentEl.classList.add("is-hidden"); this.unbindScroll(); this.updateHeightVar(); }, onScroll() { if (this._raf) { return; } this._raf = window.requestAnimationFrame(() => { this._raf = null; this.updateHeightVar(); }); }, bindScroll() { if (this._scrollBound) { return; } this._scrollBound = true; this._onScroll = this.onScroll.bind(this); window.addEventListener("scroll", this._onScroll, { passive: true }); window.addEventListener("resize", this._onScroll, { passive: true }); }, unbindScroll() { if (!this._scrollBound) { return; } this._scrollBound = false; window.removeEventListener("scroll", this._onScroll); window.removeEventListener("resize", this._onScroll); }, observeHeight() { const cookieConsentEl = document.querySelector(".js-cookie-consent"); if (!cookieConsentEl || typeof ResizeObserver === "undefined") { return; } new ResizeObserver(() => { this.updateHeightVar(); }).observe(cookieConsentEl); }, handleClose() { this.setDismissed(); this.hideBanner(); }, init() { const cookieConsentEl = document.querySelector(".js-cookie-consent"); if (cookieConsentEl) { this.scheduleTrackingPixels(); if (this.isDismissed()) { this.updateHeightVar(); } else { this.showBanner(); } this.observeHeight(); } else { document.documentElement.style.setProperty( "--p72-cookie-consent-height", "0px" ); } }, }; /* ========================================================================== Smooth anchor scrolling with header offset ========================================================================== */ function getAnchorTarget(hash) { if (!hash || hash === "#") return null; const id = hash.startsWith("#") ? hash.substring(1) : hash; let target = document.getElementById(id); if (!target) { try { target = document.querySelector(hash); } catch (error) { return null; } } return target; } function scrollToElementWithHeaderOffset(element) { const headerHeight = parseInt( getComputedStyle(document.documentElement) .getPropertyValue("--p72-header-height") ) || 0; const top = element.getBoundingClientRect().top + window.pageYOffset - headerHeight; window.scrollTo({ top, behavior: "smooth", }); } function initSmoothAnchorScrolling() { document.addEventListener("click", function (event) { const link = event.target.closest( 'a[href^="#"]:not([href="#"])' ); if (!link) return; const href = link.getAttribute("href"); const target = getAnchorTarget(href); if (target) { event.preventDefault(); scrollToElementWithHeaderOffset(target); if (history.pushState) { history.pushState(null, null, href); } } }); if (window.location.hash) { setTimeout(() => { const target = getAnchorTarget(window.location.hash); if (target) { scrollToElementWithHeaderOffset(target); } }, 100); } } /* ========================================================================== GSAP ScrollTrigger animations ========================================================================== */ function initGsapScrollAnimations() { if (typeof gsap === "undefined" || typeof ScrollTrigger === "undefined") { console.warn("GSAP or ScrollTrigger is not available."); return; } gsap.registerPlugin(ScrollTrigger); document.querySelectorAll(".js-gsap-trigger").forEach((trigger) => { /** * Fade in on scroll */ const fadeItems = trigger.querySelectorAll(".js-gsap-fade-in"); if (fadeItems.length > 0) { fadeItems.forEach((item, index) => { gsap.to(item, { opacity: 1, duration: 0.8, ease: "power1.in", scrollTrigger: item, delay: 0.1 * index, }); }); } /** * Scale in on scroll */ const scaleItems = trigger.querySelectorAll(".js-gsap-scale-in"); if (scaleItems.length > 0) { scaleItems.forEach((item, index) => { gsap.to(item, { scale: 1, opacity: 1, duration: 0.8, ease: "power1.in", scrollTrigger: item, delay: 0.1 * index, transformOrigin: "center center", }); }); } /** * Slide up on scroll */ const slideUpItems = trigger.querySelectorAll(".js-gsap-slide-in-up"); if (slideUpItems.length > 0) { slideUpItems.forEach((item, index) => { gsap.to(item, { opacity: 1, y: 0, duration: 0.8, ease: "power1.in", scrollTrigger: item, delay: 0.1 * index, }); }); } /** * Card entrance animation * * Note: * In the original bundle this is inside `.js-gsap-trigger`, * but it is not actually tied to ScrollTrigger. It runs immediately. */ const cards = trigger.querySelectorAll(".js-card-animate"); if (cards.length > 0) { console.log("Found cards to animate:", cards.length); gsap.set(cards, { opacity: 0, y: 12, filter: "blur(0.5px)", clearProps: "none", }); gsap.to(cards, { opacity: 1, y: 0, filter: "blur(0px)", duration: 0.3, ease: "power2.out", stagger: 0.03, delay: 0.05, }); } }); /** * Generic scroll class trigger */ gsap.utils.toArray(".u-scroll-animation").forEach((element) => { ScrollTrigger.create({ trigger: element, start: "top 90%", onEnter: () => { element.classList.add("u-scroll-animate"); }, }); }); } /* ========================================================================== Load-more card animation ========================================================================== */ function initLoadMoreScrollRelatedAnimation() { if (typeof jQuery === "undefined") { console.warn("jQuery is not available."); return; } if (typeof gsap === "undefined") { console.warn("GSAP is not available."); return; } const $ = jQuery; $(".js-button-load-more").on("click", () => { const hiddenItems = $(".js-filter-item.u-display--none").not(".ft-hidden"); const itemsToShow = hiddenItems.slice(0, 8); if (itemsToShow.length > 0) { const animatedCards = itemsToShow.find(".js-card-animate").get(); if (animatedCards.length > 0) { gsap.set(animatedCards, { opacity: 0, y: 12, filter: "blur(0.5px)", }); } itemsToShow.removeClass("u-display--none"); const filterContainer = $(".js-filter-container"); try { if (filterContainer.data("isotope")) { filterContainer.isotope("layout"); } } catch (error) {} if (animatedCards.length > 0) { gsap.to(animatedCards, { opacity: 1, y: 0, filter: "blur(0px)", duration: 0.4, ease: "power2.out", stagger: 0.04, }); } $(".js-button-load-more") .blur() .removeClass("active focus"); if (hiddenItems.length <= 8) { $(".js-button-load-more").hide(); } } }); } /* ========================================================================== Optional: Swiper timeline with horizontal scroll/drag behavior ========================================================================== */ /** * The bundle initializes a horizontal Swiper timeline. * * Requires Swiper and Navigation module. * * In the original minified code: * - fl = Swiper * - ml = Navigation module */ function initTimelineSwiper() { if (typeof Swiper === "undefined") { console.warn("Swiper is not available."); return; } // If using Swiper modules globally, adjust as needed. // Swiper.use([Navigation]); new Swiper(".js-timeline", { slidesPerView: 1, spaceBetween: "-10%", breakpoints: { 640: { slidesPerView: 2, }, 768: { slidesPerView: 3, }, 1024: { slidesPerView: 4, }, 1200: { slidesPerView: 5, }, }, direction: "horizontal", freeMode: true, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); } /* ========================================================================== Optional: Posts slider horizontal drag/scroll behavior ========================================================================== */ class PostsSlider { constructor() { this.sliders = document.querySelectorAll(".js-posts-slider"); this.swiperInstances = []; this.init(); } init() { if (!this.sliders.length) return; if (typeof Swiper === "undefined") { console.warn("Swiper is not available."); return; } // If using Swiper modules globally, adjust as needed. // Swiper.use([Navigation]); this.sliders.forEach((slider) => { const container = slider.querySelector(".js-posts-slider-container"); if (!container) return; const prevButton = slider.querySelector(".js-posts-slider-prev"); const nextButton = slider.querySelector(".js-posts-slider-next"); const swiper = new Swiper(container, { slidesPerView: "auto", spaceBetween: 0, grabCursor: true, watchSlidesProgress: true, wrapperClass: "js-posts-slider-wrapper", slideClass: "js-posts-slider-card", navigation: { nextEl: nextButton, prevEl: prevButton, }, on: { init: function () { if (prevButton) { prevButton.classList.add("swiper-button-disabled"); prevButton.setAttribute("disabled", "disabled"); } }, slideChange: function () { if (prevButton) { if (this.isBeginning) { prevButton.classList.add("swiper-button-disabled"); prevButton.setAttribute("disabled", "disabled"); } else { prevButton.classList.remove("swiper-button-disabled"); prevButton.removeAttribute("disabled"); } } if (nextButton) { if (this.isEnd) { nextButton.classList.add("swiper-button-disabled"); nextButton.setAttribute("disabled", "disabled"); } else { nextButton.classList.remove("swiper-button-disabled"); nextButton.removeAttribute("disabled"); } } }, }, }); this.swiperInstances.push(swiper); }); } } /* ========================================================================== Main initializer ========================================================================== */ function initExtractedScrollFunctionality() { cookieConsentScroll.init(); CookieConsentTracking.init(); initSmoothAnchorScrolling(); initGsapScrollAnimations(); initLoadMoreScrollRelatedAnimation(); initTimelineSwiper(); new PostsSlider(); } /* ========================================================================== DOM ready ========================================================================== */ document.addEventListener("DOMContentLoaded", () => { initExtractedScrollFunctionality(); });

Point72, L.P. and its affiliates and our third-party partners use cookies and similar technologies to view and retain your site interactions to perform analytics, enable site functionality and assist our marketing efforts exclusively for recruiting purposes. By continuing to use our site, you consent to these data practices, as described in our Privacy Policy.

  • About Us
  • Careers
  • Perspectives
Browse Open Roles
Menu
  • About Us
    • What We Do
    • Our Values
    • Leadership
    • Locations
  • Careers
    • Working Here
    • Students & Early-Career
    • Point72 Academy
    • Fundamental Equities
    • Cubist Systematic
    • Point72 LaunchPoint
    • Global Macro
    • Private Investments
    • Investment Services
    • Proprietary Research
  • Perspectives
Browse Open Roles
What We Do
Learn about the strategies and asset classes that make up our global business.
Our Values
See how we support our people, communities, and the planet through our ESG efforts.
Leadership
Meet the team responsible for shaping our firm.
Locations
Find us in financial hubs across the globe as we pursue the worlds best talent.

Working Here

Learn about the culture and community you can expect when you join us.
Define Your Path

Students & Early-Career

  • All Programs
  • Point72 Academy

Experienced Professionals

  • Fundamental Equities
  • Cubist Systematic
  • Point72 LaunchPoint
  • Global Macro
  • Private Investments
  • Investment Services
  • Proprietary Research
if (window.innerWidth > 768) { document.write(' /* rules */ <\/script>'); } /* rules */ !function(){"use strict";var r,n={},e={};function t(r){var o=e[r];if(void 0!==o)return o.exports;var u=e[r]={exports:{}};return n[r].call(u.exports,u,u.exports,t),u.exports}t.m=n,r=[],t.O=function(n,e,o,u){if(!e){var i=1/0;for(s=0;s
=u)&&Object.keys(t.O).every(function(r){return t.O[r](e[a])})?e.splice(a--,1):(f=!1,u0&&r[s-1][2]>u;s--)r[s]=r[s-1];r[s]=[e,o,u]},t.n=function(r){var n=r&&r.__esModule?function(){return r.default}:function(){return r};return t.d(n,{a:n}),n},t.d=function(r,n){for(var e in n)t.o(n,e)&&!t.o(r,e)&&Object.defineProperty(r,e,{enumerable:!0,get:n[e]})},t.o=function(r,n){return Object.prototype.hasOwnProperty.call(r,n)},function(){var r={666:0};t.O.j=function(n){return 0===r[n]};var n=function(n,e){var o,u,i=e[0],f=e[1],a=e[2],c=0;if(i.some(function(n){return 0!==r[n]})){for(o in f)t.o(f,o)&&(t.m[o]=f[o]);if(a)var s=a(t)}for(n&&n(e);c console.log("Custom tracking script loaded after consent tracking delay");

Software Engineer, Back Office Systems

Apply Now
Experience

Experienced Professionals

Location

New York

Focus

Software & System Engineering

Business

Point72

A Career with Point72s Technology Team

As Point72 reimagines the future of investing, our Technology team is constantly evolving our firms IT infrastructure and engineering capabilities, positioning us at the forefront of a rapidly evolving technology landscape. Were a team of experts who experiment and work to discover new ways to harness open-source solutions, modern cloud architectures, and sophisticated Artificial Intelligence (AI) solutions, while embracing enterprise agile methodologies. Our commitment to building and innovating in the AI space provides the framework intended to drive smarter decision making and enhance how we build and operate our platforms and applications.


As a member of Point72s Technology team, we encourage and support your professional development from day onehelping you advance your technical skills, contribute innovative ideas, and satisfy your own intellectual curiosityall while delivering real business impact for our multi-billion-dollar global business.


What youll do

  • Build software applications and deliver software enhancements and projects supporting fund accounting and trade processing technology.
  • Work closely with business stakeholders to develop software solutions using test-driven and agile software development methodologies.
  • Be responsible for system upgrades and features supporting resiliency and capacity improvements, automation and controls, and integration with internal and external vendors and services.
  • Work with DevOps teams to manage and resolve operational issues and leverage CI/CD platforms while following DevOps practices within the team and projects.
  • Continuously improve the platforms using the latest technologies and software development ideas.
  • Participate in initiatives to transition select applications to cloud platforms, enhancing stability, scalability and performance of the existing platform.
  • Develop close working relationships and collaborate with other technology teams to deliver cross-departmental initiatives.

Whats required

  • 3+ years of professional software development experience with a focus on python/Java/.Net based technologies.
  • Strong SQL development and experience developing large-scale data warehouses.
  • Experience developing projects based on messaging architectures, high volume streaming, and/or transaction processing systems.
  • Experience with building and consuming RESTful services.
  • Understanding of agile methodologies.
  • Excellent verbal communication skills.
  • Strong problem solving and analytical skills.
  • Familiarity with Java.
  • Commitment to the highest ethical standards.

We take care of our people

We invest in our people, their careers, their health, and their well-being. When you work here, we provide:

  • Fully-paid health care benefits
  • Generous parental and family leave policies
  • Mental and physical wellness programs
  • Volunteer opportunities
  • Non-profit matching gift program
  • Support for employee-led affinity groups representing women, minorities and the LGBT+ community
  • Tuition assistance
  • A 401(k) savings program with an employer match and more

About Point72

Point72 Asset Management is a global firm led by Steven Cohen that invests in multiple asset classes and strategies worldwide. Resting on more than a quarter-century of investing experience, we seek to be the industrys premier asset manager through delivering superior risk-adjusted returns, adhering to the highest ethical standards, and offering the greatest opportunities to the industrys brightest talent. Were inventing the future of finance by revolutionizing how we develop our people and how we use data to shape our thinking. For more information, visit www.Point72.com/working-here


The annual base salary range for this role is $160,000-$225,000 (USD) , which does not include discretionary bonus compensation or our comprehensive benefits package. Actual compensation offered to the successful candidate may vary from posted hiring range based upon geographic location, work experience, education, and/or skill level, among other things.


Apply Now

Job Application Checklist

  • Rsum
  • Education background
Apply Now

Still Exploring?

Browse Open Roles

P72 Careers - Footer
/* Main footer padding control */ @media (min-width: 1921px) { .c-menu-footer__graphic{ margin-bottom: -85px !important; } .c-footer{ padding-top:40px !important; } .c-footer__upper{ /*padding-top:100px;*/ } .c-menu-footer__menu{ padding-top:20px !important; } .c-footer__branding{ margin-bottom:0px !important; } .c-menu-footer__link{ line-height:1.3 !important; font-size:1.127rem !important; } .c-menu-footer__title{ line-height:1.4 !important; } } @media (max-width: 1920px) { .c-menu-footer__graphic{ margin-bottom: -65px !important; } .c-menu-footer__title{ line-height:1.4 !important; } .c-menu-footer__link{ line-height:1.3 !important; font-size:1.127rem !important; } .c-menu-footer__menu{ padding-top:20px; } .c-footer__branding{ margin-bottom:0px !important; } } .c-menu-footer__title{ color:#f5f4ee; } @media (max-width: 1024px) { .c-footer__graphic { display: none; } } @media (max-width: 768px) { .c-footer{ padding-top:25px; } .c-footer__upper{ margin-bottom:-20px; } .c-footer__branding{ margin-top:20px; } .c-menu-utility__menu-item { padding-top:3px; } } @media (min-width: 769px) { .c-menu-utility__menu-item { padding-top:0; } }

Point72

  • About Us
    • What We Do
    • Our Values
    • Leadership
    • Locations
  • Join Our Team
    • Working Here
    • Students & Early-Career
    • Asia-Pacific Offices
    • Warsaw Office
  • Career Paths
    • Fundamental Equities
    • Point72 Academy
    • Point72 LaunchPoint
    • Cubist Systematic
    • Global Macro
    • Point72 Private Investments
    • Proprietary Research
    • Investment Services
  • Resources
    • Perspectives
    • General Inquiries
    • Press Inquiries
    • Investor Login
  • 2026 Point72. All Rights Reserved
  • | Global Privacy Policy
  • | Terms of Use
  • | Disclosures
  • | Brand Misuse Fraudulent Schemes Notice
// Mixpanel ignore tracking for known IPs var excludeIPS = '[65.213.72.30, 185.142.16.9, 203.176.115.9, 208.68.197.6, 208.68.197.9, 208.68.199.6, 208.68.199.9, 208.85.160.9, 208.85.161.9]'; $.getJSON('//api.ipify.org?format=json', function(data) { try{ if(true && excludeIPS.indexOf(data.ip) > -1)else{ mixpanel.unregister("$ignore"); mixpanel.track("View Page", ); mixpanel.people.set_once({ 'First Career Page Visit' : new Date().toISOString() }); mixpanel.people.set({ 'Last Career Page Visit' : new Date().toISOString() }); // Only for Careers Site mixpanel.people.increment("# of Career Page Visits"); (function(){ var links = document.querySelectorAll('a'); [].forEach.call(links, function(link) ); })(); } }catch(e){} }); jQuery(document).ready(function(){ var str = navigator.userAgent; if (str.toLowerCase().indexOf("firefox") >= 0) { jQuery('body').addClass("gecko"); } }); CSJobDetailModule.init('{\"lastModifiedDateFormatted\":\"2026-09-04\",\"job\":,\"friendlyJobName\":\"software-engineer-back-office-systems\",\"formattedTeam\":\"Software & System Engineering\",\"formattedLocation\":\"New York\",\"formattedArea\":\"Technology & Engineering\"}');