Cyber Security Specialist Job Details | OTB Spa

OTB

Publiée le
26/05/2026
Contrat
Stage
Localisation
Milan, IT
Taille équipe

Avantages

Missions clés Agir en tant que point de contact principal pour le SOC. · Surveiller le trafic réseau, les journaux système et les alertes de sécurité. · Collaborer avec le SOC et l'équipe IT d'OTB pour enquêter sur les incidents.
Profil recherché Bac +8 (Doctorat) · 3-5 ans d'expérience · Collaboration · Autonomie · Organisation · Motivation à apprendre · CompTIA Cybersecurity Analyst (CySA+) · GIAC Security Essentials Certification (GSEC) · Certified Ethical Hacker
Outils & compétences SIEM, Splunk, Microsoft Sentinel, Firewall, WAF, VPN, IDS/IPS, EDR, EPP, DLP, SWG, CASB, NAC, IAM, Penetration testing, vulnerability scanning, SOAR, patch management solution, data leakage solution, DDOS prevention, DNS Security, Cloud Security

Le poste en détail

OTB Spa is looking for a Cyber Security Specialist to join the ICT Infrastructure & Operations department with the purpose of safeguarding the organization’s digital assets and ensuring the confidentiality, integrity, and availability of sensitive information. In details, the resource will: • Act as a main contact point for our SOC, monitoring the service KPI and contribute to the service improvements; • Actively monitor network traffic, system logs, and security alerts to identify potential threats or anomalies; • Collaborate with the SOC and OTB IT Team to investigate incidents, assess risks, and develop strategies for threat mitigation; • Collaborate to design, implement, maintain and evolve all the security tools such as SIEM, EDR/XDR, Vulnerability scanner, IDS/IPS, Proxy etc.; • Collaborate on the management, configuration, patching, monitoring, and fine tuning of the Vulnerability & Application Scanning products; • Support other teams on vulnerability resolution; • Participate in vulnerability assessments and penetration testing to proactively uncover weaknesses in the organization’s infrastructure; • Contribute to the development and enforcement of security policies, standards, and procedures; • Establish Security Awareness Program to educate employees about security best practices, social engineering risks, and password hygiene. Job requirements: • Minimum 3 years’ experience in Cyber Security area; • Good knowledge of SIEM tools such as Splunk, Microsoft Sentinel etc.; • Hands-on experience and knowledge on the following technologies: ­ Firewall, WAF, VPN, IDS/IPS, EDR, EPP, DLP, SWG, CASB, NAC, IAM; ­ Penetration testing, vulnerability scanning, SIEM, SOAR, patch management solution, data leakage solution, DDOS prevention, DNS Security, Cloud Security; • Familiarity with the NIST Cybersecurity Framework and a threat intelligence framework such as MITRE ATT&CK. • Experience with supporting an environment that includes Microsoft Windows, UNIX, Macintosh OSX, Linux, and mobile operating systems; • Ability to: ­ Effectively collaborate within the team and across departments; ­ Organize autonomously and efficiently multiple tasks; • Self-motivated to learn and grow; • Preference will be given to candidates with professional security management certification, such as CompTIA Cybersecurity Analyst (CySA+), GIAC Security Essentials Certification (GSEC), Certified Ethical hacker or other similar credentials. Job location: Milan. #LI-EM1 #OTB .buttontext8630a370e0f79c1d a{ border: 1px solid transparent; } .buttontext8630a370e0f79c1d a:focus{ border: 1px dashed #E00122 !important; outline: none !important; } Privacy policy available here: apps.otb.net/hr-gdpr/ Privacy policy available here: https://apps.otb.net/hr-gdpr/ Location: Milan, IT #job-location.job-location-inline { display: inline; } Seniority: Professional Employment Type: Full time Function: ICT Apply now » Find similar jobs: Corporate LEGAL TERMS COOKIE CUSTOMIZE CHOISES Opens in a new tab. Opens in a new tab. Opens in a new tab. © 2024 OTB SPA - ALL RIGHTS RESERVED - VAT IT01571110244 .onoffswitch .onoffswitch-inner:before { content: "Yes"; } .onoffswitch .onoffswitch-inner:after { content: "No"; } × Cookie Consent Manager When you visit any website, it may store or retrieve information on your browser, mostly in the form of cookies. Because we respect your right to privacy, you can choose not to allow some types of cookies. However, blocking some types of cookies may impact your experience of the site and the services we are able to offer. Required Cookies These cookies are required to use this website and can't be turned off. Required Cookies Show More Details Required Cookies Provider Description Enabled SAP as service provider We use the following session cookies, which are all required to enable the website to function: "route" is used for session stickiness "careerSiteCompanyId" is used to send the request to the correct data center "JSESSIONID" is placed on the visitor's device during the session so the server can identify the visitor "Load balancer cookie" (actual cookie name may vary) prevents a visitor from bouncing from one instance to another Cookies from provider SAPasserviceprovider are required and cannot be turned off Confirm My Choices Reject All Cookies Accept All Cookies var fblink = "https://www.facebook.com/sharer/sharer.php?u=https://www.otb.net/en/otb-career/"; var twlink = "https://twitter.com/share?url=https://www.otb.net/en/otb-career/&text=OTBCareers+%23OTB"; var gplink = "https://plus.google.com/share?url=https://www.otb.net/en/otb-career/"; var otbLogoNeroLink = "//rmkcdn.successfactors.com/97ed9e27/246948a9-ef35-4453-adac-7.svg"; var otbLogoBiancoLink = "//rmkcdn.successfactors.com/97ed9e27/3a497940-1080-46cd-911f-b.png"; var dieselLogoLink = "//rmkcdn.successfactors.com/97ed9e27/81ca2e04-e637-4367-8770-f.png"; var staffInternationalLogoLink = "//rmkcdn.successfactors.com/97ed9e27/5fefe6c6-57db-42a9-90ca-f.png" var jilSanderLogoLink = "//rmkcdn.successfactors.com/97ed9e27/8ab092a3-ab55-4ad7-9abd-4.png" var lrVicenzaLogoLink = "//rmkcdn.successfactors.com/97ed9e27/c17309c3-0285-4490-be81-3.jpg" var margielaLogoLink = "//rmkcdn.successfactors.com/97ed9e27/cfb68932-cb07-418b-a56f-4.png" var marniLogoLink = "//rmkcdn.successfactors.com/97ed9e27/e9483489-1609-4bd7-85a3-3.png" var viktorAndRolfLogoLink = "//rmkcdn.successfactors.com/97ed9e27/d138a0c2-3017-4c0f-85a5-e.png" var braveKidLogoLink = "//rmkcdn.successfactors.com/97ed9e27/79d4c2f6-5c62-4d98-9d24-2.png" var weiboLogoLink = "//rmkcdn.successfactors.com/97ed9e27/de14c1aa-db7e-45d7-9c92-6.svg" var backupSerializedElement = `

