Assembler I

Danfoss
  • Easley, SC
  • Autofill and Review
25 days ago

Job Description

Job Description

Inject the flag directly into the main browser window and the session.window.isSFInternalUser = true;sessionStorage.setItem('SF_Internal_User', 'true');

document.addEventListener('DOMContentLoaded', function () {if (document.querySelector('.job-page')) {let columnOne = document.querySelector('.jobColumnOne');if (!columnOne) return;

let titleElement = columnOne.querySelector('span[itemprop="title"]');let titleText = titleElement ? titleElement.textContent.trim() : '';if (titleElement) titleElement.closest('.joblayouttoken').remove();

columnOne.insertAdjacentHTML('afterbegin', `

${titleText}

`);

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 jobLevelValue = "";let employeeGroupValue = "";

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 === "JobLevel") {jobLevelValue = valueText.toUpperCase().trim();} else if (propId === "EmployeeGroup") {employeeGroupValue = valueText.toLowerCase();}});

  • -- 1.5 FALLBACK DATA FROM JOB DESCRIPTION ---let descDiv = document.querySelector('.job-description') || columnOne.querySelector('[itemprop="description"]');if (descDiv) {let descText = descDiv.innerText || "";

if (!employeeGroupValue) {let eg = descText.match(/Employee Group:\s([^]+)/i);if (eg) employeeGroupValue = eg[1].toLowerCase().trim();}if (!countryRegionValue) {let cr = descText.match(/Country:\s([^]+)/i);if (cr) countryRegionValue = cr[1].toLowerCase().trim();}if (!regionValue) {let rg = descText.match(/Region:\s([^]+)/i);if (rg) regionValue = rg[1].toLowerCase().trim();}if (!jobLevelValue) {let jl = descText.match(/Job Level:\s([^]+)/i);if (jl && !jl[0].toLowerCase().includes("experience")) {jobLevelValue = jl[1].toUpperCase().trim();}}}

  • -- 2. RULE VALIDATION ---let isSalaryPaid = employeeGroupValue.includes('salary');

Job Level Rule: if >= PL09 or ZZ, hide the salary.let isJobLevelSalaryEligible = true;let plMatch = jobLevelValue.match(/PL(\d+)/);if (jobLevelValue.includes("ZZ")) {isJobLevelSalaryEligible = false;} else if (plMatch && parseInt(plMatch[1], 10) >= 9) {isJobLevelSalaryEligible = false;}

let fullLocationLower = (jobLocationValue + " " + countryRegionValue).toLowerCase();let isUSJob = fullLocationLower.includes("usa") || fullLocationLower.includes("united states") || /\bus\b/.test(fullLocationLower);

let allowedUSStates = ["california", "colorado", "delaware", "hawaii", "illinois", "maryland", "massachusetts", "minnesota", "nevada", "new jersey", "new york", "vermont", "washington", "d.c."];let allowedUSAbbr = ["ca", "co", "de", "hi", "il", "md", "ma", "mn", "nv", "nj", "ny", "vt", "wa", "dc"];let allowedGlobalCountries = ["austria", "slovakia", "lithuania", "latvia", "canada"];let allowedGlobalCountries = ["asd"]let isSalaryLocationValid = false;if (isUSJob) {let hasFullStateName = allowedUSStates.some(state =>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));}

