CINXE.COM

Program – Dev Degree

<!doctype html> <html class="no-js hasFlex" lang="en"> <head> <script type="application/vnd.locksmith+json" data-locksmith>{"version":"v198","locked":false,"initialized":true,"scope":"page","access_granted":true,"access_denied":false,"requires_customer":false,"manual_lock":false,"remote_lock":false,"has_timeout":false,"remote_rendered":null,"hide_resource":false,"hide_links_to_resource":false,"transparent":true,"locks":{"all":[],"opened":[]},"keys":[],"keys_signature":"290f15252892bcba15140561233866dfe1a9b5d60c3059de00b03e90133870be","state":{"template":"page","theme":126306189334,"product":null,"collection":null,"page":"program","blog":null,"article":null,"app":null},"now":1742796098,"path":"\/pages\/program","locale_root_url":"\/","canonical_url":"https:\/\/devdegree.ca\/pages\/program","customer_id":null,"customer_id_signature":"290f15252892bcba15140561233866dfe1a9b5d60c3059de00b03e90133870be","cart":null}</script><script data-locksmith>!function(){var require=undefined,reqwest=function(){function succeed(e){var t=protocolRe.exec(e.url);return t=t&&t[1]||context.location.protocol,httpsRe.test(t)?twoHundo.test(e.request.status):!!e.request.response}function handleReadyState(e,t,n){return function(){return e._aborted?n(e.request):e._timedOut?n(e.request,"Request is aborted: timeout"):void(e.request&&4==e.request[readyState]&&(e.request.onreadystatechange=noop,succeed(e)?t(e.request):n(e.request)))}}function setHeaders(e,t){var n,s=t.headers||{};s.Accept=s.Accept||defaultHeaders.accept[t.type]||defaultHeaders.accept["*"];var r="undefined"!=typeof FormData&&t.data instanceof FormData;for(n in!t.crossOrigin&&!s[requestedWith]&&(s[requestedWith]=defaultHeaders.requestedWith),!s[contentType]&&!r&&(s[contentType]=t.contentType||defaultHeaders.contentType),s)s.hasOwnProperty(n)&&"setRequestHeader"in e&&e.setRequestHeader(n,s[n])}function setCredentials(e,t){"undefined"!=typeof t.withCredentials&&"undefined"!=typeof e.withCredentials&&(e.withCredentials=!!t.withCredentials)}function generalCallback(e){lastValue=e}function urlappend(e,t){return e+(/[?]/.test(e)?"&":"?")+t}function handleJsonp(e,t,n,s){var r=uniqid++,a=e.jsonpCallback||"callback",o=e.jsonpCallbackName||reqwest.getcallbackPrefix(r),i=new RegExp("((^|[?]|&)"+a+")=([^&]+)"),l=s.match(i),c=doc.createElement("script"),u=0,d=-1!==navigator.userAgent.indexOf("MSIE 10.0");return l?"?"===l[3]?s=s.replace(i,"$1="+o):o=l[3]:s=urlappend(s,a+"="+o),context[o]=generalCallback,c.type="text/javascript",c.src=s,c.async=!0,"undefined"!=typeof c.onreadystatechange&&!d&&(c.htmlFor=c.id="_reqwest_"+r),c.onload=c.onreadystatechange=function(){if(c[readyState]&&"complete"!==c[readyState]&&"loaded"!==c[readyState]||u)return!1;c.onload=c.onreadystatechange=null,c.onclick&&c.onclick(),t(lastValue),lastValue=undefined,head.removeChild(c),u=1},head.appendChild(c),{abort:function(){c.onload=c.onreadystatechange=null,n({},"Request is aborted: timeout",{}),lastValue=undefined,head.removeChild(c),u=1}}}function getRequest(e,t){var n,s=this.o,r=(s.method||"GET").toUpperCase(),a="string"==typeof s?s:s.url,o=!1!==s.processData&&s.data&&"string"!=typeof s.data?reqwest.toQueryString(s.data):s.data||null,i=!1;return("jsonp"==s.type||"GET"==r)&&o&&(a=urlappend(a,o),o=null),"jsonp"==s.type?handleJsonp(s,e,t,a):((n=s.xhr&&s.xhr(s)||xhr(s)).open(r,a,!1!==s.async),setHeaders(n,s),setCredentials(n,s),context[xDomainRequest]&&n instanceof context[xDomainRequest]?(n.onload=e,n.onerror=t,n.onprogress=function(){},i=!0):n.onreadystatechange=handleReadyState(this,e,t),s.before&&s.before(n),i?setTimeout(function(){n.send(o)},200):n.send(o),n)}function Reqwest(e,t){this.o=e,this.fn=t,init.apply(this,arguments)}function setType(e){return null===e?undefined:e.match("json")?"json":e.match("javascript")?"js":e.match("text")?"html":e.match("xml")?"xml":void 0}function init(o,fn){function complete(e){for(o.timeout&&clearTimeout(self.timeout),self.timeout=null;0<self._completeHandlers.length;)self._completeHandlers.shift()(e)}function success(resp){var type=o.type||resp&&setType(resp.getResponseHeader("Content-Type"));resp="jsonp"!==type?self.request:resp;var filteredResponse=globalSetupOptions.dataFilter(resp.responseText,type),r=filteredResponse;try{resp.responseText=r}catch(e){}if(r)switch(type){case"json":try{resp=context.JSON?context.JSON.parse(r):eval("("+r+")")}catch(err){return error(resp,"Could not parse JSON in response",err)}break;case"js":resp=eval(r);break;case"html":resp=r;break;case"xml":resp=resp.responseXML&&resp.responseXML.parseError&&resp.responseXML.parseError.errorCode&&resp.responseXML.parseError.reason?null:resp.responseXML}for(self._responseArgs.resp=resp,self._fulfilled=!0,fn(resp),self._successHandler(resp);0<self._fulfillmentHandlers.length;)resp=self._fulfillmentHandlers.shift()(resp);complete(resp)}function timedOut(){self._timedOut=!0,self.request.abort()}function error(e,t,n){for(e=self.request,self._responseArgs.resp=e,self._responseArgs.msg=t,self._responseArgs.t=n,self._erred=!0;0<self._errorHandlers.length;)self._errorHandlers.shift()(e,t,n);complete(e)}this.url="string"==typeof o?o:o.url,this.timeout=null,this._fulfilled=!1,this._successHandler=function(){},this._fulfillmentHandlers=[],this._errorHandlers=[],this._completeHandlers=[],this._erred=!1,this._responseArgs={};var self=this;fn=fn||function(){},o.timeout&&(this.timeout=setTimeout(function(){timedOut()},o.timeout)),o.success&&(this._successHandler=function(){o.success.apply(o,arguments)}),o.error&&this._errorHandlers.push(function(){o.error.apply(o,arguments)}),o.complete&&this._completeHandlers.push(function(){o.complete.apply(o,arguments)}),this.request=getRequest.call(this,success,error)}function reqwest(e,t){return new Reqwest(e,t)}function normalize(e){return e?e.replace(/\r?\n/g,"\r\n"):""}function serial(e,t){var n,s,r,a,o=e.name,i=e.tagName.toLowerCase(),l=function(e){e&&!e.disabled&&t(o,normalize(e.attributes.value&&e.attributes.value.specified?e.value:e.text))};if(!e.disabled&&o)switch(i){case"input":/reset|button|image|file/i.test(e.type)||(n=/checkbox/i.test(e.type),s=/radio/i.test(e.type),r=e.value,(!n&&!s||e.checked)&&t(o,normalize(n&&""===r?"on":r)));break;case"textarea":t(o,normalize(e.value));break;case"select":if("select-one"===e.type.toLowerCase())l(0<=e.selectedIndex?e.options[e.selectedIndex]:null);else for(a=0;e.length&&a<e.length;a++)e.options[a].selected&&l(e.options[a])}}function eachFormElement(){var e,t,a=this,n=function(e,t){var n,s,r;for(n=0;n<t.length;n++)for(r=e[byTag](t[n]),s=0;s<r.length;s++)serial(r[s],a)};for(t=0;t<arguments.length;t++)e=arguments[t],/input|select|textarea/i.test(e.tagName)&&serial(e,a),n(e,["input","select","textarea"])}function serializeQueryString(){return reqwest.toQueryString(reqwest.serializeArray.apply(null,arguments))}function serializeHash(){var n={};return eachFormElement.apply(function(e,t){e in n?(n[e]&&!isArray(n[e])&&(n[e]=[n[e]]),n[e].push(t)):n[e]=t},arguments),n}function buildParams(e,t,n,s){var r,a,o,i=/\[\]$/;if(isArray(t))for(a=0;t&&a<t.length;a++)o=t[a],n||i.test(e)?s(e,o):buildParams(e+"["+("object"==typeof o?a:"")+"]",o,n,s);else if(t&&"[object Object]"===t.toString())for(r in t)buildParams(e+"["+r+"]",t[r],n,s);else s(e,t)}var context=this,XHR2;if("window"in context)var doc=document,byTag="getElementsByTagName",head=doc[byTag]("head")[0];else try{XHR2=require("xhr2")}catch(ex){throw new Error("Peer dependency `xhr2` required! Please npm install xhr2")}var httpsRe=/^http/,protocolRe=/(^\w+):\/\//,twoHundo=/^(20\d|1223)$/,readyState="readyState",contentType="Content-Type",requestedWith="X-Requested-With",uniqid=0,callbackPrefix="reqwest_"+ +new Date,lastValue,xmlHttpRequest="XMLHttpRequest",xDomainRequest="XDomainRequest",noop=function(){},isArray="function"==typeof Array.isArray?Array.isArray:function(e){return e instanceof Array},defaultHeaders={contentType:"application/x-www-form-urlencoded",requestedWith:xmlHttpRequest,accept:{"*":"text/javascript, text/html, application/xml, text/xml, */*",xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript",js:"application/javascript, text/javascript"}},xhr=function(e){if(!0!==e.crossOrigin)return context[xmlHttpRequest]?new XMLHttpRequest:XHR2?new XHR2:new ActiveXObject("Microsoft.XMLHTTP");var t=context[xmlHttpRequest]?new XMLHttpRequest:null;if(t&&"withCredentials"in t)return t;if(context[xDomainRequest])return new XDomainRequest;throw new Error("Browser does not support cross-origin requests")},globalSetupOptions={dataFilter:function(e){return e}};return Reqwest.prototype={abort:function(){this._aborted=!0,this.request.abort()},retry:function(){init.call(this,this.o,this.fn)},then:function(e,t){return e=e||function(){},t=t||function(){},this._fulfilled?this._responseArgs.resp=e(this._responseArgs.resp):this._erred?t(this._responseArgs.resp,this._responseArgs.msg,this._responseArgs.t):(this._fulfillmentHandlers.push(e),this._errorHandlers.push(t)),this},always:function(e){return this._fulfilled||this._erred?e(this._responseArgs.resp):this._completeHandlers.push(e),this},fail:function(e){return this._erred?e(this._responseArgs.resp,this._responseArgs.msg,this._responseArgs.t):this._errorHandlers.push(e),this},"catch":function(e){return this.fail(e)}},reqwest.serializeArray=function(){var n=[];return eachFormElement.apply(function(e,t){n.push({name:e,value:t})},arguments),n},reqwest.serialize=function(){if(0===arguments.length)return"";var e,t=Array.prototype.slice.call(arguments,0);return(e=t.pop())&&e.nodeType&&t.push(e)&&(e=null),e&&(e=e.type),("map"==e?serializeHash:"array"==e?reqwest.serializeArray:serializeQueryString).apply(null,t)},reqwest.toQueryString=function(e,t){var n,s,r=t||!1,a=[],o=encodeURIComponent,i=function(e,t){t="function"==typeof t?t():null==t?"":t,a[a.length]=o(e)+"="+o(t)};if(isArray(e))for(s=0;e&&s<e.length;s++)i(e[s].name,e[s].value);else for(n in e)e.hasOwnProperty(n)&&buildParams(n,e[n],r,i);return a.join("&").replace(/%20/g,"+")},reqwest.getcallbackPrefix=function(){return callbackPrefix},reqwest.compat=function(e,t){return e&&(e.type&&(e.method=e.type)&&delete e.type,e.dataType&&(e.type=e.dataType),e.jsonpCallback&&(e.jsonpCallbackName=e.jsonpCallback)&&delete e.jsonpCallback,e.jsonp&&(e.jsonpCallback=e.jsonp)),new Reqwest(e,t)},reqwest.ajaxSetup=function(e){for(var t in e=e||{})globalSetupOptions[t]=e[t]},reqwest}(); /*! * Reqwest! A general purpose XHR connection manager * license MIT (c) Dustin Diaz 2015 * https://github.com/ded/reqwest */!function(){var o=window.Locksmith={},e=document.querySelector('script[type="application/vnd.locksmith+json"]'),n=e&&e.innerHTML;if(o.state={},o.util={},o.loading=!1,n)try{o.state=JSON.parse(n)}catch(u){}if(document.addEventListener&&document.querySelector){var s,r,a,t=[76,79,67,75,83,77,73,84,72,49,49],i=function(){r=t.slice(0)},l="style",c=function(e){e&&27!==e.keyCode&&"click"!==e.type||(document.removeEventListener("keydown",c),document.removeEventListener("click",c),s&&document.body.removeChild(s),s=null)};i(),document.addEventListener("keyup",function(e){if(e.keyCode===r[0]){if(clearTimeout(a),r.shift(),0<r.length)return void(a=setTimeout(i,1e3));i(),c(),(s=document.createElement("div"))[l].width="50%",s[l].maxWidth="1000px",s[l].height="85%",s[l].border="1px rgba(0, 0, 0, 0.2) solid",s[l].background="rgba(255, 255, 255, 0.99)",s[l].borderRadius="4px",s[l].position="fixed",s[l].top="50%",s[l].left="50%",s[l].transform="translateY(-50%) translateX(-50%)",s[l].boxShadow="0 2px 5px rgba(0, 0, 0, 0.3), 0 0 100vh 100vw rgba(0, 0, 0, 0.5)",s[l].zIndex="2147483645";var t=document.createElement("textarea");t.value=JSON.stringify(JSON.parse(n),null,2),t[l].border="none",t[l].display="block",t[l].boxSizing="border-box",t[l].width="100%",t[l].height="100%",t[l].background="transparent",t[l].padding="22px",t[l].fontFamily="monospace",t[l].fontSize="14px",t[l].color="#333",t[l].resize="none",t[l].outline="none",t.readOnly=!0,s.appendChild(t),document.body.appendChild(s),t.addEventListener("click",function(e){e.stopImmediatePropagation()}),t.select(),document.addEventListener("keydown",c),document.addEventListener("click",c)}})}o.isEmbedded=-1!==window.location.search.indexOf("_ab=0&_fd=0&_sc=1"),o.path=o.state.path||window.location.pathname,o.basePath=o.state.locale_root_url.concat("/apps/locksmith").replace(/^\/\//,"/"),o.reloading=!1,o.util.console=window.console||{log:function(){},error:function(){}},o.util.makeUrl=function(e,t){var n,s=o.basePath+e,r=[],a=o.cache();for(n in a)r.push(n+"="+encodeURIComponent(a[n]));for(n in t)r.push(n+"="+encodeURIComponent(t[n]));return o.state.customer_id&&(r.push("customer_id="+encodeURIComponent(o.state.customer_id)),r.push("customer_id_signature="+encodeURIComponent(o.state.customer_id_signature))),s+=(-1===s.indexOf("?")?"?":"&")+r.join("&")},o._initializeCallbacks=[],o.on=function(e,t){if("initialize"!==e)throw'Locksmith.on() currently only supports the "initialize" event';o._initializeCallbacks.push(t)},o.initializeSession=function(e){if(!o.isEmbedded){var t=!1,n=!0,s=!0;(e=e||{}).silent&&(s=n=!(t=!0)),o.ping({silent:t,spinner:n,reload:s,callback:function(){o._initializeCallbacks.forEach(function(e){e()})}})}},o.cache=function(e){var t={};try{var n=function r(e){return(document.cookie.match("(^|; )"+e+"=([^;]*)")||0)[2]};t=JSON.parse(decodeURIComponent(n("locksmith-params")||"{}"))}catch(u){}if(e){for(var s in e)t[s]=e[s];document.cookie="locksmith-params=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/",document.cookie="locksmith-params="+encodeURIComponent(JSON.stringify(t))+"; path=/"}return t},o.cache.cart=o.state.cart,o.cache.cartLastSaved=null,o.params=o.cache(),o.util.reload=function(){o.reloading=!0;try{window.location.href=window.location.href.replace(/#.*/,"")}catch(u){o.util.console.error("Preferred reload method failed",u),window.location.reload()}},o.cache.saveCart=function(e){if(!o.cache.cart||o.cache.cart===o.cache.cartLastSaved)return e?e():null;var t=o.cache.cartLastSaved;o.cache.cartLastSaved=o.cache.cart,reqwest({url:"/cart/update.json",method:"post",type:"json",data:{attributes:{locksmith:o.cache.cart}},complete:e,error:function(e){if(o.cache.cartLastSaved=t,!o.reloading)throw e}})},o.util.spinnerHTML='<style>body{background:#FFF}@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}#loading{display:flex;width:100%;height:50vh;color:#777;align-items:center;justify-content:center}#loading .spinner{display:block;animation:spin 600ms linear infinite;position:relative;width:50px;height:50px}#loading .spinner-ring{stroke:currentColor;stroke-dasharray:100%;stroke-width:2px;stroke-linecap:round;fill:none}</style><div id="loading"><div class="spinner"><svg width="100%" height="100%"><svg preserveAspectRatio="xMinYMin"><circle class="spinner-ring" cx="50%" cy="50%" r="45%"></circle></svg></svg></div></div>',o.util.clobberBody=function(e){document.body.innerHTML=e},o.util.clobberDocument=function(e){e.responseText&&(e=e.responseText),document.documentElement&&document.removeChild(document.documentElement);var t=document.open("text/html","replace");t.writeln(e),t.close(),setTimeout(function(){var e=t.querySelector("[autofocus]");e&&e.focus()},100)},o.util.serializeForm=function(e){if(e&&"FORM"===e.nodeName){var t,n,s={};for(t=e.elements.length-1;0<=t;t-=1)if(""!==e.elements[t].name)switch(e.elements[t].nodeName){case"INPUT":switch(e.elements[t].type){default:case"text":case"hidden":case"password":case"button":case"reset":case"submit":s[e.elements[t].name]=e.elements[t].value;break;case"checkbox":case"radio":e.elements[t].checked&&(s[e.elements[t].name]=e.elements[t].value);break;case"file":}break;case"TEXTAREA":s[e.elements[t].name]=e.elements[t].value;break;case"SELECT":switch(e.elements[t].type){case"select-one":s[e.elements[t].name]=e.elements[t].value;break;case"select-multiple":for(n=e.elements[t].options.length-1;0<=n;n-=1)e.elements[t].options[n].selected&&(s[e.elements[t].name]=e.elements[t].options[n].value)}break;case"BUTTON":switch(e.elements[t].type){case"reset":case"submit":case"button":s[e.elements[t].name]=e.elements[t].value}}return s}},o.util.on=function(e,a,o,t){t=t||document;var i="locksmith-"+e+a,n=function(e){var t=e.target,n=e.target.parentElement,s=t.className.baseVal||t.className||"",r=n.className.baseVal||n.className||"";("string"==typeof s&&-1!==s.split(/\s+/).indexOf(a)||"string"==typeof r&&-1!==r.split(/\s+/).indexOf(a))&&!e[i]&&(e[i]=!0,o(e))};t.attachEvent?t.attachEvent(e,n):t.addEventListener(e,n,!1)},o.util.enableActions=function(e){o.util.on("click","locksmith-action",function(e){e.preventDefault();var t=e.target;t.dataset.confirmWith&&!confirm(t.dataset.confirmWith)||(t.disabled=!0,t.innerText=t.dataset.disableWith,o.post("/action",t.dataset.locksmithParams,{spinner:!1,type:"text",success:function(e){(e=JSON.parse(e.responseText)).message&&alert(e.message),o.util.reload()}}))},e)},o.util.inject=function(e,t){var n=["data","locksmith","append"];if(-1!==t.indexOf(n.join("-"))){var s=document.createElement("div");s.innerHTML=t,e.appendChild(s)}else e.innerHTML=t;var r,a,o=e.querySelectorAll("script");for(a=0;a<o.length;++a){r=o[a];var i=document.createElement("script");if(r.type&&(i.type=r.type),r.src)i.src=r.src;else{var l=document.createTextNode(r.innerHTML);i.appendChild(l)}e.appendChild(i)}var c=e.querySelector("[autofocus]");c&&c.focus()},o.post=function(e,t,n){!1!==(n=n||{}).spinner&&o.util.clobberBody(o.util.spinnerHTML);var s={};n.container===document?(s.layout=1,n.success=function(e){document.getElementById(n.container);o.util.clobberDocument(e)}):n.container&&(s.layout=0,n.success=function(e){var t=document.getElementById(n.container);o.util.inject(t,e),t.id===t.firstChild.id&&t.parentElement.replaceChild(t.firstChild,t)}),n.form_type&&(t.form_type=n.form_type),n.include_layout_classes!==undefined&&(t.include_layout_classes=n.include_layout_classes),n.lock_id!==undefined&&(t.lock_id=n.lock_id),o.loading=!0;var r=o.util.makeUrl(e,s);reqwest({url:r,method:"post",type:n.type||"html",data:t,complete:function(){o.loading=!1},error:function(e){if(!o.reloading)if("dashboard.weglot.com"!==window.location.host){if(!n.silent)throw alert("Something went wrong! Please refresh and try again."),e;console.error(e)}else console.error(e)},success:n.success||o.util.clobberDocument})},o.postResource=function(e,t){e.path=o.path,e.search=window.location.search,e.state=o.state,e.passcode&&(e.passcode=e.passcode.trim()),e.email&&(e.email=e.email.trim()),e.state.cart=o.cache.cart,e.locksmith_json=o.jsonTag,e.locksmith_json_signature=o.jsonTagSignature,o.post("/resource",e,t)},o.ping=function(e){if(!o.isEmbedded){e=e||{};var t=function(){e.reload?o.util.reload():"function"==typeof e.callback&&e.callback()};o.post("/ping",{path:o.path,search:window.location.search,state:o.state},{spinner:!!e.spinner,silent:"undefined"==typeof e.silent||e.silent,type:"text",success:function(e){(e=JSON.parse(e.responseText)).messages&&0<e.messages.length&&o.showMessages(e.messages),e.cart&&o.cache.cart!==e.cart?(o.cache.cart=e.cart,o.cache.saveCart(function(){t(),e.cart&&e.cart.match(/^.+:/)&&o.util.reload()})):t()}})}},o.timeoutMonitor=function(){var e=o.cache.cart;o.ping({callback:function(){e!==o.cache.cart||setTimeout(function(){o.timeoutMonitor()},6e4)}})},o.showMessages=function(e){var t=document.createElement("div");t.style.position="fixed",t.style.left=0,t.style.right=0,t.style.bottom="-50px",t.style.opacity=0,t.style.background="#191919",t.style.color="#ddd",t.style.transition="bottom 0.2s, opacity 0.2s",t.style.zIndex=999999,t.innerHTML=" <style> .locksmith-ab .locksmith-b { display: none; } .locksmith-ab.toggled .locksmith-b { display: flex; } .locksmith-ab.toggled .locksmith-a { display: none; } .locksmith-flex { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; padding: 10px 20px; } .locksmith-message + .locksmith-message { border-top: 1px #555 solid; } .locksmith-message a { color: inherit; font-weight: bold; } .locksmith-message a:hover { color: inherit; opacity: 0.8; } a.locksmith-ab-toggle { font-weight: inherit; text-decoration: underline; } .locksmith-text { flex-grow: 1; } .locksmith-cta { flex-grow: 0; text-align: right; } .locksmith-cta button { transform: scale(0.8); transform-origin: left; } .locksmith-cta > * { display: block; } .locksmith-cta > * + * { margin-top: 10px; } .locksmith-message a.locksmith-close { flex-grow: 0; text-decoration: none; margin-left: 15px; font-size: 30px; font-family: monospace; display: block; padding: 2px 10px; } @media screen and (max-width: 600px) { .locksmith-wide-only { display: none !important; } .locksmith-flex { padding: 0 15px; } .locksmith-flex > * { margin-top: 5px; margin-bottom: 5px; } .locksmith-cta { text-align: left; } } @media screen and (min-width: 601px) { .locksmith-narrow-only { display: none !important; } } </style> "+e.map(function(e){return'<div class="locksmith-message">'+e+"</div>"}).join(""),document.body.appendChild(t),document.body.style.position="relative",document.body.parentElement.style.paddingBottom=t.offsetHeight+"px",setTimeout(function(){t.style.bottom=0,t.style.opacity=1},50),o.util.on("click","locksmith-ab-toggle",function(e){e.preventDefault();for(var t=e.target.parentElement;-1===t.className.split(" ").indexOf("locksmith-ab");)t=t.parentElement;-1!==t.className.split(" ").indexOf("toggled")?t.className=t.className.replace("toggled",""):t.className=t.className+" toggled"}),o.util.enableActions(t)}}()}();</script> <script data-locksmith>Locksmith.cache.cart=null</script> <script data-locksmith>Locksmith.jsonTag="\u003cscript type=\"application\/vnd.locksmith+json\" data-locksmith\u003e{\"version\":\"v198\",\"locked\":false,\"initialized\":true,\"scope\":\"page\",\"access_granted\":true,\"access_denied\":false,\"requires_customer\":false,\"manual_lock\":false,\"remote_lock\":false,\"has_timeout\":false,\"remote_rendered\":null,\"hide_resource\":false,\"hide_links_to_resource\":false,\"transparent\":true,\"locks\":{\"all\":[],\"opened\":[]},\"keys\":[],\"keys_signature\":\"290f15252892bcba15140561233866dfe1a9b5d60c3059de00b03e90133870be\",\"state\":{\"template\":\"page\",\"theme\":126306189334,\"product\":null,\"collection\":null,\"page\":\"program\",\"blog\":null,\"article\":null,\"app\":null},\"now\":1742796098,\"path\":\"\\\/pages\\\/program\",\"locale_root_url\":\"\\\/\",\"canonical_url\":\"https:\\\/\\\/devdegree.ca\\\/pages\\\/program\",\"customer_id\":null,\"customer_id_signature\":\"290f15252892bcba15140561233866dfe1a9b5d60c3059de00b03e90133870be\",\"cart\":null}\u003c\/script\u003e";Locksmith.jsonTagSignature="189f0223b635af15a18052fb170acae5786675045a1dd16dd7e507b56b25deba"</script> <!-- Basic page needs ================================================== --> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <link rel="shortcut icon" href="//devdegree.ca/cdn/shop/files/favicon_32x32.png?v=1613159812" type="image/png" /> <!-- Pixels ================================================== --> <!-- Global site tag (gtag.js) - Google Ads: 635282946 --> <script async src="https://www.googletagmanager.com/gtag/js?id=AW-635282946"></script> <script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'AW-635282946'); </script> <!-- Title and description ================================================== --> <title> Program &ndash; Dev Degree </title> <meta name="description" content="Dev Degree gives a modern alternative to traditional experience for computer science education by combining hands-on experience, self-paced learning, and theoretical foundations. What does hands-on experience mean? You&#39;ll learn, practice, and work with production software and tools and the innovative teams who build it"> <!-- Mobile Specific Metas --> <meta name="HandheldFriendly" content="True"> <meta name="MobileOptimized" content="320"> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> <!-- Helpers ================================================== --> <meta property="og:type" content="website"> <meta property="og:title" content="Program"> <meta property="og:description" content="Dev Degree gives a modern alternative to traditional experience for computer science education by combining hands-on experience, self-paced learning, and theoretical foundations. What does hands-on experience mean? You&#39;ll learn, practice, and work with production software and tools and the innovative teams who build it"> <meta property="og:url" content="https://devdegree.ca/pages/program"> <meta property="og:site_name" content="Dev Degree"> <meta name="twitter:card" content="summary"> <link rel="canonical" href="https://devdegree.ca/pages/program"> <meta name="viewport" content="width=device-width,initial-scale=1"> <meta name="theme-color" content="#17234f"> <!-- CSS ================================================== --> <link href="//devdegree.ca/cdn/shop/t/12/assets/stylescss.scss.css?v=143296076468031628971741624316" rel="stylesheet" type="text/css" media="all" /> <link href="//devdegree.ca/cdn/shop/t/12/assets/slick.scss.css?v=105554840067576297321630434854" rel="stylesheet" type="text/css" media="all" /> <link href="//devdegree.ca/cdn/shop/t/12/assets/fonts.css?v=181007908889101614191630434830" rel="stylesheet" type="text/css" media="all" /> <!-- Header hook for plugins ================================================== --> <!-- icons ================================================== --> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css"> <script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script><meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/7877722134/digital_wallets/dialog"> <meta name="shopify-checkout-api-token" content="f38211f9e499c18aad1e4c9b92f40f7a"> <meta id="in-context-paypal-metadata" data-shop-id="7877722134" data-venmo-supported="false" data-environment="production" data-locale="en_US" data-paypal-v4="true" data-currency="CAD"> <script async="async" src="/checkouts/internal/preloads.js?locale=en-CA"></script> <link rel="preconnect" href="https://shop.app" crossorigin="anonymous"> <script async="async" src="https://shop.app/checkouts/internal/preloads.js?locale=en-CA&shop_id=7877722134" crossorigin="anonymous"></script> <script id="apple-pay-shop-capabilities" type="application/json">{"shopId":7877722134,"countryCode":"CA","currencyCode":"CAD","merchantCapabilities":["supports3DS"],"merchantId":"gid:\/\/shopify\/Shop\/7877722134","merchantName":"Dev Degree","requiredBillingContactFields":["postalAddress","email"],"requiredShippingContactFields":["postalAddress","email"],"shippingType":"shipping","supportedNetworks":["visa","masterCard","amex","discover","interac","jcb"],"total":{"type":"pending","label":"Dev Degree","amount":"1.00"},"shopifyPaymentsEnabled":true,"supportsSubscriptions":true}</script> <script id="shopify-features" type="application/json">{"accessToken":"f38211f9e499c18aad1e4c9b92f40f7a","betas":["rich-media-storefront-analytics"],"domain":"devdegree.ca","predictiveSearch":true,"shopId":7877722134,"smart_payment_buttons_url":"https:\/\/devdegree.ca\/cdn\/shopifycloud\/payment-sheet\/assets\/latest\/spb.en.js","dynamic_checkout_cart_url":"https:\/\/devdegree.ca\/cdn\/shopifycloud\/payment-sheet\/assets\/latest\/dynamic-checkout-cart.en.js","locale":"en"}</script> <script>var Shopify = Shopify || {}; Shopify.shop = "devdegreeteam.myshopify.com"; Shopify.locale = "en"; Shopify.currency = {"active":"CAD","rate":"1.0"}; Shopify.country = "CA"; Shopify.theme = {"name":"Reconfigure 2021 - Live - July 2022","id":126306189334,"schema_name":"Lorenza","schema_version":"2.7.1","theme_store_id":798,"role":"main"}; Shopify.theme.handle = "null"; Shopify.theme.style = {"id":null,"handle":null}; Shopify.cdnHost = "devdegree.ca/cdn"; Shopify.routes = Shopify.routes || {}; Shopify.routes.root = "/";</script> <script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script> <script>!function(o){function n(){var o=[];function n(){o.push(Array.prototype.slice.apply(arguments))}return n.q=o,n}var t=o.Shopify=o.Shopify||{};t.loadFeatures=n(),t.autoloadFeatures=n()}(window);</script> <script>window.ShopifyPay = window.ShopifyPay || {}; window.ShopifyPay.apiHost = "shop.app\/pay";</script> <script id="shop-js-analytics" type="application/json">{"pageType":"page"}</script> <script> window.Shopify = window.Shopify || {}; if (!window.Shopify.featureAssets) window.Shopify.featureAssets = {}; window.Shopify.featureAssets['shop-js'] = {"init-windoid":["modules/v2/client.init-windoid_BYFG3Lnu.en.esm.js","modules/v2/chunk.common_CF-a952v.esm.js"],"shop-toast-manager":["modules/v2/client.shop-toast-manager_C5aybzgc.en.esm.js","modules/v2/chunk.common_CF-a952v.esm.js"],"init-fed-cm":["modules/v2/client.init-fed-cm_oj3UXfQv.en.esm.js","modules/v2/chunk.common_CF-a952v.esm.js"],"pay-button":["modules/v2/client.pay-button_DV1lgE60.en.esm.js","modules/v2/chunk.common_CF-a952v.esm.js"],"init-customer-accounts-sign-up":["modules/v2/client.init-customer-accounts-sign-up_1ZbRgSAn.en.esm.js","modules/v2/client.shop-login-button_BG2ca3Cw.en.esm.js","modules/v2/chunk.common_CF-a952v.esm.js","modules/v2/chunk.modal_omY9a7A5.esm.js"],"avatar":["modules/v2/client.avatar_BTnouDA3.en.esm.js"],"shop-cash-offers":["modules/v2/client.shop-cash-offers_bd_DQyTA.en.esm.js","modules/v2/chunk.common_CF-a952v.esm.js","modules/v2/chunk.modal_omY9a7A5.esm.js"],"checkout-modal":["modules/v2/client.checkout-modal_UPG9zzjM.en.esm.js","modules/v2/chunk.common_CF-a952v.esm.js","modules/v2/chunk.modal_omY9a7A5.esm.js"],"init-shop-for-new-customer-accounts":["modules/v2/client.init-shop-for-new-customer-accounts_wj75s5v7.en.esm.js","modules/v2/client.shop-login-button_BG2ca3Cw.en.esm.js","modules/v2/chunk.common_CF-a952v.esm.js","modules/v2/chunk.modal_omY9a7A5.esm.js"],"init-shop-email-lookup-coordinator":["modules/v2/client.init-shop-email-lookup-coordinator_CPehqjeR.en.esm.js","modules/v2/chunk.common_CF-a952v.esm.js"],"init-customer-accounts":["modules/v2/client.init-customer-accounts_CE0PfAsb.en.esm.js","modules/v2/client.shop-login-button_BG2ca3Cw.en.esm.js","modules/v2/chunk.common_CF-a952v.esm.js","modules/v2/chunk.modal_omY9a7A5.esm.js"],"shop-login-button":["modules/v2/client.shop-login-button_BG2ca3Cw.en.esm.js","modules/v2/chunk.common_CF-a952v.esm.js","modules/v2/chunk.modal_omY9a7A5.esm.js"],"shop-follow-button":["modules/v2/client.shop-follow-button_CSf-3Ra4.en.esm.js","modules/v2/chunk.common_CF-a952v.esm.js","modules/v2/chunk.modal_omY9a7A5.esm.js"],"lead-capture":["modules/v2/client.lead-capture_Bgo8V34y.en.esm.js","modules/v2/chunk.common_CF-a952v.esm.js","modules/v2/chunk.modal_omY9a7A5.esm.js"],"payment-terms":["modules/v2/client.payment-terms_DwY-YZoJ.en.esm.js","modules/v2/chunk.common_CF-a952v.esm.js","modules/v2/chunk.modal_omY9a7A5.esm.js"]}; </script> <script>(function() { function asyncLoad() { var urls = ["https:\/\/static.klaviyo.com\/onsite\/js\/klaviyo.js?company_id=XDBZjB\u0026shop=devdegreeteam.myshopify.com","https:\/\/static.klaviyo.com\/onsite\/js\/klaviyo.js?company_id=XDBZjB\u0026shop=devdegreeteam.myshopify.com"]; for (var i = 0; i < urls.length; i++) { var s = document.createElement('script'); s.type = 'text/javascript'; s.async = true; s.src = urls[i]; var x = document.getElementsByTagName('script')[0]; x.parentNode.insertBefore(s, x); } }; if(window.attachEvent) { window.attachEvent('onload', asyncLoad); } else { window.addEventListener('load', asyncLoad, false); } })();</script> <script id="__st">var __st={"a":7877722134,"offset":-14400,"reqid":"b54bd34e-d452-471e-b2db-cf5cf1360f46-1742796098","pageurl":"devdegree.ca\/pages\/program","s":"pages-81350688790","u":"f3d1560a136f","p":"page","rtyp":"page","rid":81350688790};</script> <script>window.ShopifyPaypalV4VisibilityTracking = true;</script> <script id="captcha-bootstrap">!function(){'use strict';const t='contact',e='account',n='new_comment',o=[[t,t],['blogs',n],['comments',n],[t,'customer']],c=[[e,'customer_login'],[e,'guest_login'],[e,'recover_customer_password'],[e,'create_customer']],r=t=>t.map((([t,e])=>`form[action*='/${t}']:not([data-nocaptcha='true']) input[name='form_type'][value='${e}']`)).join(','),a=t=>()=>t?[...document.querySelectorAll(t)].map((t=>t.form)):[];function s(){const t=[...o],e=r(t);return a(e)}const i='password',u='form_key',d=['recaptcha-v3-token','g-recaptcha-response','h-captcha-response',i],f=()=>{try{return window.sessionStorage}catch{return}},m='__shopify_v',_=t=>t.elements[u];function p(t,e,n=!1){try{const o=window.sessionStorage,c=JSON.parse(o.getItem(e)),{data:r}=function(t){const{data:e,action:n}=t;return t[m]||n?{data:e,action:n}:{data:t,action:n}}(c);for(const[e,n]of Object.entries(r))t.elements[e]&&(t.elements[e].value=n);n&&o.removeItem(e)}catch(o){console.error('form repopulation failed',{error:o})}}const l='form_type',E='cptcha';function T(t){t.dataset[E]=!0}const w=window,h=w.document,L='Shopify',v='ce_forms',y='captcha';let A=!1;((t,e)=>{const n=(g='f06e6c50-85a8-45c8-87d0-21a2b65856fe',I='https://cdn.shopify.com/shopifycloud/storefront-forms-hcaptcha/ce_storefront_forms_captcha_hcaptcha.v1.5.2.iife.js',D={infoText:'Protected by hCaptcha',privacyText:'Privacy',termsText:'Terms'},(t,e,n)=>{const o=w[L][v],c=o.bindForm;if(c)return c(t,g,e,D).then(n);var r;o.q.push([[t,g,e,D],n]),r=I,A||(h.body.append(Object.assign(h.createElement('script'),{id:'captcha-provider',async:!0,src:r})),A=!0)});var g,I,D;w[L]=w[L]||{},w[L][v]=w[L][v]||{},w[L][v].q=[],w[L][y]=w[L][y]||{},w[L][y].protect=function(t,e){n(t,void 0,e),T(t)},Object.freeze(w[L][y]),function(t,e,n,w,h,L){const[v,y,A,g]=function(t,e,n){const i=e?o:[],u=t?c:[],d=[...i,...u],f=r(d),m=r(i),_=r(d.filter((([t,e])=>n.includes(e))));return[a(f),a(m),a(_),s()]}(w,h,L),I=t=>{const e=t.target;return e instanceof HTMLFormElement?e:e&&e.form},D=t=>v().includes(t);t.addEventListener('submit',(t=>{const e=I(t);if(!e)return;const n=D(e)&&!e.dataset.hcaptchaBound&&!e.dataset.recaptchaBound,o=_(e),c=g().includes(e)&&(!o||!o.value);(n||c)&&t.preventDefault(),c&&!n&&(function(t){try{if(!f())return;!function(t){const e=f();if(!e)return;const n=_(t);if(!n)return;const o=n.value;o&&e.removeItem(o)}(t);const e=Array.from(Array(32),(()=>Math.random().toString(36)[2])).join('');!function(t,e){_(t)||t.append(Object.assign(document.createElement('input'),{type:'hidden',name:u})),t.elements[u].value=e}(t,e),function(t,e){const n=f();if(!n)return;const o=[...t.querySelectorAll(`input[type='${i}']`)].map((({name:t})=>t)),c=[...d,...o],r={};for(const[a,s]of new FormData(t).entries())c.includes(a)||(r[a]=s);n.setItem(e,JSON.stringify({[m]:1,action:t.action,data:r}))}(t,e)}catch(e){console.error('failed to persist form',e)}}(e),e.submit())}));const S=(t,e)=>{t&&!t.dataset[E]&&(n(t,e.some((e=>e===t))),T(t))};for(const o of['focusin','change'])t.addEventListener(o,(t=>{const e=I(t);D(e)&&S(e,y())}));const B=e.get('form_key'),M=e.get(l),P=B&&M;t.addEventListener('DOMContentLoaded',(()=>{const t=y();if(P)for(const e of t)e.elements[l].value===M&&p(e,B);[...new Set([...A(),...v().filter((t=>'true'===t.dataset.shopifyCaptcha))])].forEach((e=>S(e,t)))}))}(h,new URLSearchParams(w.location.search),n,t,e,['guest_login'])})(!0,!1)}();</script> <script integrity="sha256-EGCDRYTvIEOXsReXgqGwkAR+5Dl8tickSrieA/ZcQwc=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//devdegree.ca/cdn/shopifycloud/shopify/assets/storefront/load_feature-1060834584ef204397b1179782a1b090047ee4397cb627244ab89e03f65c4307.js" crossorigin="anonymous"></script> <script crossorigin="anonymous" defer="defer" src="//devdegree.ca/cdn/shopifycloud/shopify/assets/shopify_pay/storefront-80e528be853eac23af2454534897ca9536b1d3d04aa043b042f34879a3c111c8.js?v=20220906"></script> <script integrity="sha256-HAs5a9TQVLlKuuHrahvWuke+s1UlxXohfHeoYv8G2D8=" data-source-attribution="shopify.dynamic-checkout" defer="defer" src="//devdegree.ca/cdn/shopifycloud/shopify/assets/storefront/features-1c0b396bd4d054b94abae1eb6a1bd6ba47beb35525c57a217c77a862ff06d83f.js" crossorigin="anonymous"></script> <link rel="stylesheet" media="screen" href="https://devdegree.ca/cdn/shopifycloud/portable-wallets/latest/accelerated-checkout-backwards-compat.css" crossorigin="anonymous"> <style id="shopify-dynamic-checkout-cart">@media screen and (min-width: 750px) { #dynamic-checkout-cart { min-height: 50px; } } @media screen and (max-width: 750px) { #dynamic-checkout-cart { min-height: 180px; } } </style><script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script> <script src="https://code.jquery.com/jquery-latest.min.js"></script> <script src="//www.youtube.com/iframe_api" type="text/javascript"></script> <script src="//devdegree.ca/cdn/shop/t/12/assets/modernizr.min.js?v=21391054748206432451630434840" type="text/javascript"></script> <script> window.Theme = {}; Theme.localization = { cart: { quantity: "Qty", allInCart: "That&amp;#39;s all we have in stock at the moment." }, product: { addedToCart: "Added to Cart!" } }; </script> <script src="//devdegree.ca/cdn/shop/t/12/assets/lazysizes.min.js?v=164671140253812716401630434836" type="text/javascript"></script> <script src="//devdegree.ca/cdn/shop/t/12/assets/lazysizes.rias.min.js?v=124284299834728756501630434837" type="text/javascript"></script> <script src="//devdegree.ca/cdn/shop/t/12/assets/lazysizes.bgset.min.js?v=72009607408926569371630434836" type="text/javascript"></script> <link href="//devdegree.ca/cdn/shopifycloud/shopify-plyr/v1.0/shopify-plyr.css" rel="stylesheet" type="text/css" media="all" /> <!-- Facebook Pixel Code --> <script> !function(f,b,e,v,n,t,s) {if(f.fbq)return;n=f.fbq=function(){n.callMethod? n.callMethod.apply(n,arguments):n.queue.push(arguments)}; if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0'; n.queue=[];t=b.createElement(e);t.async=!0; t.src=v;s=b.getElementsByTagName(e)[0]; s.parentNode.insertBefore(t,s)}(window, document,'script', 'https://connect.facebook.net/en_US/fbevents.js'); fbq('init', '1904241839800487'); fbq('track', 'PageView'); </script> <noscript><img height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id=1904241839800487&ev=PageView&noscript=1" /></noscript> <!-- End Facebook Pixel Code --> <!-- Twitter universal website tag code --> <script> !function(e,t,n,s,u,a){e.twq||(s=e.twq=function(){s.exe?s.exe.apply(s,arguments):s.queue.push(arguments); },s.version=‘1.1’,s.queue=[],u=t.createElement(n),u.async=!0,u.src=‘//static.ads-twitter.com/uwt.js’, a=t.getElementsByTagName(n)[0],a.parentNode.insertBefore(u,a))}(window,document,‘script’); // Insert Twitter Pixel ID and Standard Event data below twq(‘init’,‘nvxy6’); twq(‘track’,‘PageView’); </script> <!-- End Twitter universal website tag code --> <script type="text/javascript" src="//script.crazyegg.com/pages/scripts/0012/4914.js" async="async" ></script> <link href="//devdegree.ca/cdn/shop/t/12/assets/re.css?v=21800621977840110031630434841" rel="stylesheet" type="text/css" media="all" /> <link href="//devdegree.ca/cdn/shop/t/12/assets/custom-fields.css?v=91920930425301698801630434829" rel="stylesheet" type="text/css" media="all" /> <script src="//devdegree.ca/cdn/shop/t/12/assets/custom-fields-widgets.js?v=160540944247093329111630434828" defer="defer"></script> <meta property="og:image" content="https://cdn.shopify.com/s/files/1/0078/7772/2134/files/dev_degree_social_7f53285d-ebc4-4efe-90f9-8e36cc9ca866.png?v=1630326834" /> <meta property="og:image:secure_url" content="https://cdn.shopify.com/s/files/1/0078/7772/2134/files/dev_degree_social_7f53285d-ebc4-4efe-90f9-8e36cc9ca866.png?v=1630326834" /> <meta property="og:image:width" content="1200" /> <meta property="og:image:height" content="628" /> <link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch"> <script>(function(){if ("sendBeacon" in navigator && "performance" in window) {var session_token = document.cookie.match(/_shopify_s=([^;]*)/);function handle_abandonment_event(e) {var entries = performance.getEntries().filter(function(entry) {return /monorail-edge.shopifysvc.com/.test(entry.name);});if (!window.abandonment_tracked && entries.length === 0) {window.abandonment_tracked = true;var currentMs = Date.now();var navigation_start = performance.timing.navigationStart;var payload = {shop_id: 7877722134,url: window.location.href,navigation_start,duration: currentMs - navigation_start,session_token: session_token && session_token.length === 2 ? session_token[1] : "",page_type: "page"};window.navigator.sendBeacon("https://monorail-edge.shopifysvc.com/v1/produce", JSON.stringify({schema_id: "online_store_buyer_site_abandonment/1.1",payload: payload,metadata: {event_created_at_ms: currentMs,event_sent_at_ms: currentMs}}));}}window.addEventListener('pagehide', handle_abandonment_event);}}());</script> <script id="web-pixels-manager-setup">(function e(e,d,r,n,o,i){if(void 0===i&&(i={}),!Boolean(null===(t=null===(a=window.Shopify)||void 0===a?void 0:a.analytics)||void 0===t?void 0:t.replayQueue)){var a,t;window.Shopify=window.Shopify||{};var s=window.Shopify;s.analytics=s.analytics||{};var l=s.analytics;l.replayQueue=[],l.publish=function(e,d,r){return l.replayQueue.push([e,d,r]),!0};try{self.performance.mark("wpm:start")}catch(e){}var u=function(){var e={modern:/Edge?\/(1{2}[4-9]|1[2-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Firefox\/(1{2}[4-9]|1[2-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Chrom(ium|e)\/(9{2}|\d{3,})\.\d+(\.\d+|)|(Maci|X1{2}).+ Version\/(15\.\d+|(1[6-9]|[2-9]\d|\d{3,})\.\d+)([,.]\d+|)( \(\w+\)|)( Mobile\/\w+|) Safari\/|Chrome.+OPR\/(9{2}|\d{3,})\.\d+\.\d+|(CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS|CPU iPad OS)[ +]+(15[._]\d+|(1[6-9]|[2-9]\d|\d{3,})[._]\d+)([._]\d+|)|Android:?[ /-](13[1-9]|1[4-9]\d|[2-9]\d{2}|\d{4,})(\.\d+|)(\.\d+|)|Android.+Firefox\/(13[2-9]|1[4-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+Chrom(ium|e)\/(13[1-9]|1[4-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|SamsungBrowser\/([2-9]\d|\d{3,})\.\d+/,legacy:/Edge?\/(1[6-9]|[2-9]\d|\d{3,})\.\d+(\.\d+|)|Firefox\/(5[4-9]|[6-9]\d|\d{3,})\.\d+(\.\d+|)|Chrom(ium|e)\/(5[1-9]|[6-9]\d|\d{3,})\.\d+(\.\d+|)([\d.]+$|.*Safari\/(?![\d.]+ Edge\/[\d.]+$))|(Maci|X1{2}).+ Version\/(10\.\d+|(1[1-9]|[2-9]\d|\d{3,})\.\d+)([,.]\d+|)( \(\w+\)|)( Mobile\/\w+|) Safari\/|Chrome.+OPR\/(3[89]|[4-9]\d|\d{3,})\.\d+\.\d+|(CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS|CPU iPad OS)[ +]+(10[._]\d+|(1[1-9]|[2-9]\d|\d{3,})[._]\d+)([._]\d+|)|Android:?[ /-](13[1-9]|1[4-9]\d|[2-9]\d{2}|\d{4,})(\.\d+|)(\.\d+|)|Mobile Safari.+OPR\/([89]\d|\d{3,})\.\d+\.\d+|Android.+Firefox\/(13[2-9]|1[4-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+Chrom(ium|e)\/(13[1-9]|1[4-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+(UC? ?Browser|UCWEB|U3)[ /]?(15\.([5-9]|\d{2,})|(1[6-9]|[2-9]\d|\d{3,})\.\d+)\.\d+|SamsungBrowser\/(5\.\d+|([6-9]|\d{2,})\.\d+)|Android.+MQ{2}Browser\/(14(\.(9|\d{2,})|)|(1[5-9]|[2-9]\d|\d{3,})(\.\d+|))(\.\d+|)|K[Aa][Ii]OS\/(3\.\d+|([4-9]|\d{2,})\.\d+)(\.\d+|)/},d=e.modern,r=e.legacy,n=navigator.userAgent;return n.match(d)?"modern":n.match(r)?"legacy":"unknown"}(),c="modern"===u?"modern":"legacy",f=(null!=o?o:{modern:"",legacy:""})[c],m=function(e){return[e.baseUrl,"/wpm","/b",e.hashVersion,"modern"===e.buildTarget?"m":"l",".js"].join("")}({baseUrl:r,hashVersion:n,buildTarget:c}),p=function(e){var d=e.version,r=e.bundleTarget,n=e.surface,o=e.pageUrl,i=e.monorailEndpoint;return{emit:function(e){var a=e.status,t=e.errorMsg,s=(new Date).getTime(),l=JSON.stringify({metadata:{event_sent_at_ms:s},events:[{schema_id:"web_pixels_manager_load/3.1",payload:{version:d,bundle_target:r,page_url:o,status:a,surface:n,error_msg:t},metadata:{event_created_at_ms:s}}]});if(!i)return console&&console.warn&&console.warn("[Web Pixels Manager] No Monorail endpoint provided, skipping logging."),!1;try{return self.navigator.sendBeacon.bind(self.navigator)(i,l)}catch(e){}var u=new XMLHttpRequest;try{return u.open("POST",i,!0),u.setRequestHeader("Content-Type","text/plain"),u.send(l),!0}catch(e){return console&&console.warn&&console.warn("[Web Pixels Manager] Got an unhandled error while logging to Monorail."),!1}}}}({version:n,bundleTarget:u,surface:e.surface,pageUrl:self.location.href,monorailEndpoint:e.monorailEndpoint});try{i.browserTarget=u,function(e){var d=e.src,r=e.async,n=void 0===r||r,o=e.onload,i=e.onerror,a=e.sri,t=e.scriptDataAttributes,s=void 0===t?{}:t,l=document.createElement("script"),u=document.querySelector("head"),c=document.querySelector("body");if(l.async=n,l.src=d,a&&(l.integrity=a,l.crossOrigin="anonymous"),s)for(var f in s)if(Object.prototype.hasOwnProperty.call(s,f))try{l.dataset[f]=s[f]}catch(e){}if(o&&l.addEventListener("load",o),i&&l.addEventListener("error",i),u)u.appendChild(l);else{if(!c)throw new Error("Did not find a head or body element to append the script");c.appendChild(l)}}({src:m,async:!0,onload:function(){if(!function(){var e,d;return Boolean(null===(d=null===(e=window.Shopify)||void 0===e?void 0:e.analytics)||void 0===d?void 0:d.initialized)}()){var r=window.webPixelsManager.init(e)||void 0;if(r){d(r);var n=window.Shopify.analytics;n.replayQueue.forEach((function(e){var d=e[0],n=e[1],o=e[2];r.publishCustomEvent(d,n,o)})),n.replayQueue=[],n.publish=r.publishCustomEvent,n.visitor=r.visitor,n.initialized=!0}}},onerror:function(){return p.emit({status:"failed",errorMsg:"".concat(m," has failed to load")})},sri:function(e){var d=/^sha384-[A-Za-z0-9+/=]+$/;return"string"==typeof e&&d.test(e)}(f)?f:"",scriptDataAttributes:i}),p.emit({status:"loading"})}catch(e){p.emit({status:"failed",errorMsg:(null==e?void 0:e.message)||"Unknown error"})}}})({shopId: 7877722134,storefrontBaseUrl: "https://devdegree.ca",extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint: "https://monorail-edge.shopifysvc.com/unstable/produce_batch",surface: "storefront-renderer",enabledBetaFlags: ["6a396365"],webPixelsConfigList: [{"id":"shopify-app-pixel","configuration":"{}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"0411","apiClientId":"shopify-pixel","type":"APP","privacyPurposes":["ANALYTICS","MARKETING"]},{"id":"shopify-custom-pixel","eventPayloadVersion":"v1","runtimeContext":"LAX","scriptVersion":"0411","apiClientId":"shopify-pixel","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING"]}],isMerchantRequest: false,effectiveTopLevelDomain: "",initData: {"shop":{"name":"Dev Degree","paymentSettings":{"currencyCode":"CAD"},"myshopifyDomain":"devdegreeteam.myshopify.com","countryCode":"CA","storefrontUrl":"https://devdegree.ca"},"customer":null,"cart":null,"checkout":null,"productVariants":[],"purchasingCompany":null},},function pageEvents(webPixelsManagerAPI) {webPixelsManagerAPI.publish("page_viewed", {});},"https://devdegree.ca/cdn","4d6b725aw7b7d67b3paeba6abfm5ed26ec3",{"modern":"","legacy":""},{"shopId":"7877722134","storefrontBaseUrl":"https://devdegree.ca","extensionBaseUrl":"https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager","surface":"storefront-renderer","enabledBetaFlags":"[\"6a396365\"]","isMerchantRequest":"false","hashVersion":"4d6b725aw7b7d67b3paeba6abfm5ed26ec3"});</script> <script>window.ShopifyAnalytics = window.ShopifyAnalytics || {}; window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {}; window.ShopifyAnalytics.meta.currency = 'CAD'; var meta = {"page":{"pageType":"page","resourceType":"page","resourceId":81350688790}}; for (var attr in meta) { window.ShopifyAnalytics.meta[attr] = meta[attr]; }</script> <script>window.ShopifyAnalytics.merchantGoogleAnalytics = function() { }; </script> <script class="analytics">(function () { var customDocumentWrite = function(content) { var jquery = null; if (window.jQuery) { jquery = window.jQuery; } else if (window.Checkout && window.Checkout.$) { jquery = window.Checkout.$; } if (jquery) { jquery('body').append(content); } }; var hasLoggedConversion = function(token) { if (token) { return document.cookie.indexOf('loggedConversion=' + token) !== -1; } return false; } var setCookieIfConversion = function(token) { if (token) { var twoMonthsFromNow = new Date(Date.now()); twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2); document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow; } } var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || []; if (trekkie.integrations) { return; } trekkie.methods = [ 'identify', 'page', 'ready', 'track', 'trackForm', 'trackLink' ]; trekkie.factory = function(method) { return function() { var args = Array.prototype.slice.call(arguments); args.unshift(method); trekkie.push(args); return trekkie; }; }; for (var i = 0; i < trekkie.methods.length; i++) { var key = trekkie.methods[i]; trekkie[key] = trekkie.factory(key); } trekkie.load = function(config) { trekkie.config = config || {}; trekkie.config.initialDocumentCookie = document.cookie; var first = document.getElementsByTagName('script')[0]; var script = document.createElement('script'); script.type = 'text/javascript'; script.onerror = function(e) { var scriptFallback = document.createElement('script'); scriptFallback.type = 'text/javascript'; scriptFallback.onerror = function(error) { var Monorail = { produce: function produce(monorailDomain, schemaId, payload) { var currentMs = new Date().getTime(); var event = { schema_id: schemaId, payload: payload, metadata: { event_created_at_ms: currentMs, event_sent_at_ms: currentMs } }; return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event)); }, sendRequest: function sendRequest(endpointUrl, payload) { // Try the sendBeacon API if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) { var blobData = new window.Blob([payload], { type: 'text/plain' }); if (window.navigator.sendBeacon(endpointUrl, blobData)) { return true; } // sendBeacon was not successful } // XHR beacon var xhr = new XMLHttpRequest(); try { xhr.open('POST', endpointUrl); xhr.setRequestHeader('Content-Type', 'text/plain'); xhr.send(payload); } catch (e) { console.log(e); } return false; }, isIos12: function isIos12() { return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1; } }; Monorail.produce('monorail-edge.shopifysvc.com', 'trekkie_storefront_load_errors/1.1', {shop_id: 7877722134, theme_id: 126306189334, app_name: "storefront", context_url: window.location.href, source_url: "//devdegree.ca/cdn/s/trekkie.storefront.6790784e88524d17bc2df67c3d0c5047adb2d676.min.js"}); }; scriptFallback.async = true; scriptFallback.src = '//devdegree.ca/cdn/s/trekkie.storefront.6790784e88524d17bc2df67c3d0c5047adb2d676.min.js'; first.parentNode.insertBefore(scriptFallback, first); }; script.async = true; script.src = '//devdegree.ca/cdn/s/trekkie.storefront.6790784e88524d17bc2df67c3d0c5047adb2d676.min.js'; first.parentNode.insertBefore(script, first); }; trekkie.load( {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":7877722134,"isMerchantRequest":null,"themeId":126306189334,"themeCityHash":"11388747146860252273","contentLanguage":"en","currency":"CAD"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain"},"Session Attribution":{},"S2S":{"facebookCapiEnabled":false,"source":"trekkie-storefront-renderer","apiClientId":580111}} ); var loaded = false; trekkie.ready(function() { if (loaded) return; loaded = true; window.ShopifyAnalytics.lib = window.trekkie; var originalDocumentWrite = document.write; document.write = customDocumentWrite; try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {}; document.write = originalDocumentWrite; window.ShopifyAnalytics.lib.page(null,{"pageType":"page","resourceType":"page","resourceId":81350688790,"shopifyEmitted":true}); var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/) var token = match? match[1]: undefined; if (!hasLoggedConversion(token)) { setCookieIfConversion(token); } }); var eventsListenerScript = document.createElement('script'); eventsListenerScript.async = true; eventsListenerScript.src = "//devdegree.ca/cdn/shopifycloud/shopify/assets/shop_events_listener-bbbf3223c550be0dd72914a2fa06aaa88eb8943e96f9ea31fb63e7e27e0f97f4.js"; document.getElementsByTagName('head')[0].appendChild(eventsListenerScript); })();</script> <script defer src="https://devdegree.ca/cdn/shopifycloud/perf-kit/shopify-perf-kit-1.4.1.min.js" data-application="storefront-renderer" data-shop-id="7877722134" data-render-region="gcp-asia-southeast1" data-page-type="page" data-theme-instance-id="126306189334" data-monorail-region="shop_domain" data-resource-timing-sampling-rate="10" ></script> </head> <body id="program" class="template-page" > <div id="shopify-section-newsletter-popup" class="shopify-section popout"> <div id="popOuts" data-show-exit="false" data-show-entrance="false" data-entrance-delay="10"> <div id="newsLetter" class="innerWrapper"> <a class="closePopOut closeIcon" href="#"> <svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 224.512 224.512" style="enable-background:new 0 0 224.512 224.512;" xml:space="preserve"> <g> <polygon points="224.507,6.997 217.521,0 112.256,105.258 6.998,0 0.005,6.997 105.263,112.254 0.005,217.512 6.998,224.512 112.256,119.24 217.521,224.512 224.507,217.512 119.249,112.254 "/> </g> </svg> </a> <div class="closePopOut fullBackClose"></div> <div class="animateIn gridJustify"> <div class="half flexItem"> <div class="formWrap gridJustify centerColumns"> <div class="innerFlex"> <div class="rte"> </div> <form method="post" action="/contact#contact_form" id="contact_form" accept-charset="UTF-8" class="contact-form"><input type="hidden" name="form_type" value="customer" /><input type="hidden" name="utf8" value="✓" /> <input type="hidden" name="contact[tags]" value="newsletter"> <input type="hidden" name="contact[accepts_marketing]" value="true"> <label for="Email">email@example.com</label> <input type="email" value="" placeholder="email@example.com" type="email" name="contact[email]" id="Email" class="input-group-field newsletter__input" autocorrect="off" autocapitalize="off" required> <input name="subscribe" type="submit" class="button formSend" value="Subscribe"/> <a class="closePop" href="#">No Thanks</a> </form> </div> </div> </div> </div> </div> </div> </div> <div id="shopify-section-header" class="shopify-section header"> <!-- SECRET KEY 1: SHOPIFY COMMERCE --> <header class=" sticky " role="banner"> <div class="grid header-grid flexGrid gridJustify"> <div class="leftMenu flexItem oneFifth keepWidth gridAlignLeft"> <a class="logo" href="/" itemscope itemtype="http://schema.org/Organization"> <img class="" src="//devdegree.ca/cdn/shop/files/Logo_Blue-01_300x.png?v=1613159812" srcset="//devdegree.ca/cdn/shop/files/Logo_Blue-01_300x.png?v=1613159812 1x, //devdegree.ca/cdn/shop/files/Logo_Blue-01_300x@2x.png?v=1613159812 2x" alt="Dev Degree" itemprop="logo"> </a> <style> header .logo { max-width: 300px; width : 300px!important; } header .logo img { max-height: 69px; } @media (max-width: 736px) { header .logo img { max-height: 49px; } } </style> <a href="#" class="burgerNav" aria-controls="NavDrawer" aria-expanded="false"> <span></span> <span></span> <span></span> </a> <nav class="burger-menu nav-type--regular"> <ul> <li> <a href="/pages/program" class="burger-menu-link burger-dropdown-link"> About </a> <ul class="burger-dropdown-list"> <li class="burger-dropdown-item"> <a href="/pages/program" class="burger-menu-link "> Program </a> </li> <li class="burger-dropdown-item"> <a href="/pages/partners" class="burger-menu-link "> Partners </a> </li> <li class="burger-dropdown-item"> <a href="/pages/team" class="burger-menu-link "> Team </a> </li> </ul> </li> <li> <a href="/pages/student-experience" class="burger-menu-link "> Student Experience </a> </li> <li> <a href="/pages/admissions-page" class="burger-menu-link "> Admissions </a> </li> <li> <a href="https://devdegree.ca/a/faq" class="burger-menu-link "> FAQ </a> </li> </ul> </nav> </div> <div class="flexItem threeFifth keepWidth alignCenter"> <nav class="menu"> <div class="grid"> <ul class="flexGrid gridJustify centerColumns menu-list"> <li class="flexItem dropdown-item" aria-haspopup="true"> <a href="/pages/program" class="menu-link"> About </a> <ul class="dropdown-list dropdown-list-1 "> <li class="dropdown-item"> <a href="/pages/program" class="dropdown-link"> Program </a> </li> <li class="dropdown-item"> <a href="/pages/partners" class="dropdown-link"> Partners </a> </li> <li class="dropdown-item"> <a href="/pages/team" class="dropdown-link"> Team </a> </li> </ul> </li> <li class="flexItem dropdown-item" > <a href="/pages/student-experience" class="menu-link"> Student Experience </a> </li> <li class="flexItem dropdown-item" > <a href="/pages/admissions-page" class="menu-link"> Admissions </a> </li> <li class="flexItem dropdown-item" > <a href="https://devdegree.ca/a/faq" class="menu-link"> FAQ </a> </li> </ul> </div> </nav> </div> <div class="rightMenu flexItem oneFifth keepWidth alignRight"> <div class="header-cart-wrapper"> <div class="header-cart-wrapper-inner"> <a href="https://candidate.shopify.com/form/sign-up-for-notifications-dev-degree" class="button re-btn" onClick ="ga('send', 'event', 'Application Link', 'Clicked Application Link', 'Header');" > Stay Informed! </a> </div> </div> <style> .re-btn { background-color: #ffd037 ; color: #17234f; border: 0px; } .re-btn:hover { background-color: #eabd2a ; color: #17234f; } </style> </div> </div> </header> <div class="announcement-bar" onClick= "ga('send','event','Application Link','Clicked Application Link', 'Announcement Bar')" style=" color: #17234f ; background-color: #fe9c8e; border-bottom: 5px solid #FFD737 "> APPLICATIONS FOR DEV DEGREE 2025 ARE NOW CLOSED! </div> <style> #shopify-section-header { margin-bottom: 130px; background-color: #F3F9F4; } #mainWrap > .slideshow:first-child, #shopify-section-product-alternate-template { margin-top: -170px; } #mainWrap > .slideshow:first-child .heroOverlay { padding-top: 160px; } @media (max-width: 736px) { #shopify-section-header { margin-top: 130px; } #mainWrap > .slideshow:first-child, #shopify-section-product-alternate-template { margin-top: -130px; } #mainWrap > .slideshow:first-child .heroOverlay { padding-top: 130px; } } @media (max-width: 568px) { #shopify-section-header { margin-top: 80px; } #mainWrap > .slideshow:first-child, #shopify-section-product-alternate-template { margin-top: -80px; } #mainWrap > .slideshow:first-child .heroOverlay { padding-top: 80px; } } .burgerNav { display: none !important; } .header-cart { top: calc(100% - 10px); } @media screen and (min-width: 737px) { .fullPageSection { height: calc(100vh - 120px); } .fullPageSection.align-image-left.fixed-image .bgImage, .fullPageSection.align-image-right.fixed-image .bgImage { height: calc(100% - 120px); } } </style> </div> <main id="mainWrap"> <div id="shopify-section-custom-fields-pages" class="shopify-section"><div class="custom-fields-section"> <div class="custom-fields-section__pages"> <div class="custom-fields-section__item custom-fields-section__item--cf_w_tbgi custom-fields-section__item--cf_w_tbgi--full_width_hero" > <div class="cf-widget-full-width-hero cf-widget__text-bg-image"> <div class="cf-widget-items-wrapper"> <div class="cf-widget-item cf-height--" style="background-image:url('<div>cf-image error:No image provided</div>')"> <div class="inner"> <div class="inner-padding"> <div class="cf-widget-field cf-widget-field__title cf-widget-field--text"> Program </div> <div class="cf-widget-field cf-widget-field__body cf-widget-field--html"> <p class="text-align-justify">We launched Dev Degree in 2016 with a mission to shake up the traditional experience for computer science education, by combining hands-on experience, self-paced learning, and theoretical foundations.</p> <p class="text-align-justify"><img alt="program diagram" data-entity-type="" data-entity-uuid="" src="https://cdn.shopify.com/s/files/1/0078/7772/2134/files/program.png?v=1629570208" /></p> </div> </div> </div> </div> <style> .cf-widget__text-bg-image { background-color: #17234F; color: #fff; } .cf-widget__text-bg-image h2 { color: #fff; } .cf-widget__text-bg-image a { color: ; } </style> </div> </div> </div> <div class="custom-fields-section__item custom-fields-section__item--cf_f_fcj custom-fields-section__item--cf_f_fcj--calendar" > </div> <div class="custom-fields-section__item custom-fields-section__item--cf_f_fcj custom-fields-section__item--cf_f_fcj--plain_html" > </div> <div class="custom-fields-section__item custom-fields-section__item--cf_f_fcj custom-fields-section__item--cf_f_fcj--test" > <div class="indexText grid re-border index-0"> <div class="sectionWrap"> <div class="custom-field custom-field__test custom-field__type--field-collection-json"> <div class="custom-field--value"> <div class="row"> <div class="col-xs-12 col-sm"> <div class="fc-field field__column field-type--html-repeater"> <div class="custom-field--value"> <div class="row"> <div class="col-xs-12 col-sm"> <div class="repeater-item repeater-item--html re-vertalign-daddy "> <h2>What does hands-on experience mean?</h2> <p>You'll learn, practice, and work with production software and tools and the innovative teams who build it. We don't believe in bogging you down with busy work or low-value side projects. Instead, we want to help you learn, experiment, and grow your development skills, enabling you to contribute to our product and impact hundreds of millions of people. Pretty cool, right?</p> <p>You'll work throughout the entire program and have opportunities to grow personally through your social activities at Shopify and education partners.</p> </div> </div> <div class="col-xs-12 col-sm"> <div class="repeater-item repeater-item--html re-vertalign-daddy "> <p data-entity-type="" data-entity-uuid="" style="text-align: center;"><span><img alt="What does it mean image" data-entity-type="" data-entity-uuid="" src="https://cdn.shopify.com/s/files/1/0078/7772/2134/files/whatdoesitmean.png?v=1629566001" /><span title="Click and drag to resize">​</span></span></p> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> <div class="custom-fields-section__item custom-fields-section__item--cf_f_fcj custom-fields-section__item--cf_f_fcj--plaint_html_2" > <div class="indexText grid"> <div class="sectionWrap"> <div class="custom-field custom-field__plaint-html-2 custom-field__type--html-repeater"> <div class="custom-field--value"> <div class="fc-repeater-field-item fc-repeater-field-item--0 field__plaint-html-2 field-type--html"> <div class="custom-field--value"> <div class="row"> <div class="col-xs-12 col-sm-3 re-border"> <div class="re-btmholder"> <div class="re-bottom" style="height: 300px"><img alt="Chat icon" data-entity-type="" data-entity-uuid="" src="https://cdn.shopify.com/s/files/1/0078/7772/2134/files/Frame.png?v=1629567035" /> <p>“We'll teach you current, sought-after software technologies and give you four years of practice building realistic, impactful products.”</p> </div> </div> </div> <div class="col-xs-12 col-sm-offset-1 col-sm-8 re-border"> <h2>Why Dev Degree instead of another computer science program?</h2> <p>Obtaining a degree in computer science is a typical path to becoming a software developer. However, it’s not uncommon to hear that some of the best developers have opted for non-traditional routes or didn’t finish a degree they started. Others follow a formal education route, typically for 4-5 years, and often find it tough to connect the theory they learned in school to their development jobs. That doesn’t mean degrees don’t matter. Many developers value the depth and breadth of formal education that degrees can provide. Degrees are worth the effort - but can be delivered more efficiently. Enter Dev Degree!</p> <p>We'll teach you current, sought-after software technologies and give you opportunities to practice building realistic, impactful products. Experience matters, and being able to apply what you learn quickly on real-world products is key to mastering skills. Our team will provide feedback and support during the Developer Skills Training Path, we're here to help you on your journey!</p> <p>&nbsp;</p> <p>Dev Degree provides the opportunity to fast-track learning and tie theory to real-life product development practice.</p> </div> </div> </div> </div> <div class="fc-repeater-field-item fc-repeater-field-item--1 field__plaint-html-2 field-type--html"> <div class="custom-field--value"> <div class="re-padding"> <p class="text-align-justify"><img alt="hat" data-entity-type="" data-entity-uuid="" src="https://cdn.shopify.com/s/files/1/0078/7772/2134/files/hat.png?v=1629569040" /></p> <h2 class="text-align-justify">Dev Degree Timeline</h2> </div> <table class="tg"> <tbody> <tr> <th class="tg-hnh0" style="width: 170px;"><span style="font-weight: bold;">YEAR 1</span></th> <th class="tg-hnh0" colspan="3"><span style="font-weight: bold;">YEAR 2+ </span></th> </tr> <tr> <td class="tg-hnh0 text-align-center" style="width: 170px;">Developer skills<br /> training at Shopify:&nbsp;<br /> Ruby, Rails, JavaScript,<br /> React, databases, and more!</td> <td class="tg-hnh0 text-align-center" colspan="3">Rotational placements on development teams every 8/12 months. Resulting in 3,800+ hours of hands-on experience across different high-demand development disciplines and products.</td> </tr> <tr> <td class="tg-q6au text-align-center" colspan="4">Attend classes at one of our partner university programs to complete your degree!</td> </tr> </tbody> </table> </div> </div> </div> </div> </div> </div> </div> <div class="custom-fields-section__item custom-fields-section__item--cf_f_fcj custom-fields-section__item--cf_f_fcj--image_column_with_2_boxes_" > <div class="indexText grid"> <div class="sectionWrap"> <div class="custom-field re-box2 custom-field__image-column-with-2-boxes- custom-field__type--field-collection-json"> <div class="custom-field--value"> <div class="row"> <div class="col-xs-12 col-sm"> <div class="fullheight re-bgimagestrech" style="background-image: url(https://cdn.shopify.com/s/files/1/0078/7772/2134/t/10/assets/511d04daa8f9--manatdesk-72bd7f.jpg?v=1629569734); background-size: cover;"></div> </div> <div class="col-xs-12 col-sm"> <div class="fullheight"> <div class="repeater-item repeater-item--html re-border"> <h2>Why Dev Degree instead of a traditional work-integrated learning program?</h2> <p>There are plenty of work-integrated learning models. In Canada, you'll hear them referred to them as "co-op" programs. There are some important differences between the Dev Degree program structure and these traditional programs.</p> </div> </div> </div> </div> </div> </div> </div> </div> </div> <div class="custom-fields-section__item custom-fields-section__item--cf_f_fcj custom-fields-section__item--cf_f_fcj--full_span_border_box_2" > <div class="indexText grid re-border"> <div class="sectionWrap"> <div class="custom-field custom-field__test custom-field__type--field-collection-json"> <div class="custom-field--value"> <div class="row"> <div class="col-xs-12 col-sm"> <div class="fc-field field__column field-type--html-repeater"> <div class="custom-field--value"> <div class="row"> <div class="col-xs-12 col-sm"> <div class="repeater-item repeater-item--html"> <h2>Dev Degree program structure</h2> <p>Dev Degree students work on development teams at Shopify in parallel with their university studies, instead of alternating terms in the classroom and the workplace like a traditional work-integrated learning program.</p> <p>Students are granted academic credits for their work at Shopify and graduate with an accredited degree in computer science in only three to four years with 3800+ hours of work experience. Working closely with our university partners, students take three university courses on campus each term and spend ~25 hours each week at Shopify.</p> <p>On top of this, we will pay your tuition and give you a competitive salary and vacation. That's over $160,000 (CDN) in total financial support.</p> </div> </div> <div class="col-xs-12 col-sm"> <div class="repeater-item repeater-item--html"> <p><img alt="Chat bubbles" data-entity-type="" data-entity-uuid="" src="https://cdn.shopify.com/s/files/1/0078/7772/2134/files/chats.png?v=1629569903" /></p> <p><strong>Shopify-delivered developer skills</strong></p> <p>The Developer Skills Training Path is a set of Shopify-delivered courses that you take in your first year at Shopify. We design the courses to prepare you for your team placements. The training path takes eight months to complete and gives you a strong foundation.</p> <p><img alt="Chat bubbles" data-entity-type="" data-entity-uuid="" src="https://cdn.shopify.com/s/files/1/0078/7772/2134/files/chats.png?v=1629569903" /></p> <p><strong>Shopify work placements </strong></p> <p>After completing your training path, you will gain hands-on developer experience by joining a team at Shopify. Your Placement Specialist curates your placement, and you’ll be assigned a dedicated mentor for the duration of each placement.</p> <p>Each placement provides a different experience than the last to ensure you are gaining new perspectives and opportunities to work with new people. Throughout your three to four years in Dev Degree, you will have four team placements with four different mentors.<br /> <br /> &nbsp;</p> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> <div class="custom-fields-section__item custom-fields-section__item--cf_f_fcj custom-fields-section__item--cf_f_fcj--full_span_border_box_3" > <div class="indexText grid re-border"> <div class="sectionWrap"> <div class="custom-field custom-field__test custom-field__type--field-collection-json"> <div class="custom-field--value"> <div class="row"> <div class="fc-item fc-index--0"> <div class="col-xs-12 col-sm"> <div class="fc-field field__header__title field-type--html"> <div class="custom-field--value"> <h2>Carleton University - <a class="pink-underline" href="https://carleton.ca/scs/future-students/bcs-internship/">Bachelor of Computer Science (Honours)</a></h2> <h4>Important to Note:</h4> <p>- You will need to live in Ottawa and commute to classes on Carleton University’s campus (the university is not remote).<br /> -&nbsp;If you’re an international student in Canada, this is the only university partner you can attend.<br /> -&nbsp;To attend this university you need to be a Canadian citizen, Canadian resident, or you will need to obtain a Study permit. For more information, please contact the <a class="pink-underline" href="https://carleton.ca/isso/">Carleton University International Student Services Office.</a></p> <h4><strong>Program Length: </strong>a 4 year degree<br /> <br /> <strong>What you’ll do:&nbsp;</strong></h4> <p><strong>-&nbsp;</strong>Your first year at Shopify will be on the Developer Skills Training Path, and then you’ll transition to work as a part-time intern on development teams.<br /> -&nbsp;You will have 4 placements on development teams at Shopify while attending university courses.</p> <hr /> <h2>York University -&nbsp;<a class="pink-underline" href="https://lassonde.yorku.ca/digital-technologies"> Bachelor of Applied Science, Digital Technologies</a></h2> <h4>Important to Note:</h4> <p>- This program is an accelerated work learning program, and is intended for people who want more hands-on work experience.<br /> - You will need to commute to York University’s Markham campus during learning block periods (the university is not remote).<br /> - This program is not available for students on a Study permit.</p> <h4>Program Length: a 4 year degree</h4> <h4>What you’ll do:&nbsp;</h4> <p>- Learning at York happens in one-week learning blocks twice a semester.<br /> - Your first term (September to December) will be at Shopify on the Developer Skills Training Path. In January, you’ll transition to work as a full-time intern on development teams.<br /> - You will have 5 placements on development teams at Shopify while attending university courses.</p> </div> </div> </div> </div> </div> </div> </div> </div></div> </div> <div class="custom-fields-section__item custom-fields-section__item--cf_f_fcj custom-fields-section__item--cf_f_fcj--image_column_with_2_boxes" > <div class="indexText grid"> <div class="sectionWrap"> <div class="custom-field re-box2 custom-field__image-column-with-2-boxes- custom-field__type--field-collection-json"> <div class="custom-field--value"> <div class="row"> </div> </div> </div> </div> </div> </div> <div class="custom-fields-section__item custom-fields-section__item--cf_f_html custom-fields-section__item--cf_f_html--quote-box" > </div> </div> </div> </div><script data-locksmith> var load = function () { Locksmith.initializeSession({silent: window.location.search === ""}); Locksmith.util.on('submit', 'locksmith-resource-form', function (event) { event.preventDefault(); var data = Locksmith.util.serializeForm(event.target); Locksmith.postResource(data, { spinner: false, container: 'locksmith-content' }); }); Locksmith.util.on('click', 'locksmith-manual-trigger', function (event) { event.preventDefault(); Locksmith.postResource({}, { spinner: true, container: document }); }); Locksmith.submitPasscode = function (passcode) { Locksmith.postResource( { passcode: passcode }, { spinner: false, container: 'locksmith-content' } ); }; }; if (typeof Locksmith !== 'undefined') { load(); } else { window.addEventListener('load', load); } </script> <div id="shopify-section-learn-more-cta" class="shopify-section"> <div class="learn-more-cta"> <div style=" max-width: 1000px; margin: 0 auto;"> <h2>Does this all sound interesting to you?</h2> <a href="https://candidate.shopify.com/form/sign-up-for-notifications-dev-degree" class="button primary " id="re-btn2" onClick="ga('send','event','Application Link','Clicked Application Link','Learn more CTA');"> Stay Informed!</a> </div> </div> <style> #re-btn2 { background-color: #ffd037 ; color: #17234f; border: 2px solid #FFD037; } #re-btn2:hover { background-color: #eabd2a ; color: #17234f; } #re-btn3 { background-color: #17234f ; color: #fafafa; border: 2px solid #fff; } #re-btn3:hover { background-color: #eabd2a ; color: #17234f; } </style> </div> <div id="shopify-section-footer" class="shopify-section"> <!-- SECRET KEY 2: TOBI LUTKE --> <footer class=""> <div class="footerLogo grid flexGrid gridJustify"> <a class="flexItem" href="/"> <img src="//devdegree.ca/cdn/shop/files/shopify_logo_black_0f6eb8b4-934d-4ab2-8810-adaf3c0a34aa_120x.png?v=1613159812" srcset="//devdegree.ca/cdn/shop/files/shopify_logo_black_0f6eb8b4-934d-4ab2-8810-adaf3c0a34aa_120x.png?v=1613159812 1x, //devdegree.ca/cdn/shop/files/shopify_logo_black_0f6eb8b4-934d-4ab2-8810-adaf3c0a34aa_120x@2x.png?v=1613159812 2x" alt="Dev Degree" itemprop="logo"> </a> </div> <div class="footerMain grid flexGrid gridAlignTopLeft footerMenuCount-1 "> <div class="footerAbout flexItem"> <div><p><strong>Questions? </strong>Email us: <a href="mailto:info@devdegree.ca" title="mailto:info@devdegree.ca">info@devdegree.ca</a></p></div> </div> <div class="footerMenu flexItem"> <ul> <li> <a href="/pages/program" title="">About</a> </li> <li> <a href="/pages/partners" title="">Our partners</a> </li> <li> <a href="/pages/team" title="">Our team</a> </li> <li> <a href="/pages/admissions-page" title="">Admissions</a> </li> <li> <a href="/pages/student-experience" title="">Student experience</a> </li> <li> <a href="https://devdegree.ca/a/faq" title="">FAQs</a> </li> <li> <a href="/pages/request-for-information" title="">Stay Informed</a> </li> <li> <a href="https://shopify.com" title="" rel="nofollow">Shopify</a> </li> </ul> </div> </div> </footer> </div> </main> <script src="//devdegree.ca/cdn/shopifycloud/shopify/assets/themes_support/api.jquery-b0af070cfe3f5cf7c92f9e2a5da2665ee07ed2aad63bb408f8d6672f894a5996.js" type="text/javascript"></script> <script src="//devdegree.ca/cdn/shop/t/12/assets/isotope.js?v=174299703730515077301630434834" type="text/javascript"></script> <script src="//devdegree.ca/cdn/shop/t/12/assets/jquery.cookie.js?v=101081071833767112781630434854" type="text/javascript"></script> <script src="//devdegree.ca/cdn/shop/t/12/assets/imagesloaded.pkgd.min.js?v=58209854333173575541630434833" type="text/javascript"></script> <script src="//devdegree.ca/cdn/shop/t/12/assets/slick.js?v=132507426157923434171630434843" type="text/javascript"></script> <script src="//devdegree.ca/cdn/shop/t/12/assets/fastclick.min.js?v=29723458539410922371630434830" type="text/javascript"></script> <script src="//devdegree.ca/cdn/shop/t/12/assets/jquery.hoverIntent.minified.js?v=56060696947679488261630434835" type="text/javascript"></script> <script src="//devdegree.ca/cdn/shop/t/12/assets/lodash.custom.min.js?v=184270817579077332941630434837" type="text/javascript"></script> <script src="//devdegree.ca/cdn/shop/t/12/assets/jquery.fitvids.js?v=8044612188741632641630434835" type="text/javascript"></script> <script src="//devdegree.ca/cdn/shop/t/12/assets/eventemitter3.js?v=177499474776964453221630434829" type="text/javascript"></script> <script src="//devdegree.ca/cdn/shop/t/12/assets/timber.js?v=4925616801495709071630434854" type="text/javascript"></script> <script src="//devdegree.ca/cdn/shop/t/12/assets/app.js?v=86412674614598846751630434854" type="text/javascript"></script> <style> </style> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10