Tunnel and Trenchless Engineer – Stantec – Atlanta, GA
At Stantec, we approach every water and natural resource project we undertake—whether at the local, regional, or watershed level— thoughtfully, and execute it…From Stantec – Fri, 30 Oct 2020 00:39:19 GMT – View all Atlanta, GA jobs …

“),r.close()),!r)throw Error(“base not supported”);var a=r.createElement(“base”);a.href=n,r.getElementsByTagName(“head”)[0].appendChild(a);var i=r.createElement(“a”);return i.href=t,i.href}finally{e&&e.parentNode.removeChild(e)}}());var l=i(t||””),f=function(){if(!(“defineProperties”in Object))return!1;try{var e={};return Object.defineProperties(e,{prop:{get:function(){return!0}}}),e.prop}catch(t){return!1}}(),h=f?this:document.createElement(“a”),m=new o(l.search?l.search.substring(1):null);return m._url_object=h,Object.defineProperties(h,{href:{get:function(){return l.href},set:function(e){l.href=e,r(),u()},enumerable:!0,configurable:!0},origin:{get:function(){return”origin”in l?l.origin:this.protocol+”//”+this.host},enumerable:!0,configurable:!0},protocol:{get:function(){return l.protocol},set:function(e){l.protocol=e},enumerable:!0,configurable:!0},username:{get:function(){return l.username},set:function(e){l.username=e},enumerable:!0,configurable:!0},password:{get:function(){return l.password},set:function(e){l.password=e},enumerable:!0,configurable:!0},host:{get:function(){var e={“http:”:/:80$/,”https:”:/:443$/,”ftp:”:/:21$/}[l.protocol];return e?l.host.replace(e,””):l.host},set:function(e){l.host=e},enumerable:!0,configurable:!0},hostname:{get:function(){return l.hostname},set:function(e){l.hostname=e},enumerable:!0,configurable:!0},port:{get:function(){return l.port},set:function(e){l.port=e},enumerable:!0,configurable:!0},pathname:{get:function(){return”/”!==l.pathname.charAt(0)?”/”+l.pathname:l.pathname},set:function(e){l.pathname=e},enumerable:!0,configurable:!0},search:{get:function(){return l.search},set:function(e){l.search!==e&&(l.search=e,r(),u())},enumerable:!0,configurable:!0},searchParams:{get:function(){return m},enumerable:!0,configurable:!0},hash:{get:function(){return l.hash},set:function(e){l.hash=e,r()},enumerable:!0,configurable:!0},toString:{value:function(){return l.toString()},enumerable:!1,configurable:!0},valueOf:{value:function(){return l.valueOf()},enumerable:!1,configurable:!0}}),h}var c,s=e.URL;try{if(s){if(“searchParams”in(c=new e.URL(“http://example.com”))){var f=new l(“http://example.com”);if(f.search=”a=1&b=2″,”http://example.com/?a=1&b=2″===f.href&&(f.search=””,”http://example.com/”===f.href))return}”href”in c||(c=undefined),c=undefined}}catch(m){}if(Object.defineProperties(o.prototype,{append:{value:function(e,t){this._list.push({name:e,value:t}),this._update_steps()},writable:!0,enumerable:!0,configurable:!0},”delete”:{value:function(e){for(var t=0;t<this._list.length t="0;t<this._list.length;++t)if(this._list[t].name===e)return" this._list null n="!1,r=0;r1?arguments[1]:undefined;this._list.forEach(function(n){e.call(t,n.value,n.name)})},writable:!0,enumerable:!0,configurable:!0},toString:{value:function(){return r(this._list)},writable:!0,enumerable:!1,configurable:!0}}),”Symbol”in e&&”iterator”in e.Symbol&&(Object.defineProperty(o.prototype,e.Symbol.iterator,{value:o.prototype.entries,writable:!0,enumerable:!0,configurable:!0}),Object.defineProperty(u.prototype,e.Symbol.iterator,{value:function(){return this},writable:!0,enumerable:!0,configurable:!0})),s)for(var h in s)Object.prototype.hasOwnProperty.call(s,h)&&”function”==typeof s[h]&&(l[h]=s[h]);e.URL=l,e.URLSearchParams=o}(),function(){if(“1”!==new e.URLSearchParams([[“a”,1]]).get(“a”)||”1″!==new e.URLSearchParams({a:1}).get(“a”)){var r=e.URLSearchParams;e.URLSearchParams=function(e){if(e&&”object”==typeof e&&t(e)){var a=new r;return n(e).forEach(function(e){if(!t(e))throw TypeError();var r=n(e);if(2!==r.length)throw TypeError();a.append(r[0],r[1])}),a}return e&&”object”==typeof e?(a=new r,Object.keys(e).forEach(function(t){a.set(t,e[t])}),a):new r(e)}}}()}(self);}if (!(“Window”in self
)) {“undefined”==typeof WorkerGlobalScope&&”function”!=typeof importScripts&&function(o){o.constructor?o.Window=o.constructor:(o.Window=o.constructor=new Function(“return function Window() {}”)()).prototype=self}(self);}if (!((function(n){if(!(“Event”in n))return!1
try{return new Event(“click”),!0}catch(t){return!1}})(self)
)) {!function(){function e(e,t){if(!e)throw new Error(“Not enough arguments”);var n;if(“createEvent”in document){n=document.createEvent(“Event”);var o=!(!t||t.bubbles===undefined)&&t.bubbles,i=!(!t||t.cancelable===undefined)&&t.cancelable;return n.initEvent(e,o,i),n}return n=document.createEventObject(),n.type=e,n.bubbles=!(!t||t.bubbles===undefined)&&t.bubbles,n.cancelable=!(!t||t.cancelable===undefined)&&t.cancelable,n}var t={click:1,dblclick:1,keyup:1,keypress:1,keydown:1,mousedown:1,mouseup:1,mousemove:1,mouseover:1,mouseenter:1,mouseleave:1,mouseout:1,storage:1,storagecommit:1,textinput:1};if(“undefined”!=typeof document&&”undefined”!=typeof window){var n=window.Event&&window.Event.prototype||null;e.NONE=0,e.CAPTURING_PHASE=1,e.AT_TARGET=2,e.BUBBLING_PHASE=3,window.Event=Window.prototype.Event=e,n&&Object.defineProperty(window.Event,”prototype”,{configurable:!1,enumerable:!1,writable:!0,value:n}),”createEvent”in document||(window.addEventListener=Window.prototype.addEventListener=Document.prototype.addEventListener=Element.prototype.addEventListener=function o(){var e=this,n=arguments[0],o=arguments[1];if(e===window&&n in t)throw new Error(“In IE8 the event: “+n+” is not available on the window object. Please see https://github.com/Financial-Times/polyfill-service/issues/317 for more information.”);e._events||(e._events={}),e._events[n]||(e._events[n]=function(t){var n,o=e._events[t.type].list,i=o.slice(),r=-1,c=i.length;for(t.preventDefault=function a(){!1!==t.cancelable&&(t.returnValue=!1)},t.stopPropagation=function l(){t.cancelBubble=!0},t.stopImmediatePropagation=function s(){t.cancelBubble=!0,t.cancelImmediate=!0},t.currentTarget=e,t.relatedTarget=t.fromElement||null,t.target=t.target||t.srcElement||e,t.timeStamp=(new Date).getTime(),t.clientX&&(t.pageX=t.clientX+document.documentElement.scrollLeft,t.pageY=t.clientY+document.documentElement.scrollTop);++r-1)
)) {self.CustomEvent=function e(t,n){if(!t)throw Error(‘TypeError: Failed to construct “CustomEvent”: An event name must be provided.’);var l;if(n=n||{bubbles:!1,cancelable:!1,detail:null},”createEvent”in document)try{l=document.createEvent(“CustomEvent”),l.initCustomEvent(t,n.bubbles,n.cancelable,n.detail)}catch(a){l=document.createEvent(“Event”),l.initEvent(t,n.bubbles,n.cancelable),l.detail=n.detail}else l=new Event(t,n),l.detail=n&&n.detail||null;return l},CustomEvent.prototype=Event.prototype;}if (!(“document”in self&&”hidden”in document&&”visibilityState”in document
)) {!function(){function i(){document.hidden=document[t+”Hidden”],document.visibilityState=document[t+”VisibilityState”]}var t=document.webkitVisibilityState?”webkit”:document.mozVisibilityState?”moz”:null;t&&(i(),document.addEventListener(t+”visibilitychange”,function(){i(),document.dispatchEvent(new CustomEvent(“visibilitychange”))}))}();}if (!((function(){var n=!1
return document.documentElement.addEventListener(“focusin”,function(){n=!0}),document.documentElement.dispatchEvent(new Event(“focusin”)),n})()
)) {self.addEventListener(“focus”,function(e){e.target.dispatchEvent(new Event(“focusin”,{bubbles:!0,cancelable:!0}))},!0),self.addEventListener(“blur”,function(e){e.target.dispatchEvent(new Event(“focusout”,{bubbles:!0,cancelable:!0}))},!0);}if (!(“onhashchange”in self&&(null==self.onhashchange||”function”==typeof self.onhashchange)
)) {!function(n){function h(){a!==n.location.hash&&(a=n.location.hash,n.dispatchEvent(new Event(“hashchange”))),setTimeout(h,500)}var a=n.location.hash;n.onhashchange=function(){},h()}(self);}if (!(“XMLHttpRequest”in self&&”prototype”in self.XMLHttpRequest&&”addEventListener”in self.XMLHttpRequest.prototype
)) {!function(e,t){e.XMLHttpRequest=function s(){var e=this,n=e._request=t?new t:new ActiveXObject(“MSXML2.XMLHTTP.3.0”);n.onreadystatechange=function(){e.readyState=n.readyState;var t=4===e.readyState;e.response=e.responseText=t?n.responseText:null,e.status=t?n.status:null,e.statusText=t?n.statusText:null,e.dispatchEvent(new Event(“readystatechange”)),t&&e.dispatchEvent(new Event(“load”))},”onerror”in n&&(n.onerror=function(){e.dispatchEvent(new Event(“error”))})},e.XMLHttpRequest.UNSENT=0,e.XMLHttpRequest.OPENED=1,e.XMLHttpRequest.HEADERS_RECEIVED=2,e.XMLHttpRequest.LOADING=3,e.XMLHttpRequest.DONE=4;var n=e.XMLHttpRequest.prototype;n.addEventListener=e.addEventListener,n.removeEventListener=e.removeEventListener,n.dispatchEvent=e.dispatchEvent,n.abort=function r(){return this._request()},n.getAllResponseHeaders=function u(){return this._request.getAllResponseHeaders()},n.getResponseHeader=function i(e){return this._request.getResponseHeader(e)},n.open=function a(e,t){this._request.open(e,t,arguments[2],arguments[3],arguments[4])},n.overrideMimeType=function o(e){this._request.overrideMimeType(e)},n.send=function p(){this._request.send(0 in arguments?arguments[0]:null)},n.setRequestHeader=function d(e,t){this._request.setRequestHeader(e,t)}}(self,self.XMLHttpRequest);}if (!(“fetch”in self
)) {!function(t,e){“object”==typeof exports&&”undefined”!=typeof module?e(exports):”function”==typeof define&&define.amd?define([“exports”],e):e(t.WHATWGFetch={})}(this,function(t){“use strict”;function e(t){return t&&DataView.prototype.isPrototypeOf(t)}function r(t){if(“string”!=typeof t&&(t=String(t)),/[^a-z0-9\-#$%&’*+.^_`|~]/i.test(t))throw new TypeError(“Invalid character in header field name”);return t.toLowerCase()}function o(t){return”string”!=typeof t&&(t=String(t)),t}function n(t){var e={next:function(){var e=t.shift();return{done:e===undefined,value:e}}};return v.iterable&&(e[Symbol.iterator]=function(){return e}),e}function i(t){this.map={},t instanceof i?t.forEach(function(t,e){this.append(e,t)},this):Array.isArray(t)?t.forEach(function(t){this.append(t[0],t[1])},this):t&&Object.getOwnPropertyNames(t).forEach(function(e){this.append(e,t[e])},this)}function s(t){if(t.bodyUsed)return Promise.reject(new TypeError(“Already read”));t.bodyUsed=!0}function a(t){return new Promise(function(e,r){t.onload=function(){e(t.result)},t.onerror=function(){r(t.error)}})}function f(t){var e=new FileReader,r=a(e);return e.readAsArrayBuffer(t),r}function u(t){var e=new FileReader,r=a(e);return e.readAsText(t),r}function h(t){for(var e=new Uint8Array(t),r=new Array(e.length),o=0;o-1?e:t}function p(t,e){e=e||{};var r=e.body;if(t instanceof p){if(t.bodyUsed)throw new TypeError(“Already read”);this.url=t.url,this.credentials=t.credentials,e.headers||(this.headers=new i(t.headers)),this.method=t.method,this.mode=t.mode,this.signal=t.signal,r||null==t._bodyInit||(r=t._bodyInit,t.bodyUsed=!0)}else this.url=String(t);if(this.credentials=e.credentials||this.credentials||”same-origin”,!e.headers&&this.headers||(this.headers=new i(e.headers)),this.method=y(e.method||this.method||”GET”),this.mode=e.mode||this.mode||null,this.signal=e.signal||this.signal,this.referrer=null,(“GET”===this.method||”HEAD”===this.method)&&r)throw new TypeError(“Body not allowed for GET or HEAD requests”);this._initBody(r)}function l(t){var e=new FormData;return t.trim().split(“&”).forEach(function(t){if(t){var r=t.split(“=”),o=r.shift().replace(/\+/g,” “),n=r.join(“=”).replace(/\+/g,” “);e.append(decodeURIComponent(o),decodeURIComponent(n))}}),e}function b(t){var e=new i;return t.replace(/\r?\n[\t ]+/g,” “).split(/\r?\n/).forEach(function(t){var r=t.split(“:”),o=r.shift().trim();if(o){var n=r.join(“:”).trim();e.append(o,n)}}),e}function m(t,e){e||(e={}),this.type=”default”,this.status=e.status===undefined?200:e.status,this.ok=this.status>=200&&this.status-1};i.prototype.append=function(t,e){t=r(t),e=o(e);var n=this.map[t];this.map[t]=n?n+”, “+e:e},i.prototype[“delete”]=function(t){delete this.map[r(t)]},i.prototype.get=function(t){return t=r(t),this.has(t)?this.map[t]:null},i.prototype.has=function(t){return this.map.hasOwnProperty(r(t))},i.prototype.set=function(t,e){this.map[r(t)]=o(e)},i.prototype.forEach=function(t,e){for(var r in this.map)this.map.hasOwnProperty(r)&&t.call(e,this.map[r],r,this)},i.prototype.keys=function(){var t=[];return this.forEach(function(e,r){t.push(r)}),n(t)},i.prototype.values=function(){var t=[];return this.forEach(function(e){t.push(e)}),n(t)},i.prototype.entries=function(){var t=[];return this.forEach(function(e,r){t.push([r,e])}),n(t)},v.iterable&&(i.prototype[Symbol.iterator]=i.prototype.entries);var _=[“DELETE”,”GET”,”HEAD”,”OPTIONS”,”POST”,”PUT”];p.prototype.clone=function(){return new p(this,{body:this._bodyInit})},c.call(p.prototype),c.call(m.prototype),m.prototype.clone=function(){return new m(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new i(this.headers),url:this.url})},m.error=function(){var t=new m(null,{status:0,statusText:””});return t.type=”error”,t};var x=[301,302,303,307,308];m.redirect=function(t,e){if(-1===x.indexOf(e))throw new RangeError(“Invalid status code”);return new m(null,{status:e,headers:{location:t}})},t.DOMException=self.DOMException;try{new t.DOMException}catch(g){t.DOMException=function(t,e){this.message=t,this.name=e;var r=Error(t);this.stack=r.stack},t.DOMException.prototype=Object.create(Error.prototype),t.DOMException.prototype.constructor=t.DOMException}w.polyfill=!0,self.fetch=w,self.Headers=i,self.Request=p,self.Response=m,t.Headers=i,t.Request=p,t.Response=m,t.fetch=w,Object.defineProperty(t,”__esModule”,{value:!0})});}})(‘object’ === typeof window && window || ‘object’ === typeof self && self || ‘object’ === typeof global && global || {});
At Stantec, we approach every water and natural resource project we undertake—whether at the local, regional, or watershed level— thoughtfully, and execute it with excellence across all project phases. We partner with our clients to design fit-for-purpose solutions that address their communities’ unique needs throughout the water infrastructure lifecycle. Our experts lead their fields and guide our work with scientific rigor, an innovative spirit, and a vision for growth. We’re a place where you can apply your passion and collaborate with top talent on work that’s critical to our clients, our communities, and the industry at large.
Your Opportunity
As a Tunnel and Trenchless Engineer, you will work independently on smaller projects and as a team member of larger projects. You should be able to evaluate, select, specify, and engineer tunnel and trenchless projects. Work will include a variety of complex tasks such as calculations, construction support, development of contract documents, and coordination of tasks and personnel. The projects assigned may be complex, broad, varied, and diverse in scope. You will design proposed projects to ensure reliability, efficiency, constructability, and cost-effectiveness.
Your Key Responsibilities
- May work on multiple projects and responsible for individual tasks on complex projects.
- Perform more complex engineering design tasks on assigned projects under supervision of the Project Technical Lead or Project Manager, including engineering drawings, calculations, engineering reports, specifications, presentations, and various contract documents.
- Engage in the development of design through sketches, electronic models, diagrams, and other visual formats.
- Prepare and revise documentation in various project phases including site plans, utility plan/profiles, cross sections, diagrams, and details.
- Participate in project coordination meetings with internal team members and/or external consultants, owner and contractor, sub-contractors, and vendors.
- Participate in meetings, both internally and externally.
- Coordinate with other team members while working on projects; complete tasks and delegate specific project tasks to other team members as appropriate.
- Assist senior engineers/designers with developing and managing the project scope, budget, staffing and schedule.
- Participate in constructability reviews.
- Conduct quality assurance and quality control.
- Assist in the development of new standards and specifications for the discipline.
- Prepare portions of engineering project proposals, change orders, client contact and communication pertaining to specific projects.
- Support the civil team in providing services during construction that can include submittal reviews, responses to requests for information and contract document clarifications.
Your Capabilities and Credentials
- A self-starter who is innovative and enjoys working in a collaborative environment.
- Strong communication skills and ability to participate and collaborate in project team setting and to engage in creative and critical thought.
- Tunnel and trenchless design and construction observation experience.
- Has well-developed understanding of general concepts of relevant areas of tunnel and trenchless design.
- Possesses excellent time management skills, thorough understanding of task assignment and schedule, budgeting and efficient use of time and resources.
- Ability to effectively discuss project issues with clients and reviewing agencies.
- Thorough understanding of design requirements in relevant jurisdictions.
- Well-developed understanding of all phases of project document production and the relationship between drawings and specifications.
- Strong knowledge of tunnel and trenchless means and methods, materials and industry standards.
- Proficiency in Microsoft Office, as well as relevant discipline software programs. Familiarity with relevant computational modeling software will be helpful.
- Ability to solve complex problems using sound professional judgment, creativity, and innovation.
- Ability to check the work of others for accuracy and completeness and manage time to meet project budget and schedule.
- Interest in developing marketing and proposal skills and presentation skills.
- Ability to travel for design or construction tunnel or trenchless roles.
Education and Experience
Bachelor’s degree in Civil/Geological Engineering or Geology & Licensed Professional Engineer (PE or PEng) or ability to obtain within 6 months of hire. A post graduate degree in Geotechnical Engineering, Engineering Geology or Structural Engineering would be an asset. Minimum of 5 years of experience in tunnel or trenchless design or construction activities and related geotechnical or structural engineering input. Additional experience is preferred.
Typical office environment working with computers and working at a desk for long periods of time. Field work may include exposure to the elements including inclement weather.
This description is not a comprehensive listing of activities, duties or responsibilities that may be required of the employee and other duties, responsibilities and activities may be assigned or may be changed at any time with or without notice.
Stantec is a place where the best and brightest come to build on each other’s talents, do exciting work, and make an impact on the world around us. Join us and redefine your personal best.
Job: Civil Engineer
Primary Location: United States-Georgia-Atlanta
Employee Status: Regular
Job Level: Individual Contributor
Travel: Yes, 25 % of the Time
Schedule: Full-time
Req ID: 200001UT
Stantec provides equal employment opportunities to all qualified employees and applicants for future and current employment and prohibit discrimination on the grounds of race, color, religion, sex, national origin, age, marital status, genetic information, disability, protected veteran status, sexual orientation, gender identity or gender expression. We prohibit discrimination in decisions concerning recruitment, hiring, referral, promotion, compensation, fringe benefits, job training, terminations or any other condition of employment. Stantec is in compliance with local, state and federal laws and regulations and ensures equitable opportunities in all aspects of employment. EEO including Disability/Protected Veterans