let showSalaryRange = isSalaryLocationValid && isJobLevelSalaryEligible && isSalaryPaid;

  • -- 3. TOKEN PROCESSING AND DISPLAY ---allTokens.forEach(el =>{if (el.querySelector('[itemprop="description"]')) {return;}

let labelEl = el.querySelector('.joblayouttoken-label');if (labelEl) {let labelText = labelEl.innerText;let customPropertyid = generatePropertyId(labelText);

  • -- ABSOLUTE REMOVAL OF TOKENS USED FOR LOGIC ---if (customPropertyid === "EmployeeGroup" ||customPropertyid === "CountryRegion" ||customPropertyid === "Region" ||customPropertyid === "JobLevel") {el.style.display = 'none';el.remove();return;}

  • -- BUSINESS FILTERS ---if (customPropertyid === "SalaryRange" && !showSalaryRange) {el.style.display = 'none';el.remove();return;}

  • -- LABEL TEXT WORKAROUNDS ---if (customPropertyid === "SalaryRange" && labelText.toLowerCase().includes("recruitment salary range")) {labelEl.innerText = labelText.replace(/Recruitment Salary Range/ig, "Annual Salary Range");}if (labelText.includes("(Short)")) {labelEl.innerText = labelText.replace(/(Short)/g, "(s)");}

  • -- BRUTE FORCE STYLING ---labelEl.style.setProperty('font-weight', 'bold', 'important');labelEl.style.setProperty('font-size', '14px', 'important');labelEl.style.setProperty('color', '#303030', 'important');labelEl.style.setProperty('font-family', 'Verdana, Geneva, sans-serif', 'important');

let valueEl = el.querySelector('.rtltextaligneligible');if (valueEl) {valueEl.style.setProperty('font-weight', 'normal', 'important');valueEl.style.setProperty('font-size', '15px', 'important');valueEl.style.setProperty('color', '#303030', 'important');valueEl.style.setProperty('font-family', 'Verdana, Geneva, sans-serif', 'important');}

  • -- ADD ICONS ---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 'JobExperienceLevel':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});

let wrapper = el.querySelector(.job-token-${customPropertyid}-wrapper);wrapper.appendChild(labelEl.parentElement);

let emptySibling = document.querySelector(.job-token-${customPropertyid}-wrapper).nextSibling;if(emptySibling && emptySibling.nodeType === 3) emptySibling.remove();}

