",i++)}this.list.innerHTML=e,this.d_built=!0,this.list.scrollTop=0},GetDropdown:function(){return this.d},ApplySearchFilter:function(t){return this.o.search_in_text?-1!==t.toLowerCase().indexOf(this.filter.toLowerCase()):0===t.toLowerCase().indexOf(this.filter.toLowerCase())},Update:function(){this.d_built=!1,$(this.e).trigger("destroy-dropdown"),this.UpdateSelect()},UpdateSelect:function(){var t=this.e[0].querySelectorAll("option:checked");if($(this.select).removeClass("ioselect-placeholder"),this.is_multiple)if(0'+this.o.value_format_function(t[i].text,t[i].value,this)+"");this.select.innerHTML=e;for(var s=$(this.select).find(".ioselect-selected-item"),i=0;i{t.actions.forEach(t=>{"add_class"===t.type&&(e[0].isIntersecting?$(i).addClass(t.params.class):t.params.toggle&&$(i).removeClass(t.params.class))})},e).observe(s)}),recaptcha_loading=!1,recaptcha_callbacks=[],RecaptchaLoaded=function(){for(var t=0;t')[0],$(this.form_element).append(t),""==this.site_key&&alert("Error: Recaptcha site key not set"),this.recaptcha_id=grecaptcha.render(t,{sitekey:this.site_key,callback:this.onValidate.bind(this),"expired-callback":this.onExpired.bind(this),"error-callback":this.onError.bind(this)}),$(this.form_element).find("[type=submit]").each(function(){null!==this.getAttribute("disabled")&&this.removeAttribute("disabled","")}),$(this.form_element).trigger("recaptcha:initialised")))},Validate:function(){this.form.SetValue("recaptcha_id",""),grecaptcha.reset(this.recaptcha_id),grecaptcha.execute(this.recaptcha_id),this.popup_iframe=!1,this.validating=!0,this.popup_interval=setInterval(function(){var t=$('iframe[src*="google.com/recaptcha/api2/bframe"]');if(0'),this.object.addClass("has-progress").append(this.progress)),this.progress.css({width:t.percent+"%"}))},Reset:function(){for(var t in clearTimeout(this.timer),this.GetAttributes())void 0!==this.attributes[t]?this.element.setAttribute(t,this.attributes[t]):this.element.removeAttribute(t);this.SetText(this.original_text)},GetText:function(){return"input"==this.element.nodeName.toLowerCase()?this.object[0].value:this.object[0].innerText},SetText:function(t){"input"==this.element.nodeName.toLowerCase()?this.object[0].value=t:this.object[0].innerText=t},ResetAttributes:function(){this.attributes=this.GetAttributes()},GetAttributes:function(){var t={},e=this.element.attributes;for(index in e)t[e[index].name]=e[index].value;return t}},function(t){this.isAdvancedUpload=("draggable"in(e=document.createElement("div"))||"ondragstart"in e&&"ondrop"in e)&&"FormData"in window&&"FileReader"in window,this.file_element=$(t),this.file_element.data("file-advanced",this),this.file_element.data("files",[]);var e="Drag and drop your file here",t=(void 0!==this.file_element.data("drag-drop-text")&&(e=this.file_element.data("drag-drop-text")),"Click to browse"),i=(void 0!==this.file_element.data("browse-text")&&(t=this.file_element.data("browse-text")),"or");void 0!==this.file_element.data("or-text")&&(i=this.file_element.data("or-text")),this.container=$('
")},Hide:function(){this.active&&(this.active=!1,$(window).off("keydown",this.listen_event),$(this.iframe)[0].setAttribute("src",""),$(this.iframe).remove(),this.mask.remove(),this.mask=null,this.iframe=null)}},$(function(){sCMS_MediaPopups.Init()}),{Init:function(){0!=$("form#form-candidateaccount").length&&(this.form=new ioForm("form#form-candidateaccount"),this.validator=new ioValidate("form#form-candidateaccount"),this.smart_button=new sCMS_SmartButton($("form#form-candidateaccount [type=submit]")),this.form.on("submit",this.Submit.bind(this)))},Submit:function(t){t.preventDefault(),this.smart_button.Set({text:"Saving",class:"c-smart-button--saving",attributes:{disabled:null}});var t=!0;(t=!!this.validator.DoFormValidation(this.form.GetElement())&&t)?((t=this.form.GetValues()).cv_file=this.form.GetValue("cv_file")[0],$.ajax("/api/1/Jobs/CandidateAccount",{method:"post",data:t,success:this.SaveSuccess.bind(this),error:this.SaveError.bind(this)})):this.smart_button.Set({text:"Unable to save",class:"c-smart-button--error",duration:4})},SaveSuccess:function(t){this.smart_button.Set({text:"Update successful, please wait",class:"c-smart-button--success",attributes:{disabled:!0}}),$(this.form.GetElement()).closest("#form-candidateaccount").removeClass("--show"),$("#candidateaccount-success").addClass("--show")},SaveError:function(t){if(this.smart_button.Set({text:"Unable to upload CV",class:"c-smart-button--error",duration:4}),t.errors&&0For each of the criteria below, rate which is most important to you. The more stars you assign to a particular factor, the more important it is.
",current:"
Now rate your current job according to how well it meets each of the criteria.
Rate how highly you think this job offer scores for each of the items below.
Remember, if you don't know how highly this particular job offer rates for a particular item, you can leave no rating and it won't affect the final score.
`):($("#step-description")[0].innerHTML=this.group_descriptions[t],$(this.form.GetElement()).removeClass("--offer")),this.UpdateGroup(),this.UpdateNavigation()},ShowStep:function(t){switch($(".c-job-offer-assessment__steps").find(".c-job-offer-assessment__step.--current").removeClass("--current"),$(".c-job-offer-assessment__steps").find(".c-job-offer-assessment__step#"+t).addClass("--current"),t){case"step-offers":this.current_step="offers",this.UpdateOffersList();break;case"step-results":this.current_step="results",this.UpdateResults();break;default:this.current_step=t.replace(/step\-/,"")}this.UpdateNavigation()},ShowResultTab:function(t){console.log($("[data-result-view]")),$("[data-result-view]").removeClass("--show"),$(`[data-result-view="${t}"]`).addClass("--show"),$("[data-result-tab]").removeClass("--current"),$(`[data-result-tab="${t}"]`).addClass("--current")},FormGoNext:function(){var t=!0;switch(this.current_group){case"priorities":step="step-current";break;case"current":step="step-offers";break;default:t=!1,step="step-offers"}if(t){var e,i=!1;for(e in this.fields)if(null===this.fields[e].GetValue()){i=!0;break}if(i)return void alert("Please rate all items before continuing.")}this.ShowStep(step)},UpdateGroup:function(){var t;if(void 0!==this.group_details[this.current_group]?t=this.group_details[this.current_group].title:(t="New Job Offer",0===this.current_group.indexOf("offer-")&&$("#step-new-offer-form").addClass("--show")),$(".c-job-offer-assessment__form-row").removeClass("--has-value"),void 0!==this.group_values[this.current_group])for(var e in this.fields){var i=parseInt(e.substring(9)),s=$(this.fields[e].GetElement()).closest(".c-job-offer-assessment__form-row");void 0!==this.group_values[this.current_group][i]&&null!==this.group_values[this.current_group][i]?(this.fields[e].SetValue(this.group_values[this.current_group][i]),s.addClass("--has-value")):void 0!==s.find("input:checked")[0]&&(s.find("input:checked")[0].checked=!1)}else{for(var e in this.fields)void 0!==$(this.fields[e].GetElement()).closest(".c-job-offer-assessment__form-row").find("input:checked")[0]&&($(this.fields[e].GetElement()).closest(".c-job-offer-assessment__form-row").find("input:checked")[0].checked=!1);this.group_values[this.current_group]=this.GetWeightingsValues()}$("#step-title")[0].innerText=t,0===this.current_group.indexOf("offer-")&&$("#step-title").addClass("--is-editable"),this.UpdateRatings(),this.UpdateNavigation()},Update:function(){this.group_values[this.current_group]=this.GetWeightingsValues(),this.UpdateGroup(),this.UpdateNavigation()},UpdateOffersList:function(){var t,e=[];for(t in this.group_values)0===t.indexOf("offer-")&&e.push(t);var i="";if(0
${this.group_details[r].title}
`}}$("#joam-offers-list .c-job-offer-assessment__offers-items")[0].innerHTML=i,$("#joam-offers-list .c-job-offer-assessment__offers-item-edit").on("click",function(t){t=$(t.target).closest("[data-offer]").data("offer");this.SetGroup(t)}.bind(this)),$("#joam-offers-list .c-job-offer-assessment__offers-item-delete").on("click",function(t){if(confirm("Are you sure you want to delete this offer?")){var e,i=$(t.target).closest("[data-offer]").data("offer");for(e in this.group_details)if(console.log(e),e===i){delete this.group_details[e],delete this.group_values[e];break}console.log(this.group_details),this.UpdateOffersList(),this.DoSubmitDetails()}}.bind(this)),(1
Construction, engineering, property, architecture, whatever your passion, there’s a job here for you.
Geotechnical Engineer
Consulting Engineering > Geotechnical
Salary
£38000 - £44000 per annum
Type
Permanent
Location(s)
London
We are working with an award winning engineering consultancy. As part of their planned expansion they have an excellent opportunity for a Geotechnical engineer in their South London office.
The requirement is for a Geotechnical Engineer with UK experience, passion and enthusiasm, who is after more responsibility and career advancement.
The Geotechnical Engineer: will have practical experience of designing shallow and deep foundations. Retaining walls and slope stability design. Preparation of desk studies, and producing designs and reporting of ground investigations.
Required: Relevant Engineering degree Working towards CEng status Practical experience with software packages such as WALLAP, Pdisp and PLAXIS.
In return you will get the chance to work across sectors with a diverse client base. Competitive salary excellent benefits and career advancement.
£70000 - £75000 per annum + excellent additional package
Type:
Permanent
Location(s):
City of London, London
Health & Safety Manager London Bridge office location Leading Specialist Contractor Up to £75,000 & package A market leading bespoke envelope contractor is recruiting for a...
£85000 - £90000 per annum + excellent additional package
Type:
Permanent
Location(s):
City of London, London
Senior Project Manager - facades Specialist Unitised Contractor London Centric Projects £85,0000 - £90,000 & package A leading European façade sub-contractor are now looking to...
Our client is involved with the manufacturing and installing of Inland and Coastal Marina Systems. Some of their projects have included Leisure marinas, ports and harbours, rowing and watersports,...
Ready to find your next opportunity in the built environment industry? Register with Amida Built Environment to stay up-to-date with the latest job openings and connect with our experienced recruiters.
!!This is just placeholder text. Don’t be alarmed, this is just here to fill up space since your finalized copy isn’t ready yet. Once we have your content finalized, we’ll replace this placeholder text.
This website uses cookies to ensure you get the best experience. Please read our privacy policy and click the button below to agree to the use of cookies, and remove this message.