JOIN THE BRAVES

` var backupSerializedElementImg = `
` var chevronRightLink = "//rmkcdn.successfactors.com/97ed9e27/8dc9e85f-c480-4781-9337-c.svg"; var whatsappLogoLink = "//rmkcdn.successfactors.com/97ed9e27/4c87f3e7-01be-490d-b34f-f.svg"; var linkedinLogoLink = "//rmkcdn.successfactors.com/97ed9e27/3a0bb9d9-f457-4b06-b16e-c.svg"; var facebookLogoLink = "//rmkcdn.successfactors.com/97ed9e27/19530389-2a58-46d0-be6d-6.svg"; var twitterLogoLink = "//rmkcdn.successfactors.com/97ed9e27/fc83d4f2-0728-4816-8a4e-2.svg"; //btn animation var btns = document.getElementsByClassName("keywordsearch-button"); if (btns.length > 0) { if (btns.length > 1) { for (i = 1; i < btns.length; i++) { var btnWrapper = document.createElement("span"); var parentRef = btns[1].parentNode; btnWrapper.setAttribute("class", "btnWrp"); btnWrapper.appendChild(btns[1]); parentRef.appendChild(btnWrapper); } } } // query string var keywordSearchTitle = document.getElementsByClassName("keyword-title"); var searchQueryContent = document.getElementsByClassName("securitySearchQuery"); if (keywordSearchTitle.length > 0 && searchQueryContent.length > 0) { if (String.prototype.startsWith) { if (searchQueryContent[0].innerText.trim().startsWith('""')) { // keywordSearchTitle[0].style.visibility = "hidden"; keywordSearchTitle[0].style.display = "none"; } } else { if (searchQueryContent[0].innerText.trim().substring(0, 3) == (' ""'.trim())) { // keywordSearchTitle[0].style.visibility = "hidden"; keywordSearchTitle[0].style.display = "none"; } } } //open moreOption CustomSearch window.onload = function (e) { var moreOptionCust = document.getElementById("custom-options-search"); if (moreOptionCust) { moreOptionCust.click(); } } //move moreOptionSearch /* var searchBarContainer = document.getElementsByClassName("rd-keywordsearch"); searchBarContainer[1].appendChild(moreOption); var item = document.getElementById("newFacets"); if (item.childElementCount == 2) { var items = item.querySelectorAll('.optionsFacet.col-md-4'); for (var i = 0; i < items.length; i++) { items[i].classList.add("js_extend2Facet"); } } }*/ //breadcrumb back var breadcrumb = document.getElementsByClassName("breadcrumb"); if (breadcrumb.length > 0) { var area = document.createElement("div"); area.classList.add("js_breadcrumb_hover_area"); area.addEventListener("click", function (e) { window.history.go(-1); }, false); area.addEventListener("mouseover", function (e) { area.classList.add("js_cursor"); }, false); document.body.appendChild(area); } //SocialIcon var socialMain = document.getElementById("socialIconPlaceholder"); if (socialMain) { var socialIconContainer = document.createElement("ul") socialIconContainer.classList.add("js_social_list"); var fbNodeLi = document.createElement("li") fbNodeLi.classList.add("js_idle"); var gpNodeLi = document.createElement("li") gpNodeLi.classList.add("js_idle"); var twNodeLi = document.createElement("li") twNodeLi.classList.add("js_idle"); var fbNodeA = document.createElement("a") fbNodeA.classList.add("js_fb"); fbNodeA.href = fblink; fbNodeA.target = "_blank"; var twNodeA = document.createElement("a") twNodeA.classList.add("js_tweet"); twNodeA.href = twlink; twNodeA.target = "_blank"; var gpNodeA = document.createElement("a") gpNodeA.classList.add("js_gplus"); gpNodeA.href = gplink; gpNodeA.target = "_blank"; fbNodeLi.appendChild(fbNodeA); twNodeLi.appendChild(twNodeA); gpNodeLi.appendChild(gpNodeA); socialIconContainer.appendChild(fbNodeLi); socialIconContainer.appendChild(twNodeLi); socialIconContainer.appendChild(gpNodeLi); socialMain.insertBefore(socialIconContainer, socialMain.firstElementChild); } function addClasses() { var o = {}; var page = getPage(); console.log("%c" + "PAGINA CUSTOMIZZATA " + page, "font-size:20px"); if (page === "homepage") { o.imageCarousel = document.querySelectorAll(".imagecarousel3")[0]; window.addEventListener('resize', updateSlidesToShow); moveHeroBannerToLocalStorage(); addArrowsToSelect() addMoreFiltersButton() document.querySelectorAll('#content .inner .row.displayDTM[role="img"]')[0].style.paddingTop = 'unset' } else if (page === "search" || page === 'category') { o.jobTileList = document.querySelectorAll("#job-tile-list")[0]; o.content_search = document.querySelectorAll("#content")[0]; o.search_container = document.querySelectorAll('#search-wrapper')[0]; //changeShowingString() addArrowsToSelect() addMoreFiltersButton() if(page === 'category') { document.querySelectorAll('#content .inner .row.displayDTM[role="img"]')[0].style.paddingTop = 'unset' } } else if (page === "job") { o.content_job = document.querySelectorAll("#content")[0]; } else { console.log("%c" + "PAGINA NON CUSTOMIZZATA", "font-size:20px"); return false; } /* everywhere */ o.footer = document.querySelectorAll("#footer")[0]; if (page === 'homepage') o.search_container = document.querySelectorAll('.search.displayDTM')[0]; o.menu_desktop = document.querySelectorAll(".custom-desktop-header")[0]; o.menu_tablet = document.querySelectorAll(".custom-tablet-header")[0]; o.menu_mobile = document.querySelectorAll(".custom-mobile-header")[0]; o.outershell = document.querySelectorAll('#outershell')[0] for (var property of Object.keys(o)) { if (o[property]) { o[property].classList.add("custom_" + property); } else { console.log("%c" + "IMPOSSIBILE TROVARE " + property, "font-size:20px"); } } /* remove element style to override it */ if (document.querySelectorAll('#content > .inner > div.buttontext.displayDTM')[0] && document.querySelectorAll('.custom-header-logo')[0]) { document.querySelectorAll('#content > .inner > div.buttontext.displayDTM')[0].style.width = '' document.querySelectorAll('.custom-header-logo')[0].style.padding = '0' } /* add elements */ let header_background = document.createElement('div') header_background.classList.add('custom_header_background') header_background.classList.add('blur-filter') document.querySelectorAll('#outershell')[0].insertAdjacentElement('afterbegin', header_background); let arrow = 'north_east' if (document.querySelectorAll('.custom_menu_desktop .profile a')[0]) { document.querySelectorAll('.custom_menu_desktop .profile a')[0].insertAdjacentHTML('beforeend', arrow) } if (document.querySelectorAll('.custom_menu_tablet .profile a')[0]) { document.querySelectorAll('.custom_menu_tablet .profile a')[0].insertAdjacentHTML('beforeend', arrow) } if (document.querySelectorAll('.custom_menu_mobile .profile a')[0]) { document.querySelectorAll('.custom_menu_mobile .profile a')[0].insertAdjacentHTML('beforeend', arrow) } let search_button = document.createElement('button') search_button.classList.add('custom_button_search') search_button.innerHTML = ` SEARCH east `; if (document.querySelectorAll('#content .custom_search_container .jobAlertsSearchForm .container-fluid .columnizedSearchForm > .column ')[0]) { document.querySelectorAll('#content .custom_search_container .jobAlertsSearchForm .container-fluid .columnizedSearchForm > .column ')[0].append(search_button); } Array.from(document.querySelectorAll('.social-icons')).forEach(x => { x.style.cssText = 'display: block !important;' }) return true; } function openModal() { var modal = document.body.querySelector('#content>.inner>.modal.custom_modal'); modal.style.display = 'flex'; } function initiateModal() { const modal = document.createElement('div'); modal.classList.add('custom_modal', 'modal'); const modalContent = document.createElement('div'); modalContent.classList.add('modal-content'); const closeButton = document.createElement('span'); closeButton.classList.add('close'); closeButton.innerHTML = '×'; modalContent.appendChild(closeButton); const modalText = document.createElement('span'); modalText.textContent = "Share this job position with"; modalText.classList.add('modal-text-header'); modalContent.appendChild(modalText); const logosContainer = document.createElement('div'); logosContainer.classList.add('logos-container'); const currentPageURL = window.location.href; const facebookLogo = document.createElement('img'); const facebookLogoimgContainer = document.createElement('a'); facebookLogoimgContainer.classList.add('img-logo-container'); const facebookShareURL = 'https://www.facebook.com/sharer/sharer.php?u=' + encodeURIComponent(currentPageURL); facebookLogoimgContainer.href = facebookShareURL; facebookLogoimgContainer.target = '_blank'; facebookLogo.src = facebookLogoLink; facebookLogoimgContainer.appendChild(facebookLogo); logosContainer.appendChild(facebookLogoimgContainer); const linkedinLogo = document.createElement('img'); const linkedinLogoimgContainer = document.createElement('a'); linkedinLogoimgContainer.classList.add('img-logo-container'); const linkedinShareURL = 'https://www.linkedin.com/sharing/share-offsite/?url=' + encodeURIComponent(currentPageURL); linkedinLogoimgContainer.href = linkedinShareURL; linkedinLogoimgContainer.target = '_blank'; linkedinLogo.src = linkedinLogoLink; linkedinLogoimgContainer.appendChild(linkedinLogo); logosContainer.appendChild(linkedinLogoimgContainer); const whatsappLogo = document.createElement('img'); const whatsappLogoimgContainer = document.createElement('a'); whatsappLogoimgContainer.classList.add('img-logo-container'); const whatsappShareURL = 'https://api.whatsapp.com/send?text=' + encodeURIComponent(currentPageURL); whatsappLogoimgContainer.href = whatsappShareURL; whatsappLogoimgContainer.target = '_blank'; whatsappLogo.src = whatsappLogoLink; whatsappLogoimgContainer.appendChild(whatsappLogo); logosContainer.appendChild(whatsappLogoimgContainer); const twitterLogo = document.createElement('img'); const twitterLogoimgContainer = document.createElement('a'); twitterLogoimgContainer.classList.add('img-logo-container'); const twitterShareURL = 'https://twitter.com/intent/tweet?url=' + encodeURIComponent(currentPageURL); twitterLogoimgContainer.href = twitterShareURL; twitterLogoimgContainer.target = '_blank'; twitterLogo.src = twitterLogoLink; twitterLogoimgContainer.appendChild(twitterLogo); logosContainer.appendChild(twitterLogoimgContainer); modalContent.appendChild(logosContainer); var hrElement = document.createElement('hr'); hrElement.setAttribute('aria-hidden', 'true'); modalContent.appendChild(hrElement); var emailButton = document.createElement('button'); emailButton.innerHTML = ` EMAIL east `; emailButton.classList.add('btn', 'btn-primary'); emailButton.addEventListener('click', function (e) { var subject = "Check out this job position!"; var body = "I thought you might be interested in this link:\n\n" + currentPageURL; var mailtoUrl = "mailto:?subject=" + encodeURIComponent(subject) + "&body=" + encodeURIComponent(body); window.location.href = mailtoUrl; }); var copyLinkButton = document.createElement('button'); copyLinkButton.innerHTML = "COPY LINK"; copyLinkButton.classList.add('btn', 'btn-primary'); var span1 = document.createElement('span'); span1.classList.add('custom_span1'); var span2 = document.createElement('span'); span2.classList.add('custom_span2'); copyLinkButton.appendChild(span1); span1.appendChild(span2); copyLinkButton.addEventListener('click', function (e) { console.log('copying link'); var dummy = document.createElement('input'); document.body.appendChild(dummy); dummy.value = currentPageURL; dummy.select(); document.execCommand('copy'); document.body.removeChild(dummy); copyLinkButton.innerHTML = "Copied !"; setTimeout(function () { copyLinkButton.innerHTML = "COPY LINK"; var span1 = document.createElement('span'); span1.classList.add('custom_span1'); var span2 = document.createElement('span'); span2.classList.add('custom_span2'); copyLinkButton.appendChild(span1); span1.appendChild(span2); }, 1500); }); var buttonContainer = document.createElement('div'); buttonContainer.classList.add('buttons-container'); buttonContainer.appendChild(emailButton); buttonContainer.appendChild(copyLinkButton); modalContent.appendChild(buttonContainer); modal.appendChild(modalContent); document.body.querySelector('#content>.inner').appendChild(modal); closeButton.addEventListener('click', function () { modal.style.display = 'none'; }); window.addEventListener('click', function (event) { if (event.target == modal) { modal.style.display = 'none'; } }); } function setMaxBoundariesJobColumnOne() { const elementIsVisibleInViewport = (el, partiallyVisible = false) => { const { top, left, bottom, right } = el.getBoundingClientRect(); const { innerHeight, innerWidth } = window; return partiallyVisible ? ((top > 0 && top < innerHeight) || (bottom > 0 && bottom < innerHeight)) && ((left > 0 && left < innerWidth) || (right > 0 && right < innerWidth)) : top >= 0 && left >= 0 && bottom <= innerHeight && right <= innerWidth; }; window.addEventListener('scroll', function (event) { var fixedElement = document.querySelector('.jobColumnOne'); var scrollTop = window.pageYOffset || document.documentElement.scrollTop; var containerTop = document.querySelector('.jobDisplayShell').getBoundingClientRect().top; var footer = document.querySelector('#footer') var footerTop = footer.getBoundingClientRect().top; var fixedElementTop = 0; //fixedElement.classList.add('sticky'); if (scrollTop + fixedElement.offsetHeight > 350 + footerTop && elementIsVisibleInViewport(footer, true)) { fixedElement.style.top = (footerTop - fixedElement.offsetHeight) + 'px'; } else if (scrollTop >= containerTop + 400) { fixedElement.style.top = containerTop + 400; //fixedElement.style.top = '190px'; fixedElement.classList.add('sticky'); } else { fixedElement.style.top = fixedElementTop + 'px'; fixedElement.classList.remove('sticky'); } }); } function addImagesToJobTile() { var page = window.location.pathname; if (page.startsWith("/job")) { moveHeroBannerUsingLocalStorage(); setMaxBoundariesJobColumnOne(); // initiate modal initiateModal() const job = document.querySelector(".job"); const jobColumnOne = document.querySelector(".jobColumnOne"); // mobile & tablet -> move title token outside if (window.innerWidth < 768) { if (jobColumnOne) { const titleToken = jobColumnOne.querySelector(".joblayouttoken"); job.insertBefore(titleToken, jobColumnOne) } } // desktop -> remove title token if (window.innerWidth >= 768) { if (jobColumnOne) { const titleToken = jobColumnOne.querySelector(".joblayouttoken"); jobColumnOne.removeChild(titleToken) } } // move apply button inside jobColumnOne const applyButton = document.querySelector(".jobTitle"); if (applyButton) { const applyButtonA = applyButton.querySelector(".applylink > .apply"); applyButtonA.textContent = "Apply now"; jobColumnOne.appendChild(applyButton); } //create share with button const socialsDiv = document.createElement('div'); socialsDiv.classList.add('share-block'); const anchor = document.createElement('a'); anchor.classList.add('btn', 'btn-primary', 'btn-large', 'btn-lg'); const buttonText = document.createElement('span'); buttonText.textContent = 'share with'; const chevronRightImg = document.createElement('img'); chevronRightImg.src = chevronRightLink; chevronRightImg.style.width = '13px'; chevronRightImg.style.height = '10px'; anchor.appendChild(buttonText); anchor.appendChild(chevronRightImg); socialsDiv.appendChild(anchor); socialsDiv.addEventListener('click', openModal); jobColumnOne.appendChild(socialsDiv); // add logo images to tile, remove department const depDiv = jobColumnOne.querySelector('[data-careersite-propertyid="dept"]'); const depDivToRemove = jobColumnOne.querySelector('div:has(div.inner > div.row > div > span[data-careersite-propertyid="dept"])'); if (depDiv) { const depText = depDiv.textContent.trim(); const img = document.createElement('img'); switch (depText) { case "OTB": img.src = otbLogoNeroLink; break; case "Diesel": img.src = dieselLogoLink; break; case "Staff International": img.src = staffInternationalLogoLink; break; case "Jil Sander": img.src = jilSanderLogoLink; break; case "L.R. Vicenza": img.src = lrVicenzaLogoLink; break; case "Margiela": img.src = margielaLogoLink; break; case "Marni": img.src = marniLogoLink; break; case "Viktor & Rolf": img.src = viktorAndRolfLogoLink; break; case "Brave Kid": img.src = braveKidLogoLink; break; } jobColumnOne.prepend(img); if (depDivToRemove) { jobColumnOne.removeChild(depDivToRemove); } } } } function searchKeypress(event) { if (event.key === 'Enter' && (event.which === 13 || event.which === 10)) { event.preventDefault() document.querySelector('.custom_button_search')?.click() } } async function addSearchEvents() { //add placeholder to input var inputKeyword = document.querySelector('#content>.inner #search-wrapper>div.searchwell div.rd-keywordsearch>input.keywordsearch-q.columnized-search[type="text"]'); if (inputKeyword) { inputKeyword.setAttribute("placeholder", "Search job title or keyword"); inputKeyword.addEventListener('keypress', (event) => searchKeypress(event)) } //move button to bottom var form = document.querySelector('#content>.inner #search-wrapper>div.searchwell>form.jobAlertsSearchForm'); var formContainer = document.querySelector('#content>.inner #search-wrapper>div.searchwell>form.jobAlertsSearchForm>div.container-fluid'); var button = document.querySelector('#content>.inner #search-wrapper>div.searchwell>form.jobAlertsSearchForm .rd-searchbutton'); if (form && formContainer) { formContainer.appendChild(button); //add spontaneouse application & view all jobs var hrElement = document.createElement('hr'); hrElement.setAttribute('aria-hidden', 'true'); formContainer.insertBefore(hrElement, formContainer.firstChild); // Create the first button for spontaneous application var spontaneousButton = document.createElement('button'); spontaneousButton.innerHTML = ` SPONTANEOUS APPLICATION east `; spontaneousButton.classList.add('btn', 'btn-primary'); spontaneousButton.addEventListener('click', function (e) { e.preventDefault(); let newHref = window.location.hostname.indexOf('otbspat1.valhalla2.stage.jobs2web.com') > -1 ? 'https://career2preview.sapsf.eu/career?company=otbspaT1&login_ns=register&loginFlowRequired=true' : 'https://career2.successfactors.eu/career?company=otbspa&lang=en_US&login_ns=register&navBarLevel=MY_PROFILE' //`${window.location.protocol}//${window.location.hostname}/career?company=otbspa&lang=en_US&login_ns=register&navBarLevel=MY_PROFILE` window.location.href = newHref }); // Create the second button for searching jobs var searchButton = document.createElement('button'); searchButton.innerHTML = ` VIEW ALL JOBS east `; searchButton.classList.add('btn', 'btn-primary'); searchButton.addEventListener('click', function (e) { e.preventDefault(); form.reset(); form.submit(); }); // Create a div to contain both buttons in the same row var buttonContainer = document.createElement('div'); buttonContainer.classList.add('buttons-container'); buttonContainer.appendChild(spontaneousButton); buttonContainer.appendChild(searchButton); // Prepend the button container to the form container formContainer.insertBefore(buttonContainer, formContainer.firstChild); } } function addSliderArrows(slider) { let prevArrow = ` ` let nextArrow = ` ` let prevButton = ` ` let nextButton = ` ` let container = `
${prevButton} ${nextButton}
` slider.insertAdjacentHTML('beforeend', container) let prevArrowElem = document.querySelector('#custom_prevArrow') let nextArrowElem = document.querySelector('#custom_nextArrow') prevArrowElem.addEventListener('click', () => { setTimeout(() => { let originalArrow = slider.querySelector('button.slick-prev.slick-arrow') originalArrow.click() slider.slick('slickSetOption', {}, true) }, 50) }) nextArrowElem.addEventListener('click', () => { setTimeout(() => { let originalArrow = slider.querySelector('button.slick-next.slick-arrow') originalArrow.click() slider.slick('slickSetOption', {}, true) }, 50) }) } function addSliderEvents() { var intervalId = setInterval(function () { var slider = document.querySelector('.custom_imageCarousel'); if (slider) { clearInterval(intervalId); addSliderArrows(slider) var slideDivs = slider.querySelectorAll('.slick-slide'); slideDivs.forEach(function (slide) { var backgroundDiv = slide.querySelector('div[role="img"]'); if (backgroundDiv) { backgroundDiv.innerHTML = backgroundDiv.innerHTML.replace(/ /g, ''); } var slideLinks = slide.querySelectorAll('.slick-slide a'); slideLinks.forEach(function (link) { var title = link.getAttribute('title'); if (title) { var span = link.querySelector('span'); if (span) { span.textContent = title; } } }); }); updateSlidesToShow(); } }, 100); } //cambia il numero di slides a seconda della viewport function updateSlidesToShow() { var slider = $('.slick-slider'); var windowWidth = window.innerWidth; if (windowWidth < 768) { slider.slick('slickSetOption', 'slidesToShow', 1, true); document.querySelector('.slick-track').classList.remove('infinte-width') } else if (windowWidth >= 768 && windowWidth < 1024) { slider.slick('slickSetOption', 'slidesToShow', 3, true); document.querySelector('.slick-track').classList.add('infinte-width') } else { document.querySelector('.slick-track').classList.add('infinte-width') slider.slick('slickSetOption', 'slidesToShow', 5, true); } slider.slick('slickSetOption', { variableWidth : true, centerMode : true, autoplay : true, autoplaySpeed : 2000, lazyLoad : 'progressive', pauseOnFocus : false, pauseOnHover : false, swipeToSlide : false, swipe: false }, true) } function moveHeroBannerToLocalStorage() { /*var elementToMove = document.querySelector(".buttontext"); var serializedElement = elementToMove.outerHTML;*/ var elementToMoveImg = document.querySelector("#content > .inner > .row.displayDTM"); var serializedElementImg = elementToMoveImg.outerHTML; // localStorage.setItem("elementToMove", serializedElement); localStorage.setItem("elementToMoveImg", serializedElementImg); } function moveHeroBannerUsingLocalStorage() { /*var serializedElement = localStorage.getItem("elementToMove"); if (!serializedElement) serializedElement = backupSerializedElement var tempElement = document.createElement("div"); tempElement.innerHTML = serializedElement; var deserializedElement = tempElement.firstChild; var destinationContainer = document.querySelector("#content .inner"); destinationContainer.prepend(deserializedElement);*/ var serializedElementImg = localStorage.getItem("elementToMoveImg"); if (!serializedElementImg) serializedElementImg = backupSerializedElementImg var tempElementImg = document.createElement("div"); tempElementImg.innerHTML = serializedElementImg; var deserializedElementImg = tempElementImg.firstChild; document.querySelector("#content .inner").insertAdjacentHTML("afterbegin", deserializedElementImg.outerHTML); document.querySelectorAll('#content .inner .row.displayDTM[role="img"]')[0].style.paddingTop = 'unset' } async function loadSearchFilters() { var page = getPage() var params = window.location.search if (page === 'search' || page === 'category') { page === 'search' ? moveHeroBannerUsingLocalStorage() : null addBackToHomeButton() await new Promise((resolve, reject) => { setTimeout(function () { var selectElements = document.querySelectorAll('.optionsFacet-select'); selectElements.forEach(function (select) { while (select.options.length > 0) { select.remove(0); } }); function q() { function u(b) { for (b = 0; b < h.facetquery.fields.length; b++) $(".optionsFacetsDD_" + h.facetquery.fields[b]).val("") } function t() { $.ajax({ url: "/services/jobs/options/facetValues/", type: "POST", cache: !1, contentType: "application/json", dataType: "json", data: JSON.stringify(h), success: function (b) { b = b.facets.map; for (var a = 0; a < h.facetquery.fields.length; a++) { let anySelected = false for (var e = h.facetquery.fields[a], k = e, e = b[e], f = void 0, f = "optionsFacetsDD_" + k, f = f.replace(/[*+?^$.\[\]{}()|\\\/]/g, "\\$&"), f = (f = location.search.match(new RegExp("[?&]" + f + "=([^&]+)(&|$)"))) && decodeURIComponent(f[1].replace(/\+/g, " ")), g = 0; g < e.length; g++) { anySelected = anySelected || f === e[g].name v(k, e[g], f === e[g].name); } "country" !== k && "lang" !== k || w(k) $(".optionsFacetsDD_" + h.facetquery.fields[a])[0].insertAdjacentElement("afterbegin", new Option('All', '', true, !anySelected)) } m = !0; l = !1; p.hide(); x.show(); n || (d.css("height", c.height()), c.css("width", d.width())) } }) } /*function r() { $.ajax({ url: "/services/jobs/options/facetValues/", type: "POST", cache: !1, contentType: "application/json", dataType: "json", data: JSON.stringify(h), success: function (b) { } }) }*/ function w(b) { b = $("#optionsFacetsDD_" + b); var a = b.find("option"), c = b.val(); a.sort(function (a, b) { return "" === a.value ? -1 : "" === b.value || a.text > b.text ? 1 : a.text < b.text ? -1 : 0 }); b.empty().append(a); b.val(c) } function v(a, c, e) { $(".optionsFacetsDD_" + a).each(function (a, b) { var g = b.options, d = new Option(c.translated ? c.translated : c.name, c.name); d.selected = e; g[g.length] = d }) } t(); j2w.Search.addClearEventListener(u); resolve(true) } if (j2w.search) { var x = $(".optionsFacetValues"), p = $(".optionsFacetLoading"), a = $("#options-search"), m = !1, l = !1, n = 0 < $(".columnizedSearchForm").length, d = $(".moreOptionsCollapseArea"), h = { page: 0, keywords: "", locationsearch: "", sortby: "referencedate", sortdir: "desc", sortfield: "title", recordsperpage: 25, startrow: 0, facetquery: { facet: !0, mincount: 1, limit: 5E3, fields: j2w.search.options.facets, sort: "index", showPicklistAllLocales: j2w.search.options.showPicklistAllLocales }, filterquery: {} }; q(); } }, 100); }) } if(page !== 'job') { // add placeholder to selects var selects = document.querySelectorAll('.optionsFacet-select'); await new Promise((resolve, reject) => { setTimeout(function () { selects.forEach(function (select) { var label = document.querySelector('label[for="' + select.id + '"]'); label.style.display = "none"; select.setAttribute("placeholder", label.textContent.trim()); var placeholderOption = document.createElement("option"); placeholderOption.value = ""; placeholderOption.text = label.textContent.trim(); placeholderOption.disabled = true; placeholderOption.selected = true; placeholderOption.hidden = true; placeholderOption.defaultSelected = true; let selectValue = `${select.value}` select.prepend(placeholderOption); if(selectValue) select.value = selectValue }); resolve() }, 500); }) } } function addListenersToSelects() { var selectElements = document.querySelectorAll('.optionsFacet-select'); selectElements.forEach(function (select) { select.addEventListener('change', function () { select.setAttribute('style', 'color: black !important;'); }); }); } function addImagesToTiles() { var page = getPage(); if (page === 'search' || page === 'category') { const jobTilesList = document.querySelector("#job-tile-list"); if(!jobTilesList) return; const jobTiles = jobTilesList.querySelectorAll(".job-tile:not(.alreadyStyled)"); Array.from(jobTiles).forEach(jobTile => { const facilityDiv = jobTile.querySelector('[id$="-section-facility-value"]'); jobTile.classList.add("alreadyStyled") if (facilityDiv) { const facilityText = facilityDiv.innerText.trim() const jobRowInners = jobTile.querySelectorAll('.job-row > *'); try { addImages(jobRowInners[0], facilityText); addImages(jobRowInners[1], facilityText); } catch (error) { console.log(error); } const imgMobile = document.createElement('img') addImagesMobile(jobRowInners[2], imgMobile, facilityText); } }); } } function addImages(element, facilityText) { const img = document.createElement('img'); const imgContainer = document.createElement('div') const chevronRightImg = document.createElement('img'); imgContainer.classList.add('custom_img_tile_container') chevronRightImg.src = chevronRightLink; chevronRightImg.style.width = '20px'; chevronRightImg.style.height = '20px'; switch (facilityText) { case "OTB": img.src = otbLogoNeroLink; break; case "Diesel": img.src = dieselLogoLink; break; case "Staff International": img.src = staffInternationalLogoLink; break; case "Jil Sander": img.src = jilSanderLogoLink; break; case "L.R. Vicenza": img.src = lrVicenzaLogoLink; break; case "Margiela": img.src = margielaLogoLink; break; case "Marni": img.src = marniLogoLink; break; case "Viktor & Rolf": img.src = viktorAndRolfLogoLink; break; case "Brave Kid": img.src = braveKidLogoLink; break; } const facilityDiv = element.querySelector('[id$="-section-facility-value"]'); facilityDiv.style.display = 'none'; const firstDiv = element.children[0].children[0]; element.removeChild(element.children[0]); element.children[0].insertBefore(firstDiv, element.children[0].children[1]); imgContainer.insertAdjacentElement('beforeend', img) element.prepend(imgContainer); element.lastElementChild.lastElementChild.append(chevronRightImg); } function addImagesMobile(element, imgMobile, facilityText) { const chevronRightImg = document.createElement('img'); const imgContainer = document.createElement('div'); imgContainer.classList.add('custom_img_tile_container') chevronRightImg.src = chevronRightLink; chevronRightImg.style.width = '20px'; chevronRightImg.style.height = '20px'; switch (facilityText) { case "OTB": imgMobile.src = otbLogoNeroLink; break; case "Diesel": imgMobile.src = dieselLogoLink; break; case "Staff International": imgMobile.src = staffInternationalLogoLink; break; case "Jil Sander": imgMobile.src = jilSanderLogoLink; break; case "L.R. Vicenza": imgMobile.src = lrVicenzaLogoLink; break; case "Margiela": imgMobile.src = margielaLogoLink; break; case "Marni": imgMobile.src = marniLogoLink; break; case "Viktor & Rolf": imgMobile.src = viktorAndRolfLogoLink; break; case "Brave Kid": imgMobile.src = braveKidLogoLink; break; } const firstDiv = element.children[0]; const secondDiv = element.children[1]; element.removeChild(firstDiv); element.removeChild(secondDiv); element.insertBefore(firstDiv, element.firstChild); element.insertBefore(secondDiv, element.firstChild); const mobileFacilityText = element.querySelector('div:nth-child(3)'); mobileFacilityText.style.display = 'none'; imgContainer.insertAdjacentElement('beforeend', imgMobile) element.prepend(imgContainer); element.lastElementChild.lastElementChild.append(chevronRightImg); // observeJobTileList(); } function observeJobTileList() { const targetNode = document.getElementById('job-tile-list'); const observer = new MutationObserver(function (mutationsList, observer) { for (const mutation of mutationsList) { if (mutation.type === 'childList') { addImagesToTiles(); } } }); const config = { childList: true, subtree: true }; observer.observe(targetNode, config); } function changePlaceholders(select) { let swapElem = (elementX, elementY) => { let parentY = elementY.parentNode; let nextY = elementY.nextSibling; if (nextY === elementX) { parentY.insertBefore(elementX, elementY); } else { elementX.parentNode.insertBefore(elementY, elementX); if (nextY) { parentY.insertBefore(elementX, nextY); } else { parentY.appendChild(elementX); } } } if(select.querySelectorAll('option[value=""]:not([hidden]) + option[value=""][hidden]').length > 0) { select.classList.add('custom_add') swapElem(select.querySelector('option[value=""]:not([hidden])'), select.querySelector('option[value=""][hidden]')) select.value = select.value select.classList.remove('custom_add') } } function moveElements() { /* cambio posizione del logo */ let footer_logo = document.querySelectorAll('.custom_footer #footerInnerLinksSocial > a:has(> .logo)')[0] let footer_logo_a = document.createElement('a') let where_footer_logo = document.querySelectorAll('.custom_footer > #footerRowBottom')[0] footer_logo_a.href = footer_logo.href footer_logo_a.title = 'OTB Footer' footer_logo_a.style.width = 'min-content' footer_logo_a.innerHTML = footer_logo.innerHTML where_footer_logo.insertAdjacentElement("afterbegin", footer_logo_a); footer_logo.outerHTML = '' } function getPage() { var page = window.location.pathname; if (page === "/") { return "homepage"; } if (page.startsWith("/search")) { return "search"; } if (page.startsWith("/job")) { return "job"; } if (page.startsWith("/go/")) { return "category"; } return "other"; } async function observerControl() { new MutationObserver(mutationList => { Array.from(mutationList).forEach(r => { if(!r.target.id) return; if (r.target.id.startsWith('optionsFacetsDD') && !r.target.classList.contains('custom_add')) { changePlaceholders(r.target) } else if (r.target.id === 'tile-search-results-label') { changeShowingString() addImagesToTiles() } if (r.target.id === 'savesearch') console.log("%c" + "TROVATO JOB ALERT", "font-size:20px"); }); }).observe(document.body, { subtree: true, childList: true, characterData: true }) } function changeShowingString() { let fraseContainer = document.querySelector('#tile-search-results-label') let lang = 'en_US' let frase = fraseContainer.innerText if (/Showing (\d+) to (\d+) of (\d+) Jobs/g.test(frase)) { let fraseFlat if (lang === 'it_IT') { fraseFlat = /Showing (\d+) to (\d+) of (\d+) Jobs/g.exec(frase).flat() } else { fraseFlat = /Showing (\d+) to (\d+) of (\d+) Jobs/g.exec(frase).flat() } let nResults = fraseFlat[1] let nResultsPage = fraseFlat[2] let nResultsTotal = fraseFlat[3] let finalFrase if (lang === 'IT') { finalFrase = `RESULTS ${nResults}-${nResultsPage} OF ${nResultsTotal}` } else { finalFrase = `RESULTS ${nResults}-${nResultsPage} OF ${nResultsTotal}` } fraseContainer.innerText = finalFrase } } function changeLogoFbWithWeibo() { let logoContainer = document.querySelector('.social-icon.btn-facebook') let imgWeibo = document.createElement('img') imgWeibo.src = weiboLogoLink logoContainer.innerHTML = imgWeibo.outerHTML logoContainer.title = 'weibo' } function addArrowsToSelect() { let allSearchSelect = document.querySelectorAll('#content #search-wrapper>div.searchwell select') let arrowDownHTML = ` keyboard_arrow_down ` let arrowUpHTML = ` keyboard_arrow_up ` Array.from(allSearchSelect).forEach(select => { select.insertAdjacentHTML("afterend", arrowDownHTML) select.addEventListener("focus", (event) => { event.currentTarget.nextElementSibling.outerHTML = arrowUpHTML }) select.addEventListener("blur", (event) => { event.currentTarget.nextElementSibling.outerHTML = arrowDownHTML }) }) } function onMouseHoverHeaderDesktop() { let headerBackground = document.querySelector('.custom_header_background') let header = document.querySelector('#header') let logo = document.querySelector('.custom-desktop-header .custom-header-logo a > img') header.addEventListener("mouseover", () => { header.classList.add("backgroundColor_custom") //logo.src = otbLogoNeroLink }) header.addEventListener("mouseout", () => { header.classList.remove("backgroundColor_custom") //logo.src = otbLogoBiancoLink }) } function addBackToHomeButton() { let newButtonElement = document.createElement('a') newButtonElement.innerHTML = 'BACK' newButtonElement.style.cssText = 'color: var(--font-color) !important; display: flex; gap: 5px; align-items: flex-start; cursor: pointer; font-size: 19px; margin-left: 10px;width: fit-content; line-height: normal;' let herobanner = document.querySelector('#content > .inner > div.row.displayDTM[role="img"]') herobanner.insertAdjacentElement('afterend', newButtonElement) newButtonElement.addEventListener('click', () => { document.querySelector('.custom-desktop-header .custom-header-logo a>img').click() }) } function addMoreFiltersButton() { let newFacets = document.getElementById('newFacets') let newButtonElement = document.createElement('a') newButtonElement.id = 'more-filters' newButtonElement.innerText = 'MORE FILTERS' newButtonElement.style.cssText = 'cursor: pointer; border-bottom: 1px dotted black; width: fit-content;' newButtonElement.addEventListener('click', () => { newFacets.style.display = newFacets.style.display == 'none' ? 'flex' : 'none' newButtonElement.innerText = newButtonElement.innerText == 'MORE FILTERS' ? 'HIDE FILTERS' : 'MORE FILTERS' }) newFacets.insertAdjacentElement('afterend', newButtonElement) if (window.innerWidth < 768) { newFacets.style.display = 'none' } else { newButtonElement.style.display = 'none' } window.addEventListener('resize', () => { let width = window.innerWidth if (window.innerWidth < 768) { newFacets.style.display = 'none' newButtonElement.style.display = 'block' } else { newFacets.style.display = 'flex' newButtonElement.style.display = 'none' } }) } function addClearFiltersButton() { if(!document.querySelectorAll('a[role="button"].search-clear-button.btn-link').length) return; let clearButton = document.createElement('button') clearButton.id = 'clear-filters-custom' clearButton.innerText = 'CLEAR ALL FILTERS' clearButton.style.cssText = 'cursor: pointer; border-bottom: 1px dotted black; margin-top: 15px; border-top: none; border-left: none; border-right: none; width: auto; background: none;' clearButton.type = 'button' clearButton.addEventListener('click', (event) => { document.querySelectorAll('a[role="button"].search-clear-button.btn-link')[0].click() event.preventDefault() }) document.querySelectorAll('button.custom_button_search')[0]?.insertAdjacentElement('beforebegin', clearButton) } window.addEventListener("DOMContentLoaded", (event) => { console.log("%c" + "INIZIO CUSTOMIZZAZIONI", "font-size:20px"); if (addClasses()) { observerControl(); moveElements(); addImagesToTiles(); addImagesToJobTile(); addSearchEvents(); addSliderEvents(); loadSearchFilters(); addListenersToSelects(); changeLogoFbWithWeibo(); getPage() !== 'job' ? addClearFiltersButton() : null; } }); //<![CDATA[ j2w.init({ "cookiepolicy" : 3, "useSSL" : true, "isUsingSSL" : true, "isResponsive" : true, "categoryId" : 0, "siteTypeId" : 1, "ssoCompanyId" : 'otbspa', "ssoUrl" : 'https://career2.successfactors.eu', "passwordRegEx" : '^(?=.{6,20}$)(?!.*(.)\\1{3})(?=.*([\\d]|[^\\w\\d\\s]))(?=.*[A-Za-z])(?!.*[\-\\\s])', "emailRegEx" : '^(?![+])(?=([a-zA-Z0-9\\\'.+!_-])+[@]([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9.-]*[a-zA-Z0-9])[.]([a-zA-Z]){1,63}$)(?!.*[\-\\\s,])(?!.*[.]{2})', "hasATSUserID" : false, "useCASWorkflow" : true, "brand" : "", "dpcsStateValid" : true }); j2w.TC.init({ "seekConfig" : { "url" : 'https\x3A\x2F\x2Fwww.seek.com.au\x2Fapi\x2Fiam\x2Foauth2\x2Fauthorize', "id" : 'successfactors12', "advertiserid" : '' } }); $.ajaxSetup({ cache : false, headers : { "X-CSRF-Token" : "14a18f88-2e8d-4b37-9b9a-53fff342a9ff" } }); //]]> //<![CDATA[ j2w.Apply.init({ jobID : 1358680057, locale : 'en_US', relocateApplyURL : '', subscribeAtApply : true, useOnPageBusinessCard : false, applyWithLinkedIn2Config : {"enabled":false,"companyId":null,"integrationContext":null,"internalId":"5074-en_US","email":""} }); //]]> //<![CDATA[ $(function() { var ctid = '9481ed43-63d3-4e17-bed0-16324051b20d'; var referrer = ''; var landing = document.location.href; var brand = ''; $.ajax({ url: '/services/t/l' ,data: 'referrer='+ encodeURIComponent(referrer) + '&ctid=' + ctid + '&landing=' + encodeURIComponent(landing) + '&brand=' + brand ,dataType: 'json' ,cache: false ,success: function(){} }); }); //]]> //<![CDATA[ $(function() { $('input:submit,button:submit').each(function(){ var submitButton = $(this); if(submitButton.val() == '') submitButton.val(''); }); $('input, textarea').placeholder(); }); //]]> const jobAlertSpans = document.querySelectorAll("[data-testid=jobAlertSpanText]"); jobAlertSpans?.forEach((jobEl) => { jobEl.textContent = window?.jsStr?.tcjobresultscreatejobalertsdetailstext || ""; }); //<![CDATA[ var subscribeWidgetSetup = { action : 'subscribe', usingJobAlertsManager : false }; //]]> //<![CDATA[ $(function() { $('.emailsubscribe-button').click(function (e) { e.preventDefault(); var $frequency = $('.subscribe-frequency').val(); var rcmLoggedIn = false; var action = rcmLoggedIn ? 'alertCreate' : 'subscribe'; var result = j2w.Agent.validateFrequency($frequency); if (!result.length) { j2w.TC.collectForCASWorkflow({ "emailAddress": '', "action": action, "socialSrc": '', "frequency": parseFloat($frequency) }); } else { if (j2w.Args.get('isResponsive')) { $('.frequency-error-message').html(result.concat('
')); $('.frequency-error').removeClass('hidden'); } else { alert(result.join('\n')); } } }); }); //]]> //<![CDATA[ var j2w = j2w || {}; j2w.search = j2w.search || {}; j2w.search.options = { isOpen: false, facets: ["country","city","customfield1","department"], showPicklistAllLocales : false }; //]]>