Senior Product Application Engineer
About the role
Job Description
`); let grid = columnOne.querySelector('.job-grid'); let allTokens = Array.from(columnOne.querySelectorAll('.joblayouttoken')); // - 1. CAPTURE VARIABLES FOR BUSINESS RULES - let jobLocationValue = ""; let countryRegionValue = ""; let regionValue = ""; let ipeLevelValue = null; let employeeGroupValue = ""; // - INTERNAL USER VALIDATION VIA CUSTOM PLUGIN - // Reads global flags injected by the authentication plugin let pluginWindowCheck = !!window.isSFInternalUser; let pluginSessionCheck = sessionStorage.getItem('SF_Internal_User') === 'true'; let isInternalPortal = pluginWindowCheck || pluginSessionCheck; // Iterate through all tokens to capture their values before manipulating the DOM allTokens.forEach(el => { let labelEl = el.querySelector('.joblayouttoken-label'); if (!labelEl) return; let labelText = labelEl.innerText; let propId = generatePropertyId(labelText); let valueEl = el.querySelector('.rtltextaligneligible'); let valueText = valueEl ? valueEl.textContent.trim() : ""; if (propId === "JobLocation") { jobLocationValue = valueText; } else if (propId === "CountryRegion") { countryRegionValue = valueText; } else if (propId === "Region") { regionValue = valueText; } else if (propId === "IPELevel") { let match = valueText.match(/\d+/); if (match) ipeLevelValue = parseInt(match[0], 10); } else if (propId === "EmployeeGroup") { employeeGroupValue = valueText.toLowerCase(); } }); // - 2. BUSINESS RULES VALIDATION - let isSalaryPaid = employeeGroupValue.includes('salary'); let isIpeValid = ipeLevelValue !== null && ipeLevelValue fullLocationLower.includes(state)); let hasStateAbbr = allowedUSAbbr.some(abbr => { let regex = new RegExp(`\\b${abbr}\\b`); return regex.test(fullLocationLower); }); isSalaryLocationValid = hasFullStateName || hasStateAbbr; } else { isSalaryLocationValid = allowedGlobalCountries.some(country => fullLocationLower.includes(country)); } // Job Level Visibility Rule (Legacy locations + EER Region) let allowedJobLevelLocations = ["austria", "slovakia", "lithuania", "latvia"]; let isJobLevelLocationValid = allowedJobLevelLocations.some(loc => fullLocationLower.includes(loc)); let isEERRegion = regionValue.toUpperCase().trim() === "EER"; // Final flags to determine if the fields should be shown let showSalaryRange = isSalaryLocationValid && isIpeValid && isSalaryPaid; let showJobLevel = (isJobLevelLocationValid || isEERRegion) && isIpeValid && isSalaryPaid && isInternalPortal; // - 3. TOKEN PROCESSING AND DISPLAY - let keepAddingToGrid = true; allTokens.forEach(el => { // Stop adding elements to the grid once the job description starts if (!keepAddingToGrid || el.querySelector('[itemprop="description"]')) { return; } let labelEl = el.querySelector('.joblayouttoken-label'); if (labelEl) { let labelText = labelEl.innerText; let customPropertyid = generatePropertyId(labelText); // - ABSOLUTE REMOVAL OF LOGIC-ONLY TOKENS - if ( customPropertyid === "EmployeeGroup" || customPropertyid === "CountryRegion" || customPropertyid === "Region" || customPropertyid === "IPELevel" ) { el.style.display = 'none'; // Force visual hiding el.remove(); // Remove from DOM return; } // - APPLY VISIBILITY BUSINESS FILTERS - if (customPropertyid === "SalaryRange" && !showSalaryRange) { el.style.display = 'none'; el.remove(); return; } if (customPropertyid === "JobLevel" && !showJobLevel) { el.style.display = 'none'; el.remove(); return; } // Cosmetic adjustment for short labels if (labelText.includes("(Short)")) { labelEl.innerText = labelText.replace(/\(Short\)/g, "(s)"); } // Append custom icons based on the mapped property ID let elType = labelEl.nextElementSibling; if (elType) { let icon = ''; let iconUrl = ''; switch (customPropertyid) { case 'JobLocation': icon = 'glyphicon-map-marker'; break; case 'BusinessUnit': icon = 'glyphicon-briefcase'; break; case 'JobCategory': icon = 'glyphicon-dashboard'; break; case 'EmploymentType': icon = 'glyphicon-star-empty'; break; case 'ReqID': icon = 'glyphicon-calendar'; break; case 'WorkLocationType': icon = 'glyphicon-paste'; break; case 'JobLevel': iconUrl = 'https://rmkcdn.successfactors.com/ef55fddb/b4cf3492-3cb2-4e29-a914-3.png'; break; case 'SalaryRange': iconUrl = 'https://rmkcdn.successfactors.com/ef55fddb/3bd06ab1-e5dc-4e72-abcb-3.png'; break; case 'TAPartner': iconUrl = 'https://rmkcdn.successfactors.com/ef55fddb/66a66419-f8c9-4f0e-b94a-6.png'; break; default: icon = ''; } let iconHtml = ''; if (icon) { iconHtml = ``; } else if (iconUrl) { iconHtml = ``; } labelEl.parentElement.insertAdjacentHTML('beforebegin', `
${iconHtml}
/ Reset native spacing for RMK tokens / .jobColumnOne .joblayouttoken { margin: 0 !important; padding: 0 !important; } / Job Title Header (H1) / .job-title-heading { font-size: 24px; font-weight: bold; color: #1d2d3e; margin-top: 10px; margin-bottom: 15px; } / Main Green Container Background / .job-info-wrapper .job-info-container { padding: 20px 15px; width: 100%; background-color: #cde9da; border-radius: 5px; margin-bottom: 25px; margin-top: 10px; box-sizing: border-box; } / 3-Column Grid System / .job-info-wrapper .job-grid { width: 100%; margin: 0 auto; display: grid; grid-template-columns: repeat(3, 1fr); grid-column-gap: 15px; grid-row-gap: 15px; } / Mobile Responsiveness for Grid / @media screen and (max-width: 576px) { .job-info-wrapper .job-grid { grid-template-columns: repeat(1, 1fr) !important; grid-row-gap: 10px; } } .job-info-wrapper .joblayouttoken { padding-left: 0 !important; } / Token Wrapper Flexbox Layout / .job-token-wrapper { display: flex; flex-direction: row; align-items: center; } .job-token-wrapper > div { display: flex; flex-direction: column; } / Custom Icon Alignment / .joblayouttoken-label-icon::before { padding: 0 8px 0 0; font-family: "Glyphicons Halflings", custom1a06310ce5654f85ac9c6 !important; font-size: 18px; color: #12512f !important; } / Token Label Font Styles / .job-token-wrapper .joblayouttoken-label:not(.joblayouttoken-label-icon) { font-size: 14px; color: #303030; margin-bottom: 0px; font-weight: bold; } / Token Value Font Styles / .job-token-wrapper .rtltextaligneligible { font-weight: normal !important; font-family: custom2abfb6e0ee794a99894a6 !important; font-size: 15px; color: #303030; margin: 0; }
Questions about this role
Want AI Applyd to auto-apply to roles like this?
We tailor your resume per posting, fill the forms, and track replies for you.