grid.appendChild(el);}});

  • -- 4. CLEAN UP JOB DESCRIPTION HARDCODED TOKENS ---if (descDiv) {let descHtml = descDiv.innerHTML;descHtml = descHtml.replace(/Employee Group:[\s\S]*?(?=Danfoss engineers solutions that increase machine productivity, reduce emissions, lower energy consumption, and enable electrification. Our solutions are used in areas such as refrigeration, air conditioning, heating, power conversion, motor control, industrial machinery, marine, and on- and off-highway equipment. We also provide solutions for data centers, renewable energy, energy storage, heat recovery, as well as contribute to district energy solutions for cities.Our innovative engineering dates back to 1933. Danfoss is family-owned and employs over 39,000 people. We create long-term value for our customers in more than 100 countries with a global footprint of around 100 factories."},"de_DE": { image: "https:rmkcdn.successfactors.com/ef55fddb/7571acdc-3a84-48b1-bac6-4.jpg", description: "Danfoss entwickelt Lösungen, die die Produktivität von Maschinen steigern, Emissionen reduzieren, den Energieverbrauch senken und Elektrifizierung ermöglichen. Unsere Lösungen kommen in Bereichen wie Kälte- und Klimatechnik, Heizung, Energieumwandlung, Motorsteuerung, Industriemaschinen, Schifffahrt sowie in On- und Off-Highway-Anwendungen zum Einsatz. Darüber hinaus bieten wir Lösungen für Rechenzentren, erneuerbare Energien, Energiespeicherung und Wärmerückgewinnung und tragen zu Fernenergielösungen für Städte bei. Unsere innovative Ingenieurskunst reicht bis ins Jahr 1933 zurück. Danfoss ist ein familiengeführtes Unternehmen mit über 39.000 Mitarbeitenden. Wir schaffen langfristigen Mehrwert für unsere Kunden in mehr als 100 Ländern - mit rund 100 Produktionsstätten weltweit." },"sk_SK": { image: "https:rmkcdn.successfactors.com/ef55fddb/7571acdc-3a84-48b1-bac6-4.jpg", description: "Danfoss vyvíja rieenia, ktoré zvyujú produktivitu strojov, zniujú emisie, zniujú spotrebu energie a umoujú elektrifikáciu. Nae rieenia sa pouívajú v oblastiach ako chladenie, klimatizácia, vykurovanie, konverzia energie, riadenie motorov, priemyselné stroje, námorný sektor a cestná aj mimocestná technika. Poskytujeme tie rieenia pre dátové centrá, obnovitené zdroje energie, ukladanie energie, rekuperáciu tepla a prispievame k rieeniam centralizovaného zásobovania energiou pre mestá. Naa inovatívna technická tradícia siaha a do roku 1933. Danfoss je rodinná spolonos s viac ako 39 000 zamestnancami. Vytvárame dlhodobú hodnotu pre naich zákazníkov vo viac ako 100 krajinách a máme pribline 100 výrobných závodov po celom svete." },"pl_PL": { image: "https:rmkcdn.successfactors.com/ef55fddb/7571acdc-3a84-48b1-bac6-4.jpg", description: "Danfoss opracowuje rozwizania, które zwikszaj wydajno maszyn, redukuj emisje, obniaj zuycie energii oraz umoliwiaj elektryfikacj. Nasze rozwizania s wykorzystywane w takich obszarach jak chodnictwo, klimatyzacja, ogrzewanie, przetwarzanie energii, sterowanie silnikami, maszyny przemysowe, sektor morski oraz pojazdy drogowe i pozadrogowe. Oferujemy równie rozwizania dla centrów danych, energii odnawialnej, magazynowania energii i odzysku ciepa oraz wspieramy miejskie systemy ciepownicze. Nasza innowacyjna dziaalno inynieryjna siga 1933 roku. Danfoss jest firm rodzinn i zatrudnia ponad 39 000 pracowników. Tworzymy dugoterminow warto dla naszych klientów w ponad 100 krajach, posiadajc okoo 100 zakadów produkcyjnych na caym wiecie." },"da_DK": { image: "https:rmkcdn.successfactors.com/ef55fddb/7571acdc-3a84-48b1-bac6-4.jpg", description: "Danfoss udvikler løsninger, der øger maskinernes produktivitet, reducerer emissioner, sænker energiforbruget og muliggør elektrificering. Vores løsninger anvendes inden for områder som køling, aircondition, opvarmning, energikonvertering, motorstyring, industrimaskiner, marine samt on- og off-highway udstyr. Vi leverer også løsninger til datacentre, vedvarende energi, energilagring og varmegenvinding samt bidrager til fjernvarmeløsninger til byer. Vores innovative ingeniørarbejde går tilbage til 1933. Danfoss er familieejet og beskæftiger mere end 39.000 medarbejdere. Vi skaber langsigtet værdi for vores kunder i mere end 100 lande med et globalt fodaftryk på omkring 100 fabrikker." },"es_MX": { image: "https:rmkcdn.successfactors.com/ef55fddb/7571acdc-3a84-48b1-bac6-4.jpg", description: "Danfoss desarrolla soluciones que aumentan la productividad de las máquinas, reducen emisiones, disminuyen el consumo de energía y permiten la electrificación. Nuestras soluciones se utilizan en áreas como refrigeración, aire acondicionado, calefacción, conversión de energía, control de motores, maquinaria industrial, sector marino y equipos dentro y fuera de carretera. También ofrecemos soluciones para centros de datos, energías renovables, almacenamiento de energía y recuperación de calor, y contribuimos a soluciones energéticas urbanas. Nuestra ingeniería innovadora se remonta a 1933. Danfoss es una empresa familiar con más de 39,000 empleados. Creamos valor a largo plazo para nuestros clientes en más de 100 países, con una presencia global de alrededor de 100 plantas de producción." },"zh_CN": { image: "https:rmkcdn.successfactors.com/ef55fddb/7571acdc-3a84-48b1-bac6-4.jpg", description: ", ,, 1933,39,000100,100" },"fr_FR": { image: "https:rmkcdn.successfactors.com/ef55fddb/7571acdc-3a84-48b1-bac6-4.jpg", description: "Danfoss développe des solutions qui augmentent la productivité des machines, réduisent les émissions, diminuent la consommation d'énergie et permettent l'électrification. Nos solutions sont utilisées dans des domaines tels que la réfrigération, la climatisation, le chauffage, la conversion d'énergie, le contrôle des moteurs, les machines industrielles, le secteur maritime ainsi que les équipements routiers et tout-terrain. Nous fournissons également des solutions pour les centres de données, les énergies renouvelables, le stockage d'énergie et la récupération de chaleur, et nous contribuons aux solutions énergétiques urbaines. Notre ingénierie innovante remonte à 1933. Danfoss est une entreprise familiale qui emploie plus de 39 000 personnes. Nous créons de la valeur à long terme pour nos clients dans plus de 100 pays, avec une présence mondiale d'environ 100 sites de production." }}};

/

  • HELPER FUNCTION: String Purifier
  • When someone types "LeanHeat!" or " Lean Heat ", this function removes
  • spaces, punctuation, and makes it lowercase ("leanheat").
  • This makes sure we always match the brand in our database correctly.
  • /function purify(str) {return str.toLowerCase().replace(/[^a-z0-9]/g, '');}

/

  • MAIN LOGIC: Render Brand Content
  • This function looks at the page, finds the brand name, and draws the image.
  • /function renderBrandContent() {Step 1: Grab every single element currently visible on the pagevar elements = document.querySelectorAll('*');

Default brand is "standard" in case we don't find anythingvar detectedKey = "standard";

Step 2: Loop through all elements to find the label "Brand:"for (var i = 0; i

Clean up the text (e.g., "Lean Heat" ->"leanheat")var cleanValue = purify(rawValue);

If this clean name exists in our database above, save it as the detected brandif (brandContent[cleanValue]) {detectedKey = cleanValue;}

Stop searching since we found what we neededbreak;}}

Step 3: Find out what language the user is viewing the page in (e.g., "en-US" becomes "enUS")var lang = document.documentElement.lang.replace('-', '') || 'en_GB';

Step 4: Get the specific image and text for the detected Brand AND LanguageFallbacks: If language doesn't exist, use English. If brand doesn't exist, use standard English.var data = brandContent[detectedKey][lang] || brandContent[detectedKey]['en_GB'] || brandContent['standard']['en_GB'];

Step 5: Check if we haven't already drawn our custom block. If not, draw it!if (!document.querySelector('.custom-brand-display')) {This is the HTML code we will inject into the pageIt uses the classes we styled in the section abovevar contentToInject = `

${data.description}

`;

Find the "Apply Now" button container...var applyContainer = document.querySelector('.applylink.unify-button-container');...and paste our new HTML block right below itif (applyContainer) applyContainer.insertAdjacentHTML('afterend', contentToInject);}}

/

  • DYNAMIC LISTENER (MutationObserver)
  • Web pages today often load information slowly or change dynamically without reloading.
  • This "Observer" watches the page continuously. If anything changes, it runs our
  • function again to ensure the image appears even if the page loads slowly.
  • /var observer = new MutationObserver(renderBrandContent);Tell the observer to watch the whole body for any added or removed elementsobserver.observe(document.body, { childList: true, subtree: true });

Also run it once immediately just in case the page is already fully loadedrenderBrandContent();})();

(function() {/ ==========================================================================SCRIPT 2: CLEANUP SCRIPT (Element Hider)Since Script 1 added a beautiful new image and description, we don't wantthe user to still see the raw, ugly text that says "Brand: LeanHeat" onthe page. This script finds that old text and makes it invisible.========================================================================== /

function hideBrandElement() {Find all text-bearing elements on the pagevar allLabels = document.querySelectorAll('.joblayouttoken-label, span, div, p, label');

Check each element one by oneallLabels.forEach(function(el) {If the element says exactly "Brand:"if (el.textContent && el.textContent.trim() === "Brand:") {Hide the word "Brand:"el.style.display = 'none';

Hide the value next to it (e.g., the word "LeanHeat")if (el.nextElementSibling) {el.nextElementSibling.style.display = 'none';}

If they are sitting inside a small container box by themselves, hide the box tooif (el.parentElement && el.parentElement.children.length

Numbers & Facts

LocationEasley, SC

Skills

  • Alternative Energyunmatched
  • English Languageunmatched
  • HTML (HyperText Markup Language)unmatched
  • HVACunmatched
  • Motor Control Systemsunmatched
  • Network Operations Centerunmatched
  • Productivity Managementunmatched
  • Refrigerationunmatched
  • Scripting (Scripting Languages)unmatched

Be found by employers

5,500+ employers search our resume database daily. Add yours to get found by recruiters looking for candidates like you.

Level up your application

Professional resume templates

Browse dozens of recruiter approved resume templates, layouts and formats. Choose your favorite and make it your own in minutes.

Free resume templates

Free resume builder

Improve your existing resume or start from scratch and create a standout, ATS-friendly resume. Add job-specific content, download and apply.

Free resume builder