Senior Hydrogeologist
WSP
Saskatoon, SK
4d ago
  • sideNavIsOpen overflow : hidden; / * left : 0;position : inherit; * / .desktop-header .sideNavIsOpen overflow : auto;left : 0;
  • position : inherit; iframe# hjRemoteVarsFrame display : none !important;width : 1px !important;height : 1px !important;opacity : 0 !important;
  • pointer-events : none !important; var namespace 'SideNav'; / Constructor method* / var SideNav this.SideNav function (el, options) this.

  • $el $(el);this.$subNav this.$el.next();this.$tray $('.hamburger-button');this.$openedClass 'mobile-opened';this.$subnavOpenedClass 'sub-nav-opened';
  • this.$mobileNav this.$el.closest('.desktop-header');this.$backLinkContainer this.$subNav.hasClass('cls subnav') ? this.$subNav.find('>

  • row >
  • back-link') : this.$subNav.find('>
  • ul >

  • back-link');this.$topCategoryLink this.$subNav.hasClass('cls subnav') ? this.$subNav.find('>
  • row >
  • top-category-link >
  • a') : this.$subNav.find('>

    ul >

  • top-category-link >
  • a');this.$backLink this.$backLinkContainer.find('a');this. init(); / / set data on the objectthis.$el.data( namespace, this);
  • SideNav.prototype init : function () this.$subNav.addClass('mobile-sub');this.$el.addClass('subnav-trigger');if (!this.

    $backLinkContainer.hasClass('no-text-change')) this.$backLink.text(this.$el.text()); if (this.$topCategoryLink.length) this.

  • $topCategoryLink.attr('href', this.$el.attr('href')).text(this.$el.text()) this. bindEvent(); , bindEvent : function () var self this;
  • this.$el.on('click.' + namespace, function (e) e.preventDefault();self.openMenu(); );this.$backLink.on('click.' + namespace, function (e) e.

    preventDefault();self.closeMenu(); ); ,openMenu : function () this.$el.addClass(this.$openedClass);this.$mobileNav.scrollTop(0).

    addClass(this.$subnavOpenedClass); ,closeMenu : function () this.$el.removeClass(this.$openedClass);this.$mobileNav.removeClass(this.

  • $subnavOpenedClass); ,checkTransition : function ($el, fn) if ($.support.transition) $el.one($.support.transition.end, function (e) fn();
  • else fn(); ,unset : function () this.$subNav.removeClass('mobile-sub')this.$el.removeData( namespace).removeClass(this.

    $openedClass + ' subnav-trigger').off('click.' + namespace);this.$mobileNav.removeClass(this.$subnavOpenedClass);this.$backLink.

  • off('click.' + namespace) / / Plugin declaration / assignment$.fn namespace function (options, arguments) var args arguments,method null;
  • options (options ); / / if options is a string / method - set method and reset options to args 1 if (typeof options 'string') method options;
  • if (typeof args ! 'undefined') args Array.prototype.slice.call(args, 0); else args ; return this.each(function () var data $(this).

    data( namespace);if (!data) data new SideNav(this, $.extend( , options)); if (method) if (SideNav.prototype method ) data method .

    apply(data, args); else console.error('Method ' + method + ' does not exist in ' + namespace); ); ; / Data api definition / setup / instantiation* / $('document').

    ready(function () var $languageButton $('.country-language-selector .cls btn'),$body $('body'),$tray $('.hamburger-button'),$secondaryTrigger $('.

    secondary-nav data-toggle-next-element '),$mainMenuSub $('li.level-1 >

    data-toggle-next-element '),$countryLanguageButton $('.title-country-language .tcl item');Respond.to( 'media' : '(max-width : 1199px)','namespace' : '1200 mobile nav','fallback' : 'else','if' : function () $tray.

  • on('click.tray', function (e) e.preventDefault();if ($body.hasClass('sideNavIsOpen')) $body.removeClass('sideNavIsOpen');
  • $('.mobile-opened').removeClass('mobile-opened');$('.sub-nav-opened').removeClass('sub-nav-opened'); else $body.addClass('sideNavIsOpen');
  • $countryLanguageButton.on('click.mobile', function (e) var container $(this).find('a');if (!container.is(e.target) && container.

  • has(e.target).length 0) e.preventDefault();$(this).toggleClass('show'); );$languageButton.SideNav();$secondaryTrigger.SideNav();
  • $mainMenuSub.SideNav(); ,'else' : function () $tray.off('click.tray');$body.removeClass('sideNavIsOpen');$countryLanguageButton.

    off('click.mobile');$('.overlayIsActive').removeClass('overlayIsActive')if ($secondaryTrigger.data('SideNav')) $secondaryTrigger.

    SideNav('unset');$languageButton.SideNav('unset');$mainMenuSub.SideNav('unset'); ); );(function ($) $(function () $('.sidebar.

    sidebar-dynamic ul li a').on('click', function (e) e.preventDefault();$(this).parent().toggleClass('open'); );$('body').on('click', ' data-toggle "sidebar" ', function (e) e.

    preventDefault();console.log(this);$('html').toggleClass('show-sidebar-left', $(this).attr('data-side') 'left' && !$('html').

    hasClass('show-sidebar-left'));$('html').toggleClass('show-sidebar-right', $(this).attr('data-side') 'right' && !$('html').

    hasClass('show-sidebar-right'));$('.sidebar-closed, .sidebar-opened').toggle(); );!$('html').hasClass('show-sidebar-left') && !$('html').

    hasClass('show-sidebar-left') ? $('.sidebar-closed').show() && $('.sidebar-opened').hide() : $('.sidebar-closed').hide() && $('.

    sidebar-opened').show(); ); )(jQuery);var hamburgerBtn / activeHamburgerBtn* / activeHamburgerBtn : function () var hamburgerContainer $('.

    hamburger-button');hamburgerContainer.toggleClass('isActive'); ;if ($('.hamburger-button').length) $('.hamburger-button').

  • click(function () hamburgerBtn.activeHamburgerBtn(); ); dataLayer 'siteCountry' : 'canada' ; (function(w,d,s,l,i) w l w l ;
  • w l .push( 'gtm.start' : new Date().getTime(),event : 'gtm.js' );var f d.getElementsByTagName(s) 0 ,j d.createElement(s),dl l! 'dataLayer'?

  • l '+l : '';j.async true;j.src 'https : / / www.googletagmanager.com / gtm.js?id '+i+dl;f.parentNode.insertBefore(j,f); )(window,document,'script','dataLayer','GTM-MDPXFQD');
  • st0 clip-path : url(#SVGID 2 );fill : #F05044; .st0 clip-path : url(#SVGID 2 );fill : #F05044;
  • All Opportunities
  • Why Choose WSP
  • Spontaneous Applications
  • Français
  • col-md-8 max-width : 100% !important; New Search Login Page
  • document.title "Position Description"; Position Description

    Senior Hydrogeologist ID # 19688 City Saskatoon Job Type Permanent - Full Time Apply Now

    WSP is one of the world's leading professional services firms. Our purpose is to future proof our cities and environments.

    We have over 55,000 team members across the globe. In Canada, our 9,800+ people are involved in everything from environmental remediation to urban planning, from engineering iconic buildings to designing sustainable transportation networks, from finding new ways to extract essential resources to developing renewable power sources for the future.

    The excellence we bring to our work and to our workplace has been recognized far and wide. We are among the LinkedIn Top 25 Companies two years in a row, one of the Top 100 Sustainable Companies in the World (and among the Top 10 in Canada), and we earned Platinum Elite Recognition through our participation in more than half of Canada's Top 100 Infrastructure Projects.

    At WSP :

  • We value our people and our reputation
  • We are locally dedicated with international scale
  • We are future focused and challenge the status quo
  • We foster collaboration in everything we do
  • We have an empowering culture and hold ourselves accountable
  • CALGARY, EDMONTON, RED DEER, SASKATOON AND YELLOWKNIFE

    We are a global leader in the Earth and Environment sector, made stronger with the recent acquisition of Golder. Globally headquartered in Montreal, where it all began, we proudly serve communities from coast to coast and beyond.

    With Golder now part of our WSP team, we have over 14,000 multidisciplinary professionals worldwide collaborating daily to protect and conserve natural landscapes, create firm foundations for communities to stand on, and champion sustainable development to combat climate change.

    As part of the team, you will have access to an unparalleled network of resources, expertise, and endless opportunities to collaborate on exciting projects with diverse teammates from marine biologists to geophysicists to geotechnical engineers and more.

    The Opportunity :

    WSP Golder has a new opportunity for a Senior Hydrogeologist to join our Physical Hydrogeology team on a full-time basis based in Calgary or Edmonton, AB.

    Why WSP?

  • We value and are committed to upholding a culture of Inclusion and Belonging
  • Our Flexible Work Policy we recognize the importance of balance in our lives and encourage you to prioritize the balance in yours.
  • We will support you on and off the job so you can be fully present in both your work and home lives.

  • A Canadian success story - we're proud to wear the red and white of this beautiful country and show the world what Canada has to offer.
  • Enhance the world around you - from the environment to the highways, to the buildings and the terrain, WSP is the fabric of Canada.
  • Outstanding career opportunities - we're growing and pushing ourselves every day to be greater than yesterday - we're open to your ideas and trying new things.
  • A phenomenal collaborative culture and a workforce filled with genuinely good people who are doing humbly important work.
  • Come find out for yourself what it's like to be a part of our journey.

    We offer attractive pay, flexible work options, a great corporate culture, comprehensive and employee-focused benefits including virtual healthcare and a wellness platform as well as great savings programs, and a clear vision for the future.

    A day in the life :

  • Health and safety leadership
  • Guidance and mentoring of regional physical hydrogeology team
  • Work collaboratively with other senior members of the Hydrogeology and Mining teams
  • Lead physical hydrogeology components for local, regional and international consulting projects so they are delivered safely, on time, within budget and to client and WSP Golder’s standards
  • Deliver leading practice consulting services to internal and external clients
  • Establish linkages with other business units to support and enhance service delivery
  • Develop groundwater projects for oil and gas and mining projects at various stages of development, ranging from exploration phase through mine closure
  • Frequent and active interaction with client, local and regional team of groundwater professionals, and our local experts in groundwater modeling and geochemistry
  • Potential for travel domestically and internationally to meet project needs
  • We'd love to hear from you if you have ...

  • M.Sc. or Ph.D. degree in Hydrogeology or Geology or a related field
  • Over 15 years’ experience in the hydrogeology industry, primarily focused in oil and gas and mining sectors (local Alberta experience preferred)
  • Registered Chartered / Professional Geologist or Member of a related professional body is required
  • Connected to the local oil and gas and mining business, with active contacts and clientele
  • Proactive approach in technical service delivery
  • Ability to lead and guide high performing teams, including high-level communication and presentation skills
  • Experience in developing client relationships and contributing to business growth
  • Track record of winning work individually and for others. Flexible, adaptive to change and demanding conditions
  • Strong initiative, motivation and drive toward long-term success
  • Energy and passion for developing and servicing world class projects
  • Experience with well test analyses in a variety of applications and geological settings using industry-standard software including AQTESOLV, Saphir, etc.
  • such as regional aquifers, fracture networks and channelized features is an asset

  • Experience with hydrogeological projects surrounding mining operations, such as aquifer depressurization and dewatering, injection and disposal and mine pit inflows
  • Experience with groundwater monitoring programs for regulatory purposes, large-scale environmental impact assessments and well licencing applications is essential
  • Previous field experience involving hydrogeological assessments, including drilling, hydraulic testing and design for applications such as well field layout and optimization, etc.
  • will be highly regarded

  • Experience with project planning, including the ability to accurately estimate the time necessary to complete field programs and full life cycle projects;
  • the ability to complete projects within the assigned budget is essential to our success

    LI-Hybrid

    Health and Safety is a core paramount value of WSP. Given the importance of keeping one another safe and the growing list of our clients including vaccination status as part of their mandated health and safety requirements to work with them, you will be required to provide proof of full COVID-19 vaccination to WSP as a condition of employment.

    You may also be required to undergo additional immunization to maintain a fully vaccinated status against COVID-19 whenever local Public Health Authorities recommend additional immunization.

    Offers of employment for safety-sensitive positions involving fieldwork are contingent upon candidates being able to perform key physical tasks of the job as described in the job posting and interview.

    This may include the ability to work in a variety of environmental conditions, such as remote or isolated areas, working alone, and in inclement weather (within safe and reasonable limits).

    WSP welcomes and encourages applications from people with disabilities. Accommodations are available on request for candidates taking part in all aspects of the selection process.

    WSP is committed to the principles of employment equity. Only the candidates selected will be contacted.

    WSP does not accept unsolicited resumes from agencies. For more information please READ THE FULL POLICY.

    10 years)

    Edmonton (10072 Jasper Avenue), Saskatoon, Saskatchewan, Canada /

    Back Apply Now (function () 'use strict';socialShare.init(); )(); .footerheight height : 50px; / *! CSS Used from : https : / / staticphe.

  • tbe.taleo.net / phe02 / ats / cacheable / R18D00 18-11-14-04-11-14-18.D prod / css / CwsV2 / bootstrap.min.css ; media screen * / media screen article, nav display : block;
  • a background-color : transparent; a : active, a : hover outline : 0; small font-size : 80%; media print *, : before, : after color : #000 !important;
  • text-shadow : none !important;background : transparent !important;-webkit-box-shadow : none !important;box-shadow : none !important;
  • a, a : visited text-decoration : underline; a href : after content : " (" attr(href) ")"; * -webkit-box-sizing : border-box;
  • moz-box-sizing : border-box;box-sizing : border-box; : before, : after -webkit-box-sizing : border-box;-moz-box-sizing : border-box;
  • box-sizing : border-box; a : focus outline : thin dotted;outline : 5px auto -webkit-focus-ring-color;outline-offset : -2px;
  • sr-only position : absolute;width : 1px;height : 1px;padding : 0;margin : -1px;overflow : hidden;clip : rect(0,0,0,0);border : 0;
  • small font-size : 85%; ul margin-top : 0;margin-bottom : 10px; .container-fluid padding-right : 15px;padding-left : 15px;
  • margin-right : auto;margin-left : auto; .col-md-2, .col-xs-6 position : relative;min-height : 1px;padding-right : 15px;padding-left : 15px;
  • col-xs-6 float : left; .col-xs-6 width : 50%; media (min-width : 992px) .col-md-2 float : left; .col-md-2 / * width : 16.
  • 66666667%; * / width : 12%; .nav padding-left : 0;margin-bottom : 0;list-style : none; .nav >

    li position : relative;display : block; .nav >

    li >

    a position : relative;display : block;padding : 10px 15px; .nav >

    li >

    a : focus text-decoration : none;background-color : #eee; .nav-stacked >

    li float : none; .nav-stacked >

    li + li margin-top : 2px;margin-left : 0; .clearfix : before, .clearfix : after, .container-fluid : before, .container-fluid : after, .

  • nav : before, .nav : after display : table;content : " "; .clearfix : after, .container-fluid : after, .nav : after clear : both;
  • visible-md, .visible-lg display : none !important; media (min-width : 992px) and (max-width : 1199px) .visible-md display : block !important;
  • media (min-width : 1200px) .visible-lg display : block !important; media (min-width : 768px) and (max-width : 991px) .hidden-sm display : none !important;
  • media (min-width : 992px) and (max-width : 1199px) .hidden-md display : none !important; media (min-width : 1200px) .hidden-lg display : none !important;
  • CSS Used from : https : / / staticphe.tbe.taleo.net / phe02 / ats / cacheable / R18D00 18-11-14-04-11-14-18.D prod / css / CwsV2 / font-awesome.

  • min.css ; media screen * / media screen .fa display : inline-block;font : normal normal normal 14px / 1 FontAwesome;font-size : inherit;
  • text-rendering : auto;-webkit-font-smoothing : antialiased;-moz-osx-font-smoothing : grayscale;transform : translate(0, 0);
  • fa-twitter : before content : " f099"; .fa-facebook : before content : " f09a"; .fa-linkedin : before content : " f0e1";
  • fa-youtube : before content : " f167"; .fa-instagram : before content : " f16d"; / *! CSS Used from : https : / / wsp-hr.
  • azurewebsites.net / taleo / css / WSPGlobal.min.css * / .col-xs-6 float : left; class* " icon-" font-family : icomoon !important;
  • speak : none;font-style : normal;font-weight : 400;font-variant : normal;text-transform : none;line-height : 1;-webkit-font-smoothing : antialiased;
  • moz-osx-font-smoothing : grayscale; .fa display : inline-block;font : normal normal normal 14px / 1 FontAwesome;font-size : inherit;
  • text-rendering : auto;-webkit-font-smoothing : antialiased;-moz-osx-font-smoothing : grayscale; .fa-twitter : before content : " ";
  • fa-facebook : before content : " "; .fa-linkedin : before content : " "; .fa-youtube : before content : " "; .fa-instagram : before content : " ";
  • article, nav display : block; a background-color : transparent; a : active, a : hover outline : 0; media print *, : after, : before background : 0 0 !important;
  • color : #000 !important;-webkit-box-shadow : none !important;box-shadow : none !important;text-shadow : none !important; a, a : visited text-decoration : underline;
  • a href : after content : " (" attr(href) ")"; *, : after, : before -webkit-box-sizing : border-box;-moz-box-sizing : border-box;
  • box-sizing : border-box; a : focus outline : -webkit-focus-ring-color auto 5px;outline-offset : -2px; small font-size : 85%;
  • ul margin-top : 0; ul margin-bottom : 10px; .container-fluid : after clear : both; .container-fluid : after, .container-fluid : before content : " ";
  • display : table; .container-fluid margin-right : auto;margin-left : auto;padding-left : 15px;padding-right : 15px; .col-md-2, .

    col-xs-6 position : relative;min-height : 1px;padding-left : 15px;padding-right : 15px; .col-xs-6 width : 50%; media (min-width : 992px) .

    col-md-2 float : left; .col-md-2 / * width : 16.66667%; * / width : 12%; .clearfix : after, .nav : after clear : both; .nav : after, .

    nav : before content : " "; .nav margin-bottom : 0;padding-left : 0;list-style : none; .nav : after, .nav : before display : table; .nav >

    li >

    a display : block;position : relative; .nav >

    li >

    a padding : 10px 15px;font-weight : 700; .nav >

    li >

    a : hover text-decoration : none;background-color : #FFF; .nav-stacked >

    li float : none; .nav-stacked >

    li + li margin-top : 2px;margin-left : 0; .nav margin-top : 0; .nav li font-family : Arial; .nav li >

  • a : hover color : #1e252b; article ul padding-left : 17px; article ul li padding : 5px 0; footer .nav li a color : #1e252b;
  • clearfix : after, .clearfix : before content : " ";display : table; .visible-lg, .visible-md display : none !important;
  • media (min-width : 992px) and (max-width : 1199px) .visible-md display : block !important; media (min-width : 1200px) .visible-lg display : block !important;
  • hidden-lg display : none !important; media (min-width : 768px) and (max-width : 991px) .hidden-sm display : none !important;
  • media (min-width : 992px) and (max-width : 1199px) .hidden-md display : none !important; .container-fluid padding : 0; article margin : 70px 0;
  • article ul padding : 0;margin : 0 0 0 20px; body

  • webkit-transition : none;-o-transition : none;transition : none; .main-footer-bottom .mfb link font-family : gt-sectra-medium,serif;
  • font-size : calc(.37559vw + 10.59px); .sr-only position : absolute;width : 1px;height : 1px;margin : -1px;padding : 0;overflow : hidden;
  • clip : rect(0,0,0,0);border : 0; .main-footer .mf item : first-child >

  • a : not(.icon-link), .main-footer .mf link font-family : styrene-medium,Arial;word-break : break-word; .main-footer padding-right : 4vw;
  • main-footer background-color : #f4f4f4 !important;height : auto;position : relative;width : 100%;padding-bottom : 48px;
  • padding-left : 4vw;margin-top : 70px; .main-footer .copyright font-size : calc(.37559vw + 10.59px); .main-footer article float : left;
  • width : 100%;margin : calc(18px + 2.1vw) 0; media (min-width : 992px) .main-footer padding-bottom : 50px; / * .main-footer article margin : 0 0 2.

  • 1vw; * / .main-footer .container-fluid padding : 0; .main-footer .mf list margin : 0;padding : 0; .main-footer .mf list : nth-child(odd) clear : both;
  • media (min-width : 992px) .main-footer .mf list padding-left : 15px;padding-right : 15px; .main-footer .mf list : nth-child(odd) clear : none;
  • main-footer .mf list : first-of-type padding-left : 0; .main-footer .mf list : last-of-type list-style : none;margin-top : 18px;
  • margin-bottom : 0;margin-left : 0;display : -webkit-box;display : -ms-flexbox;display : flex;clear : both; media (min-width : 992px) .

  • main-footer .mf list : last-of-type position : absolute;top : 62px;right : 4vw;margin : 0;clear : none;padding-right : 0;
  • webkit-box-pack : end;-ms-flex-pack : end;justify-content : flex-end; .main-footer .mf list : last-of-type .mf item, .main-footer .mf list : last-of-type >
  • margin : 0 25px 0 0; media (min-width : 992px) .main-footer .mf list : last-of-type .mf item, .main-footer .mf list : last-of-type >
  • margin : 0 20px 0 0; .main-footer .mf list : last-of-type .mf item : last-child, .main-footer .mf list : last-of-type >
  • last-child margin-right : 0; .main-footer .mf list : last-of-type .mf item a, .main-footer .mf list : last-of-type >

  • a color : #ff372f; .main-footer .mf list : last-of-type .mf item a >
  • span, .main-footer .mf list : last-of-type >

  • span position : absolute;width : 1px;height : 1px;padding : 0;margin : -1px;overflow : hidden;clip : rect(0,0,0,0);border : 0;
  • main-footer .mf item margin-top : 0;margin-bottom : 24px;padding : 0; .main-footer .mf item : first-child >
  • a : not(.icon-link) text-transform : uppercase;color : #ff372f;font-size : 13px; media (min-width : 992px) .main-footer .

    mf item margin-bottom : 20px; .main-footer .mf item : first-child >

    a : not(.icon-link) text-transform : none;font-size : 20px; .main-footer .mf link font-weight : 400;color : #333e48;font-size : calc(.

  • 0939vw + 12.65px);padding : 0; .main-footer .mf link : focus, .main-footer .mf link : hover background : 0 0;opacity : .5;
  • main-footer .mf link : active color : #ff372f; .main-footer .fa-size font-size : 1.688em; .main-footer-bottom margin : 0;
  • main-footer-bottom .mfb copyright color : #1e252b;font-size : 13px;font-family : gt-sectra-medium,serif;position : absolute;
  • right : 0;bottom : 0; .main-footer-bottom .mfb list list-style-type : none;margin-left : 0; media (min-width : 992px) .main-footer-bottom margin-top : 43px;
  • main-footer-bottom .mfb copyright position : relative;float : left;font-size : 16px; .main-footer-bottom .mfb list float : right;
  • main-footer-bottom .mfb item padding : 0;margin-top : 0;margin-right : 0;margin-bottom : 24px; media (min-width : 992px) .
  • main-footer-bottom .mfb item display : inline-block;margin-bottom : 0;margin-right : 40px; .main-footer-bottom .mfb item : last-child margin-bottom : 0;
  • margin-right : 0; .main-footer-bottom .mfb link font-weight : 400;color : #1e252b;padding : 0; .main-footer-bottom .mfb link : focus, .

  • main-footer-bottom .mfb link : hover background : 0 0;opacity : .6; .main-footer-bottom .mfb link : active color : #ff372f;
  • main-footer-bottom .mfb copyright-div position : relative; .main-footer opacity : 1;-webkit-transition : opacity .5s ease;
  • o-transition : opacity .5s ease;transition : opacity .5s ease; / *! CSS Used from : https : / / wsp-hr.azurewebsites.net / taleo / css / bootstrap.
  • min.css ; media screen * / media screen article, nav display : block;padding-top : 10px; a background-color : transparent;
  • a : active, a : hover outline : 0; small font-size : 80%; media print *, : before, : after color : #000 !important;text-shadow : none !important;
  • background : transparent !important;-webkit-box-shadow : none !important;box-shadow : none !important; a, a : visited text-decoration : underline;
  • a href : after content : " (" attr(href) ")"; * -webkit-box-sizing : border-box;-moz-box-sizing : border-box;box-sizing : border-box;
  • before, : after -webkit-box-sizing : border-box;-moz-box-sizing : border-box;box-sizing : border-box; a : focus outline : thin dotted;
  • outline : 5px auto -webkit-focus-ring-color;outline-offset : -2px; .sr-only position : absolute;width : 1px;height : 1px;
  • padding : 0;margin : -1px;overflow : hidden;clip : rect(0,0,0,0);border : 0; small font-size : 85%; ul margin-top : 0;margin-bottom : 10px;
  • container-fluid padding-right : 15px;padding-left : 15px;margin-right : auto;margin-left : auto; .col-md-2, .col-xs-6 position : relative;
  • min-height : 1px;padding-right : 15px;padding-left : 15px; .col-xs-6 float : left; .col-xs-6 width : 50%; media (min-width : 992px) .

    col-md-2 float : left; .col-md-2 / * width : 16.66666667%; * / width : 12%; .nav padding-left : 0;margin-bottom : 0;list-style : none; .nav >

    li position : relative;display : block; .nav >

    li >

    a position : relative;display : block;padding : 10px 15px; .nav >

    li >

    a : focus text-decoration : none;background-color : #eee; .nav-stacked >

    li float : none; .nav-stacked >

    li + li margin-top : 2px;margin-left : 0; .clearfix : before, .clearfix : after, .container-fluid : before, .container-fluid : after, .

  • nav : before, .nav : after display : table;content : " "; .clearfix : after, .container-fluid : after, .nav : after clear : both;
  • visible-md, .visible-lg display : none !important; media (min-width : 992px) and (max-width : 1199px) .visible-md display : block !important;
  • media (min-width : 1200px) .visible-lg display : block !important; media (min-width : 768px) and (max-width : 991px) .hidden-sm display : none !important;
  • media (min-width : 992px) and (max-width : 1199px) .hidden-md display : none !important; media (min-width : 1200px) .hidden-lg display : none !important;
  • CSS Used from : https : / / wsp-hr.azurewebsites.net / taleo / css / font-awesome.min.css ; media screen * / media screen .

  • fa display : inline-block;font : normal normal normal 14px / 1 FontAwesome;font-size : inherit;text-rendering : auto;-webkit-font-smoothing : antialiased;
  • moz-osx-font-smoothing : grayscale;transform : translate(0, 0); .fa-twitter : before content : " f099"; .fa-facebook : before content : " f09a";
  • fa-linkedin : before content : " f0e1"; .fa-youtube : before content : " f167"; .fa-instagram : before content : " f16d";
  • CSS Used fontfaces * / font-face font-family : 'FontAwesome';src : url('https : / / staticphe.tbe.taleo.net / phe02 / ats / cacheable / R18D00 18-11-14-04-11-14-18.

    D prod / css / fonts / fontawesome-webfont.eot?v 4.3.0');src : url('https : / / staticphe.tbe.taleo.net / phe02 / ats / cacheable / R18D00 18-11-14-04-11-14-18.

    D prod / css / fonts / fontawesome-webfont.eot#iefix&v 4.3.0') format('embedded-opentype'),url('https : / / staticphe.tbe.

    taleo.net / phe02 / ats / cacheable / R18D00 18-11-14-04-11-14-18.D prod / css / fonts / fontawesome-webfont.woff2?v 4.3.

    0') format('woff2'),url('https : / / staticphe.tbe.taleo.net / phe02 / ats / cacheable / R18D00 18-11-14-04-11-14-18.D prod / css / fonts / fontawesome-webfont.

    woff?v 4.3.0') format('woff'),url('https : / / staticphe.tbe.taleo.net / phe02 / ats / cacheable / R18D00 18-11-14-04-11-14-18.

    D prod / css / fonts / fontawesome-webfont.ttf?v 4.3.0') format('truetype'),url('https : / / staticphe.tbe.taleo.net / phe02 / ats / cacheable / R18D00 18-11-14-04-11-14-18.

  • D prod / css / fonts / fontawesome-webfont.svg?v 4.3.0#fontawesomeregular') format('svg');font-weight : normal;font-style : normal;
  • font-face font-family : FontAwesome;src : url(https : / / wsp-hr.azurewebsites.net / fonts / fontawesome-webfont.eot?v 4.

    4.0);src : url(https : / / wsp-hr.azurewebsites.net / fonts / fontawesome-webfont.eot#iefix&v 4.4.0) format("embedded-opentype"),url(https : / / wsp-hr.

    azurewebsites.net / fonts / fontawesome-webfont.woff2?v 4.4.0) format("woff2"),url(https : / / wsp-hr.azurewebsites.net / fonts / fontawesome-webfont.

    woff?v 4.4.0) format("woff"),url(https : / / wsp-hr.azurewebsites.net / fonts / fontawesome-webfont.ttf?v 4.4.0) format("truetype"),url(https : / / wsp-hr.

  • azurewebsites.net / fonts / fontawesome-webfont.svg?v 4.4.0#fontawesomeregular) format("svg");font-weight : 400;font-style : normal;
  • font-face font-family : 'FontAwesome';src : url('https : / / wsp-hr.azurewebsites.net / taleo / fonts / fontawesome-webfont.

    eot?v 4.3.0');src : url('https : / / wsp-hr.azurewebsites.net / taleo / fonts / fontawesome-webfont.eot#iefix&v 4.3.0') format('embedded-opentype'),url('https : / / wsp-hr.

    azurewebsites.net / taleo / fonts / fontawesome-webfont.woff2?v 4.3.0') format('woff2'),url('https : / / wsp-hr.azurewebsites.

    net / taleo / fonts / fontawesome-webfont.woff?v 4.3.0') format('woff'),url('https : / / wsp-hr.azurewebsites.net / taleo / fonts / fontawesome-webfont.

    ttf?v 4.3.0') format('truetype'),url('https : / / wsp-hr.azurewebsites.net / taleo / fonts / fontawesome-webfont.svg?v 4.

    3.0#fontawesomeregular') format('svg');font-weight : normal;font-style : normal; font-face font-family : icomoon;src : url(https : / / wsp-hr.

    azurewebsites.net / fonts / icomoon.eot?w1nynm);src : url(https : / / wsp-hr.azurewebsites.net / fonts / icomoon.eot?w1nynm#iefix) format("embedded-opentype"),url(https : / / wsp-hr.

    azurewebsites.net / fonts / icomoon.ttf?w1nynm) format("truetype"),url(https : / / wsp-hr.azurewebsites.net / fonts / icomoon.

  • woff?w1nynm) format("woff"),url(https : / / wsp-hr.azurewebsites.net / fonts / icomoon.svg?w1nynm#icomoon) format("svg");
  • font-weight : 400;font-style : normal; font-face font-family : gt-sectra-medium;src : url(https : / / wsp-hr.azurewebsites.

    net / fonts / gt-sectra-medium.eot);src : url(https : / / wsp-hr.azurewebsites.net / fonts / gt-sectra-medium.eot#iefix) format("embedded-opentype"),url(https : / / wsp-hr.

  • azurewebsites.net / fonts / gt-sectra-medium.woff) format("woff");font-weight : 400;font-style : normal; font-face font-family : styrene-medium;
  • src : url(https : / / wsp-hr.azurewebsites.net / fonts / styrene-medium.eot);src : url(https : / / wsp-hr.azurewebsites.net / fonts / styrene-medium.

    eot#iefix) format("embedded-opentype"),url(https : / / wsp-hr.azurewebsites.net / fonts / styrene-medium.woff2) format("woff2"),url(https : / / wsp-hr.

  • azurewebsites.net / fonts / styrene-medium.woff) format("woff");font-weight : 400;font-style : normal;
  • Careers
  • instagramPage will open in a new tab
  • linkedinPage will open in a new tab
  • twitterPage will open in a new tab
  • facebookPage will open in a new tab
  • youtubePage will open in a new tab
  • 2020 WSP

  • The WSP Logo
  • Privacy Policy
  • Anti-Spam Commitment
  • Cookie Policy
  • Terms of Use
  • 2020 WSP CwsDWRFacade. path 'https : / / phe.tbe.taleo.net / phe02 / ats / dwr-cws'; var DWRFacade CwsDWRFacade; $(function () if (typeof moveToNextStep ! 'undefined') $('.

    oracletaleocwsv2-arrow-nav-next').trigger('click'); ); $(" data-bs-toggle 'modal' ").click(function () var d tar $(this).

    attr('data-target'); $(d tar).show(); var modal he $(d tar).find('.modal-dialog .modal-content').height(); var win height $(window).

    height(); var marr win height - modal he; $('.modal-dialog').css('margin-top', marr / 2); ); / / This is needed for fixing beforeShow / / (function ($) / / $.

    extend($.datepicker, / / / / / / Reference the orignal function so we can override it and call it later / / inlineDatepicker2 : $.

    datepicker. inlineDatepicker, / / / / / / Override the inlineDatepicker method / / inlineDatepicker : function (target, inst) / / / / / / Call the original / / this.

    inlineDatepicker2(target, inst); / / / / var beforeShow $.datepicker. get(inst, 'beforeShow'); / / / / if (beforeShow) / / beforeShow.

    apply(target, target, inst ); / / / / / / ); / / (jQuery)); / / The following needed to re-purpose Today button for Clean behavior (function ($) $.

    extend($.datepicker, / / Reference the orignal function so we can override it and call it later if needed gotoToday2 : $.

    datepicker. gotoToday, / / Override the gotoToday method - clean and close gotoToday : function (target, inst) $(target).

    closest('.form-group').find('.input-group input').val(''); $(target).fadeOut(); ); (jQuery)); / / jQuery Calendar jQuery(document).

    ready(function($) $('.oracletaleocwsv2-datepicker.oracletaleocwsv2-datepicker-single').datepicker( beforeShowDay : function(date) try var thisDate $.

    datepicker.parseDate('m / d / y', $(this).closest('.form-group').find('.input-group input').val()); return true, thisDate && date.

    getTime() thisDate.getTime() ? "oracletaleocwsv2-dp-highlight" : "" ; catch (e) return true, '' ; ,onSelect : function(dateText, inst) $(this).

  • closest('.form-group').find('.input-group input').val(dateText).change(); $(this).datepicker(); $(this).fadeOut(); ,altField : '',altFormat : '',appendText : '',changeMonth : true,changeYear : true,closeText : ' 'Close '',constrainInput : true,currentText : 'Clear',dateFormat : 'm / d / y',monthYearDateFormat : 'MM / yy',dayNames : 'Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday' ,dayNamesShort : 'Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday' ,dayNamesMin : 'Su','Mo','Tu','We','Th','Fr','Sa' ,defaultDate : null,duration : 'normal',firstDay : 0,gotoCurrent : false,hideIfNoPrevNext : false,isRTL : false,maxDate : null,minDate : null,monthNames : 'January','February','March','April','May','June','July','August','September','October','November','December' ,monthNamesShort : 'Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec' ,navigationAsDateFormat : false,nextText : 'Next',numberOfMonths : 1,prevText : 'Previous',shortYearCutoff : '+10',showAnim : 'show',showButtonPanel : true,showCurrentAtPos : 0,showMonthAfterYear : false,showOptions : ,showOtherMonths : false,stepMonths : 1,yearRange : '1927 : 2087' );
  • jQuery Calendar jQuery(document).ready(function($) $('.oracletaleocwsv2-datepicker.oracletaleocwsv2-datepicker-range').

    datepicker( beforeShowDay : function(date) try var date1 $.datepicker.parseDate('m / d / y', $(this).closest('.form-group').

    find('.form-inline .input-group .oracletaleocwsv2-to-field').val()); var date2 $.datepicker.parseDate('m / d / y', $(this).

    closest('.form-group').find('.form-inline .input-group .oracletaleocwsv2-from-field').val()); return true, date1 && ((date.

    getTime() date1.getTime()) (date2 && date >

  • date1 && date < date2)) ? "oracletaleocwsv2-dp-highlight" : "" ; catch (e) return true, '' ; ,onSelect : function(dateText, inst) / / populate the appropriate text boxes based on datepicker selection var date1 "";
  • var date2 ""; try date1 $.datepicker.parseDate('m / d / y', $(this).closest('.form-group').find('.form-inline .input-group .

    oracletaleocwsv2-to-field').val()); date2 $.datepicker.parseDate('m / d / y', $(this).closest('.form-group').find('.form-inline .

    input-group .oracletaleocwsv2-from-field').val()); catch (e) if (!date1 date2) $(this).closest('.form-group').find('.form-inline .

    input-group .oracletaleocwsv2-to-field').val(dateText); $(this).closest('.form-group').find('.form-inline .input-group .oracletaleocwsv2-from-field').

    val(""); $(this).datepicker(); else $(this).closest('.form-group').find('.form-inline .input-group .oracletaleocwsv2-from-field').

  • val(dateText); $(this).datepicker(); $(this).fadeOut(); ,altField : '',altFormat : '',appendText : '',changeMonth : true,changeYear : true,closeText : ' 'Close '',constrainInput : true,currentText : 'Clear',dateFormat : 'm / d / y',monthYearDateFormat : 'MM / yy',dayNames : 'Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday' ,dayNamesShort : 'Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday' ,dayNamesMin : 'Su','Mo','Tu','We','Th','Fr','Sa' ,defaultDate : null,duration : 'normal',firstDay : 0,gotoCurrent : false,hideIfNoPrevNext : false,isRTL : false,maxDate : null,minDate : null,monthNames : 'January','February','March','April','May','June','July','August','September','October','November','December' ,monthNamesShort : 'Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec' ,navigationAsDateFormat : false,nextText : 'Next',numberOfMonths : 1,prevText : 'Previous',shortYearCutoff : '+10',showAnim : 'show',showButtonPanel : true,showCurrentAtPos : 0,showMonthAfterYear : false,showOptions : ,showOtherMonths : false,stepMonths : 1,yearRange : '1927 : 2087' );
  • Org today's date function getOrgTodayDate() var todayDay 2 var todayMonth 6 var todayYear 2022 var todayDate new Date(todayYear, todayMonth, todayDay);
  • return todayDate; function checkForm(buttonElement, formElement, spinnerId) var snapVal $("div.snapshotContentDiv").html();
  • $('input#snapshotContent').val(snapVal); if (!validateFormInput(formElement)) return false; $(".fa-ban").attr('disabled', true);
  • $(buttonElement).attr('disabled', true); $('#' + spinnerId).css('display', 'inline-block'); $(formElement).submit(); / / chrome and safari needs this return false;
  • since we are submitting form above return false to prevent browser onclick submit function isValidationRequiredForCurrentActiveStep(element) if (!element) return;
  • var currentActiveStepinApplyRequisition $(".oracletaleocwsv2-step.oracletaleocwsv2-active"); if (!currentActiveStepinApplyRequisition.

    length) return true; var currentStep $(element).closest(".oracletaleocwsv2-step"); if (!currentStep.length) return true; var elementStepNo parseInt(currentStep 0 .

  • id.replace("step-", "")); var activeStepNo parseInt(currentActiveStepinApplyRequisition 0 .id.replace("step-", "")); return elementStepNo < activeStepNo;
  • Overriding standard messages jQuery.extend(jQuery.validator.messages, required : "Required field", email : "Enter valid email", email valid : "Enter valid email", date : "Enter valid date", equalTo : "Value does not match", number : "Enter valid number" );
  • Overriding standard required method to check for -1's jQuery.validator.methods.required function(value, element, param) if ("select" element.

    nodeName.toLowerCase()) var val $(element).val(); return (val && val.length >

    0 && val ! "-1") $(element).is(" : disabled"); return checkable(element) ? getLength(value, element) >

    0 : $.trim(value).length >

    0; function getLength(value, element) switch (element.nodeName.toLowerCase()) case "select" : return $("option : selected", element).

    length; case "input" : if (checkable(element)) return findByName(element.name).filter(" : checked").length; return value.

    length; function findByName(name) return $('#oracletaleocwsv2-wrapper').find(" name '" + name + "' "); function checkable(element) return / radio checkbox / i.

  • test(element.type); / / field itself checks for maxlength jQuery.validator.methods.maxlength function(value, element, param) return true;
  • function validateFormInput(elementToValidate) / / if elementToValidate is not form, need to call initialize on the parent form var formElement elementToValidate;
  • if (!$(formElement).is('form')) formElement $(elementToValidate).closest('form'); var validator $(formElement).validate( rules : required : true, cwsPassword 2 : equalTo : '#cwsPassword' , newPassword2 : equalTo : '#newPassword1' , email : email valid : true , cwsv2 profile picture upload content required : profile picture upload required : true , cwsv2 resume upload content required : resume upload required : true , cwsv2 work history : min work history : true , cwsv2 education history : min education history : true , cwsv2 residence history : min residence history : true , cwsv2 reference : min reference : true , cwsv2 certificate : min cert and license : true , cc305Date : cc305 date : true , cwsPassword : minlength : $(' name minPasswordLength ').

    val(), cwsPassword valid : true , newPassword1 : minlength : $(' name minPasswordLength ').val(), cwsPassword valid : true , messages : email : email valid : "Enter valid email" , cc305Date : cc305 date : "Invalid date" , cwsv2 work history : min work history : "Additional Work History is required" , cwsv2 education history : min education history : "Additional Education History is required" , cwsv2 residence history : min residence history : "Additional Residence History is required" , cwsv2 reference : min reference : "Additional Reference is required" , cwsv2 certificate : min cert and license : "Additional Certificate and License is required" , cwsv2 profile picture upload content required : profile picture upload required : "Required field" , cwsv2 resume upload content required : resume upload required : "Required field" , cwsPassword : minlength : $(' name minPasswordLengthError ').

    val(), cwsPassword valid : $(' name nonAbcCharsInPasswordError ').val() , newPassword1 : minlength : $(' name minPasswordLengthError ').

    val(), cwsPassword valid : $(' name nonAbcCharsInPasswordError ').val() , consentAgreement checkbox container : "This field must be checked to save job alert" , ignoreTitle : true, ignore : " : hidden : not('#cwsv2 work history, #cwsv2 education history, #cwsv2 residence history, #cwsv2 reference, #cwsv2 certificate, #cwsv2 profile picture upload content required, #cwsv2 resume upload content required, .

    cwsv2 validate rlent date, .cwsv2 validate rlent date from to, .cwsv2 work history instance, .cwsv2 education history instance, .

    cwsv2 residence history instance, .cwsv2 reference instance, .cwsv2 certificate instance, .cwsv2 double entry field container, .

    cwsv2 encrypted integer container, .cwsv2 required checkbox container, .cwsv2 force validation'),.cwsv2 ignore validation", errorClass : "text-danger", errorElement : 'label', focusInvalid : false, errorPlacement : function (label, elem) label.

  • attr("for", elem); var siblingPlaceholder elem.nextAll('.oracletaleocwsv2-error-text : first'); siblingPlaceholder.css("display", "block");
  • if (siblingPlaceholder.length >

  • 0) siblingPlaceholder.html(label); else var parentPlaceholder elem.parent().nextAll('.oracletaleocwsv2-error-text : first');
  • parentPlaceholder.css("display", "block"); if (parentPlaceholder.length >

    0) parentPlaceholder.html(label); else label.insertAfter(elem); , invalidHandler : function (form, validator) if (!validator.

    numberOfInvalids()) return; var errorElement $(validator.errorList 0 .element); var displayElement errorElement; / / if error element is hidden, scroll to its last sibling button or instance if (errorElement.

    is(" : visible")) displayElement errorElement.parent(); else displayElement errorElement.siblings('.btn : last'); if (!displayElement.

    is(" : visible")) displayElement errorElement.closest('.oracletaleocwsv2-instance'); if (!displayElement.is(" : visible")) displayElement errorElement.

    closest(" : visible"); $('html, body').animate( scrollTop : displayElement.offset().top , 1000); ); jQuery.validator.addMethod("email valid", function(value, element) if (this.

    optional(element)) return true; for (var k 0; k

  • 0) return false; var index value.indexOf(' '); if (index < 0) return false; var index2 value.indexOf('.', index); if (index2 < index) return false;
  • return true; ); jQuery.validator.addMethod("cwsPassword valid", function (value, element) var checkNonAlpha $(' name nonAbcCharsInPassword ').

    val(); if (checkNonAlpha "true") var passwd $.trim(value); return this.optional(element) !(( / a-zA-Z +$ / ).test(passwd)) ( / * 10,10 $ / ).

  • test(value); else return true; ); jQuery.validator.addMethod("min education history", function(value, element) if (!isValidationRequiredForCurrentActiveStep(element)) return true;
  • var educationContent $('.oracletaleocwsv2-step.oracletaleocwsv2-active').children('.oracletaleocwsv2-dynamic-content-education');
  • if (educationContent undefined educationContent.length 0) var webPage $('#TBE theForm').find('input name "WebPage" ').val();
  • if(webPage "MYINF V2") educationContent $('.oracletaleocwsv2-dynamic-content-education'); if (educationContent.length >

    0) var educationLength $('.oracletaleocwsv2-instance data-type education ').length; var minEducation $(' name cwsMinEducationCount ').val(); if (educationLength >

  • minEducation) return true; else return false; return true; ); jQuery.validator.addMethod("min work history", function(value, element) if (!isValidationRequiredForCurrentActiveStep(element)) return true;
  • var workContent $('.oracletaleocwsv2-step.oracletaleocwsv2-active').children('.oracletaleocwsv2-dynamic-content-work'); if (workContent undefined workContent.

    length 0) var webPage $('#TBE theForm').find('input name "WebPage" ').val(); if(webPage "MYINF V2") workContent $('.oracletaleocwsv2-dynamic-content-work'); if (workContent.length >

    0) var workLength $('.oracletaleocwsv2-instance data-type work ').length; var minWork $(' name cwsMinWorkCount ').val(); if (workLength >

  • minWork) return true; else return false; return true; ); function hasRequiredFields(element, classSelector) var containsRequired;
  • $(element).siblings(classSelector).children('.well').find('input, select, textarea').each(function(i) if ($(this).prop('required')) containsRequired true;
  • return false; ); return containsRequired; jQuery.validator.addMethod("min residence history", function(value, element) if (!isValidationRequiredForCurrentActiveStep(element)) return true;
  • var residenceContent $('.oracletaleocwsv2-step.oracletaleocwsv2-active').children('.oracletaleocwsv2-dynamic-content-residence');
  • if (residenceContent undefined residenceContent.length 0) var webPage $('#TBE theForm').find('input name "WebPage" ').val();
  • if(webPage "MYINF V2") residenceContent $('.oracletaleocwsv2-dynamic-content-residence'); if (residenceContent.length >

    0) var residenceLength $('.oracletaleocwsv2-instance data-type residence ').length; var minResidence $(' name cwsMinResidenceCount ').val(); if (residenceLength >

  • minResidence) return true; else return false; return true; ); jQuery.validator.addMethod("min reference", function(value, element) if (!isValidationRequiredForCurrentActiveStep(element)) return true;
  • var referenceContent $('.oracletaleocwsv2-step.oracletaleocwsv2-active').children('.oracletaleocwsv2-dynamic-content-reference');
  • if ( referenceContent undefined referenceContent.length 0) var webPage $('#TBE theForm').find('input name "WebPage" ').val();
  • if(webPage "MYINF V2") referenceContent $('.oracletaleocwsv2-dynamic-content-reference'); if (referenceContent.length >

    0) var referenceLength $('.oracletaleocwsv2-instance data-type reference ').length; var minReference $(' name cwsMinReferenceCount ').val(); if (referenceLength >

  • minReference) return true; else return false; return true; ); jQuery.validator.addMethod("min cert and license", function(value, element) if (!isValidationRequiredForCurrentActiveStep(element)) return true;
  • var certContent $('.oracletaleocwsv2-step.oracletaleocwsv2-active').children('.oracletaleocwsv2-dynamic-content-certificate');
  • if (certContent undefined certContent.length 0) var webPage $('#TBE theForm').find('input name "WebPage" ').val(); if(webPage "MYINF V2") certContent $('.

    oracletaleocwsv2-dynamic-content-certificate'); if (certContent.length >

    0) var certLength $('.oracletaleocwsv2-instance data-type certificate ').length; var minCert $(' name cwsMinCertificateCount ').val(); if (certLength >

  • minCert) return true; else return false; return true; ); jQuery.validator.addMethod("validate date no future", function(value, element) if (!isValidationRequiredForCurrentActiveStep(element)) return true;
  • var isValid true; var monthYear $(element).val(); var delimiterPos monthYear.search(" / "); var month monthYear.substring(0, delimiterPos);
  • var year monthYear.substring(delimiterPos + 1, monthYear.length); var d new Date(); / / incrementing month as it is 0 based var currentMonth d.

    getMonth() + 1; var currentYear d.getFullYear(); var elementId $(element).attr("id"); var isEducationDateTo (elementId.indexOf("EDUCATION dateTo") >

  • 0); if (isEducationDateTo) var isEducationDateToValid (year < (currentYear + 5) ) (year 9000); if (!isEducationDateToValid) isValid false;
  • else var isDateToInFuture (month >

    currentMonth && year >

  • currentYear) && !((elementId "workDateTo" elementId "dateTo") && year 9000); if (isDateToInFuture) isValid false; return isValid;
  • Cannot be future date"); jQuery.validator.addMethod("validate from less than to date", function(value, element) if (!isValidationRequiredForCurrentActiveStep(element)) return true;
  • var isValid true; if ($(element).attr("id").search("ateFrom") >

  • 0) return isValid; var toDateVal $(element).val(); if (!toDateVal) return isValid; var delimiterPos toDateVal.search(" / ");
  • var toMonth toDateVal.substring(0, delimiterPos); var toYear toDateVal.substring(delimiterPos + 1, toDateVal.length); var fromDateVal $(element).

    parents('.well').find("input type 'hidden' id* 'ateFrom' ").val(); if (fromDateVal) var delimiterPosFrom fromDateVal.search(" / "); if (delimiterPosFrom >

    0) var fromMonth fromDateVal.substring(0, delimiterPosFrom); var fromYear fromDateVal.substring(delimiterPosFrom + 1, fromDateVal.

    length); var fromDate new Date(); fromDate.setMonth(fromMonth - 1); fromDate.setYear(fromYear); fromDate.setDate(15); fromDate.

    setHours(0); fromDate.setMinutes(0); fromDate.setSeconds(0); var toDate new Date(); toDate.setMonth(toMonth - 1); toDate.

    setYear(toYear); toDate.setDate(15); toDate.setHours(0); toDate.setMinutes(0); toDate.setSeconds(0); if (fromDate >

  • toDate) isValid false; return isValid; , "Start date cannot be after the end date"); jQuery.validator.addMethod("resume upload required", function(value, element) if (!isValidationRequiredForCurrentActiveStep(element)) return true;
  • var resumeContent $(element).closest('.oracletaleocwsv2-dynamic-content-resume'); if (resumeContent.length >

    0 && resumeContent.is(' : visible')) var resumeLength $('.oracletaleocwsv2-instance data-type resume ').length; if (resumeLength >

  • 1) return true; else return false; return true; ); jQuery.validator.addMethod("profile picture upload required", function(value, element) if (!isValidationRequiredForCurrentActiveStep(element)) return true;
  • var profilePictureContent $(element).closest('.oracletaleocwsv2-dynamic-content-profile picture'); if (profilePictureContent.length >

    0 && profilePictureContent.is(' : visible')) var profilePictureLength $('.oracletaleocwsv2-instance data-type profile picture ').

    length; if (profilePictureLength >

  • 1) return true; else return false; return true; ); jQuery.validator.addMethod("cc305 date", function(value, element) var noIssue true;
  • if ($(element).val().trim() "") noIssue false; var oldVal $(element).val(); $(element).datepicker("setDate", $(element).

  • val()); if (oldVal ! $(element).val()) $(element).val(oldVal); noIssue false; return this.optional( element ) noIssue; );
  • jQuery.validator.addMethod("todays date", function(value, element) if ($(element).val().trim() "") return true; var currentVal $(element).

  • val(); var todayDate $.datepicker.formatDate('m / d / y', getOrgTodayDate()); if (currentVal ! todayDate) return false; return true;
  • jQuery.validator.addMethod("valid date", function(value, element) if ($(element).val().trim() "") return true; var parsedDate undefined;
  • try parsedDate $.datepicker.parseDate('m / d / y', $(element).val()); catch (e) if (parsedDate undefined) return false; return true;
  • jQuery.validator.addMethod("education history required instance", function(value, element) if (!isValidationRequiredForCurrentActiveStep(element)) return true;
  • var educationInstanceContent $('.oracletaleocwsv2-step.oracletaleocwsv2-active').find('.cwsv2 education history instance');
  • var isValid true; if (educationInstanceContent.length >

    0) $(element).closest('.oracletaleocwsv2-instance').children('.well').find('input, select, textarea').each(function(i) if ($(this).

    prop('required')) var element this; var value $(this).val(); if ("select" element.nodeName.toLowerCase()) var val $(element).

    val(); isValid (val && val.length >

    0 && val ! "-1") $(element).is(" : disabled"); else isValid checkable(element) ? getLength(value, element) >

    0 : $.trim(value).length >

  • 0; if (!isValid) return false; ); return isValid; , "Required fields missing"); jQuery.validator.addMethod("work history required instance", function(value, element) if (!isValidationRequiredForCurrentActiveStep(element)) return true;
  • var workInstanceContent $('.oracletaleocwsv2-step.oracletaleocwsv2-active').find('.cwsv2 work history instance'); var isValid true;
  • if (workInstanceContent.length >

    0) $(element).closest('.oracletaleocwsv2-instance').children('.well').find('input, select, textarea').each(function(i) if ($(this).

    prop('required')) var element this; var value $(this).val(); if ("select" element.nodeName.toLowerCase()) var val $(element).

    val(); isValid (val && val.length >

    0 && val ! "-1") $(element).is(" : disabled"); else isValid checkable(element) ? getLength(value, element) >

    0 : $.trim(value).length >

  • 0; if (!isValid) return false; ); return isValid; , "Required fields missing"); jQuery.validator.addMethod("residence history required instance", function(value, element) if (!isValidationRequiredForCurrentActiveStep(element)) return true;
  • var residenceInstanceContent $('.oracletaleocwsv2-step.oracletaleocwsv2-active').find('.cwsv2 residence history instance');
  • var isValid true; if (residenceInstanceContent.length >

    0) $(element).closest('.oracletaleocwsv2-instance').children('.well').find('input, select, textarea').each(function(i) if ($(this).

    prop('required')) var element this; var value $(this).val(); if ("select" element.nodeName.toLowerCase()) var val $(element).

    val(); isValid (val && val.length >

    0 && val ! "-1") $(element).is(" : disabled"); else isValid checkable(element) ? getLength(value, element) >

    0 : $.trim(value).length >

  • 0; if (!isValid) return false; ); return isValid; , "Required fields missing"); jQuery.validator.addMethod("reference required instance", function(value, element) if (!isValidationRequiredForCurrentActiveStep(element)) return true;
  • var referenceInstanceContent $('.oracletaleocwsv2-step.oracletaleocwsv2-active').find('.cwsv2 reference instance'); var isValid true;
  • if (referenceInstanceContent.length >

  • 0) isValid validateRequiredFields(element); return isValid; , "Required fields missing"); jQuery.validator.addMethod("cert and license required instance", function(value, element) if (!isValidationRequiredForCurrentActiveStep(element)) return true;
  • var certInstanceContent $('.oracletaleocwsv2-step.oracletaleocwsv2-active').find('.cwsv2 certificate instance'); var isValid true;
  • if (certInstanceContent.length >

  • 0) isValid validateRequiredFields(element); return isValid; , "Required fields missing"); var validateRequiredFields function(element) var isValid true;
  • $(element).closest('.oracletaleocwsv2-instance').children('.well').find('input, select, textarea').each(function(i) if ($(this).

    prop('required')) var element this; var value $(this).val(); if ("select" element.nodeName.toLowerCase()) var val $(element).

    val(); isValid (val && val.length >

    0 && val ! "-1") $(element).is(" : disabled"); else isValid checkable(element) ? getLength(value, element) >

    0 : $.trim(value).length >

  • 0; if (!isValid) return false; ); return isValid; ; jQuery.validator.addMethod("cwsv2 double entry field validation", function(value, element) if (!isValidationRequiredForCurrentActiveStep(element)) return true;
  • var divContainer $(element).parent(); if (divContainer.is(' : visible')) var isChanged divContainer.find(' id* " CHANGED" ');
  • if (isChanged.val() "true") var isValidationValue divContainer.find(' id* " validated" '); if (isValidationValue.length < 1) var maskedId " id* "masked " ";
  • var fieldToValidate divContainer.find(".cwsv2 double entry field : not('" + maskedId + "')"); var checkField $(element).

    siblings("#" + $(fieldToValidate).attr('id') + " checkField : not('" + maskedId + "')"); if (checkField.length >

  • 0) return $(fieldToValidate).val() $(checkField).val(); return true; , "Value does not match"); jQuery.validator.addMethod("cwsv2 encrypted integer validation", function(value, element) if (!isValidationRequiredForCurrentActiveStep(element)) return true;
  • var divContainer $(element).parent(); if (divContainer.is(' : visible')) var isChanged divContainer.find(' id* " CHANGED" ');
  • if (isChanged.val() "true") var isValidationValue divContainer.find(' id* " validated" '); if (isValidationValue.length < 1) var maskedId " id* "masked " ";
  • var fieldToValidate divContainer.find(".cwsv2 encrypted integer : not('" + maskedId + "')"); if (fieldToValidate.length >

  • 0) return this.optional(fieldToValidate.get(0)) / -?(? : d+ d 1,3 (? : , d 3 )+)?(? : . d+)?$ / .test(fieldToValidate.val());
  • return true; , "Enter valid number"); jQuery.validator.addMethod("cwsv2 required checkbox validation", function(value, element) if (!isValidationRequiredForCurrentActiveStep(element)) return true;
  • var checkboxElementContainer $(element).parent(); if (checkboxElementContainer.is(' : visible')) var checkboxElement $(checkboxElementContainer).

    find('input type "checkbox" '); if (checkboxElement.length >

  • 0) return $(checkboxElement).is(' : checked'); return true; , "This box must be checked"); jQuery.validator.addClassRules( cwsv2 work history instance : work history required instance : true , cwsv2 validate rlent date : validate date no future : true , cwsv2 validate rlent date from to : validate from less than to date : true , cwsv2 education history instance : education history required instance : true , cwsv2 residence history instance : residence history required instance : true , cwsv2 reference instance : reference required instance : true , cwsv2 certificate instance : cert and license required instance : true , cwsv2 double entry field container : cwsv2 double entry field validation : true , cwsv2 decimal : number : true , cwsv2 integer : number : true , cwsv2 encrypted integer container : cwsv2 encrypted integer validation : true , cwsv2 required checkbox container : cwsv2 required checkbox validation : true , cwsv2 email : email valid : true );
  • if element is form, use full form validation, if element is section, validate only its contents if ($(elementToValidate).

    is('form')) if (!$(elementToValidate).valid()) return false; else var status true; $(elementToValidate).find("input, select, textarea").

    each(function () if (!validator.element($(this))) status false; ); return status; return true; / / Same code as in csrfInclude.

  • jsp var TBE OBJ ; TBE OBJ.CSRF ; TBE OBJ.CSRF.enabled false; TBE OBJ.CSRF.tokenParam ' csrf'; TBE OBJ.CSRF.tokenValue 'v1 : ;
  • 1656759387166 : ;nXTsJ / Hfkb5n8ZeGMsxpJMo9bZi3oRFkTeaO7T3zACE '; TBE OBJ.CSRF.enabled true; var jq $; if (typeof $ 'undefined') jq jQuery;
  • if(typeof jq ! 'undefined') jq(document).ready(function () appendCsrfTokenToForms(TBE OBJ.CSRF.tokenParam, TBE OBJ.CSRF.

    tokenValue,'phe.tbe.taleo.net'); ); $('.scroll').jscroll( nextSelector : 'a.jscroll-next : last', loadingHtml : "", callback : function() if(window.

    fbAsyncInit) fbAsyncInit(); ); / / if two jscroll objects on one page, they should be initialized separately $('.scroll-my-jobs').

    jscroll( nextSelector : 'a.jscroll-next : last', autoTrigger : false, loadingHtml : "" ); $('.scroll-suggested-jobs').jscroll( nextSelector : 'a.

    jscroll-next : last', autoTrigger : false, loadingHtml : "" ); $(function () $('.orderbyPicker').on('change', function () var colSelected $(this).

  • find("option : selected").val(); var sortSelected $('.sortOrderbyPicker').find("option : selected").val(); location.href colSelected + "&" + sortSelected;
  • $(function () $('.sortOrderbyPicker').on('change', function () var sortSelected $('.orderbyPicker').find("option : selected").

  • val(); var selected $(this).find("option : selected").val(); location.href sortSelected + "&" + selected; ); );
  • Report this job
    checkmark

    Thank you for reporting this job!

    Your feedback will help us improve the quality of our services.

    Apply
    My Email
    By clicking on "Continue", I give neuvoo consent to process my data and to send me email alerts, as detailed in neuvoo's Privacy Policy . I may withdraw my consent or unsubscribe at any time.
    Continue
    Application form