Machine Learning Engineer – Computer Vision

IVEX • Heverlee, Vlaams Brabant • Software Development • 1mo ago

Save this role or tell us whether you want more jobs like it.

:root body { background: var(--token-08b7a3eb-f427-41df-8882-4b5c2edb5013, rgb(255, 255, 255)); }html body { background: rgb(255, 255, 255); }IVEX Raises Series A funding: read moreSolutionsCasesAboutNewsCareersContact usIVEX Raises Series A funding: read moreSolutionsCasesAboutNewsCareersContact usEngineeringMachine Learning Engineer – Computer VisionLocation: Leuven, BelgiumAt IVEX, we’re shaping the future of Automated Driving and Advanced Driver-Assistance Systems (ADAS). We’re looking for a Machine Learning Engineer with a passion for computer vision to help us develop and optimize cutting-edge AI models that interpret vehicle camera data and make driving safer and smarter.In this role you willDesign, develop, and optimize machine learning models for vision-based vehicle perception tasks.Build and maintain efficient data processing and training pipelines for large-scale image datasets.Improve and automate data labeling workflows to enhance annotation quality and efficiency.Continuously evaluate, benchmark, and refine model performance, ensuring robustness and scalability for real-world deployment.What we are looking forBachelor’s degree or higher in Computer Science, Engineering, or a related technical field (or equivalent practical experience).Strong programming skills in Python, and solid experience with Linux and Git.Hands-on experience with Docker for development and deployment.Proven experience with OpenCV and PyTorch.Experience contributing to at least two computer vision / deep learning projects (academic or professional).Excellent communication skills in English, both written and verbal.Nice to haveExperience working with AWS or other cloud platforms.At IVEX, we’re on a mission to make ADAS and autonomous driving systems safer and more trustworthy. You’ll join a team of engineers and researchers building the next generation of safety intelligence for connected and automated vehicles. We offerOpportunities for professional growth and skill development in a rapidly evolving fieldA competitive salary and benefits packageIf you’re motivated by innovation and eager to push the boundaries of computer vision in mobility, we’d love to hear from you.Send us your CV and surprise us with your motivation. By sending your CV, you agree to our GDPR.ApplySolutionsNCAP evaluatorOn-road SLIF evaluationData analytics platformReference sensor kitCompanyAbout usCareersMediaCasesNewsEventsAddressKapeldreef, 603001 - HeverleeBelgiumMissionWe founded IVEX to provide the best testing and validation tools for ADAS/AD engineers.IVEX Data Privacy Notice | IVEX Data Privacy Policy | IVEX Information Security Policy | IVEX ISO 27001 Certificate | 2026 IVEX NV. © All rights reservedSolutionsNCAP evaluatorOn-road SLIF evaluationData analytics platformReference sensor kitCompanyAbout usCareersMediaCasesNewsEventsAddressKapeldreef, 603001 - HeverleeBelgiumMissionWe founded IVEX to provide the best testing and validation tools for ADAS/AD engineers.IVEX Data Privacy Notice | IVEX Data Privacy Policy | IVEX Information Security Policy | IVEX ISO 27001 Certificate | 2026 IVEX NV. © All rights reservedSolutionsNCAP evaluatorOn-road SLIF evaluationData analytics platformReference sensor kitCompanyAbout usCareersMediaCasesNewsEventsAddressKapeldreef, 603001 - HeverleeBelgiumMissionWe founded IVEX to provide the best testing and validation tools for ADAS/AD engineers.IVEX Data Privacy Notice | IVEX Data Privacy Policy | IVEX Information Security Policy | IVEX ISO 27001 Certificate | 2026 IVEX NV. © All rights reserved(()=>{function u(){function n(t,e,i){let r=document.createElement("a");r.href=t,r.target=i,r.rel=e,document.body.appendChild(r),r.click(),r.remove()}function o(t){if(this.dataset.hydrated){this.removeEventListener("click",o);return}t.preventDefault(),t.stopPropagation();let e=this.getAttribute("href");if(!e)return;if(/Mac|iPod|iPhone|iPad/u.test(navigator.userAgent)?t.metaKey:t.ctrlKey)return n(e,"","_blank");let r=this.getAttribute("rel")??"",c=this.getAttribute("target")??"";n(e,r,c)}function a(t){if(this.dataset.hydrated){this.removeEventListener("auxclick",o);return}t.preventDefault(),t.stopPropagation();let e=this.getAttribute("href");e&&n(e,"","_blank")}function s(t){if(this.dataset.hydrated){this.removeEventListener("keydown",s);return}if(t.key!=="Enter")return;t.preventDefault(),t.stopPropagation();let e=this.getAttribute("href");if(!e)return;let i=this.getAttribute("rel")??"",r=this.getAttribute("target")??"";n(e,i,r)}document.querySelectorAll("[data-nested-link]").forEach(t=>{t instanceof HTMLElement&&(t.addEventListener("click",o),t.addEventListener("auxclick",a),t.addEventListener("keydown",s))})}return u})()() !function(){var w="framer_variant";function u(a,r){let e=r.indexOf("#"),t=e===-1?r:r.substring(0,e),o=e===-1?"":r.substring(e),n=t.indexOf("?"),h=n===-1?t:t.substring(0,n),d=n===-1?"":t.substring(n),s=new URLSearchParams(d),m=new URLSearchParams(a);for(let[i,l]of m)s.has(i)||i!==w&&s.append(i,l);let c=s.toString();return c===""?t+o:h+"?"+c+o}var g='div#main a[href^="#"],div#main a[href^="/"],div#main a[href^="."]',f="div#main a[data-framer-preserve-params]",S=document.currentScript?.hasAttribute("data-preserve-internal-params");if(window.location.search&&!navigator.webdriver&&!/bot|-google|google-|yandex|ia_archiver|crawl|spider/iu.test(navigator.userAgent)){let a=document.querySelectorAll(S?`${g},${f}`:f);for(let r of a){let e=u(window.location.search,r.href);r.setAttribute("href",e)}} }() var animator=(()=>{var L=(e,r,t)=>t>r?r:t{};function _(e){let r;return()=>(r===void 0&&(r=e()),r)}var Q=e=>e;var D=e=>e*1e3,O=e=>e/1e3;var J=e=>Array.isArray(e)&&typeof e[0]=="number";var $=(e,r,t=10)=>{let o="",s=Math.max(Math.round(r/t),2);for(let i=0;i=2e4?1/0:r}function de(e,r=100,t){let o=t({...e,keyframes:[0,r]}),s=Math.min(j(o),2e4);return{type:"keyframes",ease:i=>o.next(s*i).value/r,duration:O(s)}}var d={stiffness:100,damping:10,mass:1,velocity:0,duration:800,bounce:.3,visualDuration:.3,restSpeed:{granular:.01,default:2},restDelta:{granular:.005,default:.5},minDuration:.01,maxDuration:10,minDamping:.05,maxDamping:1};function te(e,r){return e*Math.sqrt(1-r*r)}var ke=12;function Ie(e,r,t){let o=t;for(let s=1;s{let p=m*n,c=p*e,u=p-t,g=te(m,n),A=Math.exp(-c);return re-u/g*A},i=m=>{let c=m*n*e,u=c*t+t,g=Math.pow(n,2)*Math.pow(m,2)*e,A=Math.exp(-c),x=te(Math.pow(m,2),n);return(-s(m)+re>0?-1:1)*((u-g)*A)/x}):(s=m=>{let p=Math.exp(-m*e),c=(m-t)*e+1;return-re+p*c},i=m=>{let p=Math.exp(-m*e),c=(t-m)*(e*e);return p*c});let f=5/e,a=Ie(s,i,f);if(e=D(e),isNaN(a))return{stiffness:d.stiffness,damping:d.damping,duration:e};{let m=Math.pow(a,2)*o;return{stiffness:m,damping:n*2*Math.sqrt(o*m),duration:e}}}var Ke=["duration","bounce"],Ge=["stiffness","damping","mass"];function ge(e,r){return r.some(t=>e[t]!==void 0)}function Le(e){let r={velocity:d.velocity,stiffness:d.stiffness,damping:d.damping,mass:d.mass,isResolvedFromDuration:!1,...e};if(!ge(e,Ge)&&ge(e,Ke))if(r.velocity=0,e.visualDuration){let t=e.visualDuration,o=2*Math.PI/(t*1.2),s=o*o,i=2*L(.05,1,1-(e.bounce||0))*Math.sqrt(s);r={...r,mass:d.mass,stiffness:s,damping:i}}else{let t=Be({...e,velocity:0});r={...r,...t,mass:d.mass},r.isResolvedFromDuration=!0}return r}function E(e=d.visualDuration,r=d.bounce){let t=typeof e!="object"?{visualDuration:e,keyframes:[0,1],bounce:r}:e,{restSpeed:o,restDelta:s}=t,i=t.keyframes[0],n=t.keyframes[t.keyframes.length-1],f={done:!1,value:i},{stiffness:a,damping:m,mass:p,duration:c,velocity:u,isResolvedFromDuration:g}=Le({...t,velocity:-O(t.velocity||0)}),A=u||0,x=m/(2*Math.sqrt(a*p)),h=n-i,y=O(Math.sqrt(a/p)),F=Math.abs(h)<5;o||(o=F?d.restSpeed.granular:d.restSpeed.default),s||(s=F?d.restDelta.granular:d.restDelta.default);let w,V,M,G,Y,H;if(x<1)M=te(y,x),G=(A+x*y*h)/M,w=l=>{let T=Math.exp(-x*y*l);return n-T*(G*Math.sin(M*l)+h*Math.cos(M*l))},Y=x*y*G+h*M,H=x*y*h-G*M,V=l=>Math.exp(-x*y*l)*(Y*Math.sin(M*l)+H*Math.cos(M*l));else if(x===1){w=T=>n-Math.exp(-y*T)*(h+(A+y*h)*T);let l=A+y*h;V=T=>Math.exp(-y*T)*(y*l*T-A)}else{let l=y*Math.sqrt(x*x-1);w=v=>{let k=Math.exp(-x*y*v),P=Math.min(l*v,300);return n-k*((A+x*y*h)*Math.sinh(P)+l*h*Math.cosh(P))/l};let T=(A+x*y*h)/l,S=x*y*T-h*l,N=x*y*h-T*l;V=v=>{let k=Math.exp(-x*y*v),P=Math.min(l*v,300);return k*(S*Math.sinh(P)+N*Math.cosh(P))}}let Z={calculatedDuration:g&&c||null,velocity:l=>D(V(l)),next:l=>{if(!g&&x<1){let S=Math.exp(-x*y*l),N=Math.sin(M*l),v=Math.cos(M*l),k=n-S*(G*N+h*v),P=D(S*(Y*N+H*v));return f.done=Math.abs(P)<=o&&Math.abs(n-k)<=s,f.value=f.done?n:k,f}let T=w(l);if(g)f.done=l>=c;else{let S=D(V(l));f.done=Math.abs(S)<=o&&Math.abs(n-T)<=s}return f.value=f.done?n:T,f},toString:()=>{let l=Math.min(j(Z),2e4),T=$(S=>Z.next(l*S).value,l,30);return l+"ms "+T},toTransition:()=>{}};return Z}E.applyToOptions=e=>{let r=de(e,100,E);return e.ease=r.ease,e.duration=D(r.duration),e.type="keyframes",e};var ye=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],oe=new Set([...ye,"pathRotation"]);var Ae={};function he(e,r){let t=_(e);return()=>Ae[r]??t()}var Te=he(()=>{try{document.createElement("div").animate({opacity:0},{easing:"linear(0, 1)"})}catch{return!1}return!0},"linearEasing");var C=([e,r,t,o])=>`cubic-bezier(${e}, ${r}, ${t}, ${o})`;var ne={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:C([0,.65,.55,1]),circOut:C([.55,0,1,.45]),backIn:C([.31,.01,.66,-.59]),backOut:C([.33,1.53,.69,.99])};function ie(e,r){if(e)return typeof e=="function"?Te()?$(e,r):"ease-out":J(e)?C(e):Array.isArray(e)?e.map(t=>ie(t,r)||ne.easeOut):ne[e]}function W(e,r,t,{delay:o=0,duration:s=300,repeat:i=0,repeatType:n="loop",ease:f="easeOut",times:a}={},m=void 0){let p={[r]:t};a&&(p.offset=a);let c=ie(f,s);Array.isArray(c)&&(p.easing=c);let u={delay:o,duration:s,easing:Array.isArray(c)?"linear":c,fill:"both",iterations:i+1,direction:n==="reverse"?"alternate":"normal"};return m&&(u.pseudoElement=m),e.animate(p,u)}function Me(e){return e.replace(/([A-Z])/g,r=>`-${r.toLowerCase()}`)}var q="framerAppearId",ae="data-"+Me(q);function se(e){return e.props[ae]}var b=new Map,I=new Map;var B=(e,r)=>{let t=oe.has(r)?"transform":r;return`${e}: ${t}`};function pe(e,r,t){let o=B(e,r),s=b.get(o);if(!s)return null;let{animation:i,startTime:n}=s;function f(){window.MotionCancelOptimisedAnimation?.(e,r,t)}return i.onfinish=f,n===null||window.MotionHandoffIsComplete?.(e)?(f(),null):n}var X,K,me=new Set;function Re(){me.forEach(e=>{e.animation.play(),e.animation.startTime=e.startTime}),me.clear()}function fe(e,r,t,o,s){if(window.MotionIsMounted)return;let i=e.dataset[q];if(!i)return;window.MotionHandoffAnimation=pe;let n=B(i,r);K||(K=W(e,r,[t[0],t[0]],{duration:1e4,ease:"linear"}),b.set(n,{animation:K,startTime:null}),window.MotionHandoffAnimation=pe,window.MotionHasOptimisedAnimation=(a,m)=>{if(!a)return!1;if(!m)return I.has(a);let p=B(a,m);return!!b.get(p)},window.MotionHandoffMarkAsComplete=a=>{I.has(a)&&I.set(a,!0)},window.MotionHandoffIsComplete=a=>I.get(a)===!0,window.MotionCancelOptimisedAnimation=(a,m,p,c)=>{let u=B(a,m),g=b.get(u);g&&(p&&c===void 0?p.postRender(()=>{p.postRender(()=>{g.animation.cancel()})}):g.animation.cancel(),p&&c?(me.add(g),p.render(Re)):(b.delete(u),b.size||(window.MotionCancelOptimisedAnimation=void 0)))},window.MotionCheckAppearSync=(a,m,p)=>{let c=se(a);if(!c)return;let u=window.MotionHasOptimisedAnimation?.(c,m),g=a.props.values?.[m];if(!u||!g)return;let A=p.on("change",x=>{g.get()!==x&&(window.MotionCancelOptimisedAnimation?.(c,m),A())});return A});let f=()=>{K.cancel();let a=W(e,r,t,o);X===void 0&&(X=performance.now()),a.startTime=X,b.set(n,{animation:a,startTime:X}),s&&s(a)};I.set(i,!1),K.ready?K.ready.then(f).catch(Q):f()}var ce=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],ze={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},Fe={translateX:"px",translateY:"px",translateZ:"px",x:"px",y:"px",z:"px",perspective:"px",transformPerspective:"px",rotate:"deg",rotateX:"deg",rotateY:"deg"};function be(e,r){let t=Fe[e];return!t||typeof r=="string"&&r.endsWith(t)?r:`${r}${t}`}function le(e){return ce.includes(e)}var Ne=(e,r)=>ce.indexOf(e)-ce.indexOf(r);function Ve({transform:e,transformKeys:r},t){let o={},s=!0,i="";r.sort(Ne);for(let n of r){let f=e[n],a=!0;typeof f=="number"?a=f===(n.startsWith("scale")?1:0):a=parseFloat(f)===0,a||(s=!1,i+=`${ze[n]||n}(${e[n]}) `),t&&(o[n]=e[n])}return i=i.trim(),t?i=t(o,i):s&&(i="none"),i}function ue(e,r){let t=new Set(Object.keys(e));for(let o in r)t.add(o);return Array.from(t)}function xe(e,r){let t=r-e.length;if(t<=0)return e;let o=new Array(t).fill(e[e.length-1]);return e.concat(o)}function R(e){return e*1e3}var De={duration:.001},z={opacity:1,scale:1,translateX:0,translateY:0,translateZ:0,x:0,y:0,z:0,rotate:0,rotateX:0,rotateY:0};function we(e,r,t,o,s){return t.delay&&(t.delay=R(t.delay)),t.type==="spring"?je(e,r,t,o,s):qe(e,r,t,o,s)}function $e(e,r,t){let o={},s=0,i=0;for(let n of ue(e,r)){let f=e[n]??z[n],a=r[n]??z[n];if(f===void 0||a===void 0||n!=="transformPerspective"&&f===a&&f===z[n])continue;n==="transformPerspective"&&(o[n]=[f,a]);let m=Ue(f,a,t),{duration:p,keyframes:c}=m;p===void 0||c===void 0||(p>s&&(s=p,i=c.length),o[n]=c)}return{keyframeValuesByProps:o,longestDuration:s,longestLength:i}}function je(e,r,t,o,s){let i={},{keyframeValuesByProps:n,longestDuration:f,longestLength:a}=$e(e,r,t);if(!a)return i;let m={ease:"linear",duration:f,delay:t.delay},p=s?De:m,c={};for(let[g,A]of Object.entries(n))le(g)?c[g]=xe(A,a):i[g]={keyframes:xe(A,a),options:g==="opacity"?m:p};let u=Oe(c,o);return u&&(i.transform={keyframes:u,options:p}),i}function We(e){let{type:r,duration:t,...o}=e;return{duration:R(t),...o}}function qe(e,r,t,o,s){let i=We(t);if(!i)return;let n={},f=s?De:i,a={};for(let p of ue(e,r)){let c=e[p]??z[p],u=r[p]??z[p];c===void 0||u===void 0||p!=="transformPerspective"&&c===u||(le(p)?a[p]=[c,u]:n[p]={keyframes:[c,u],options:p==="opacity"?i:f})}let m=Oe(a,o);return m&&(n.transform={keyframes:m,options:f}),n}var Xe=["duration","bounce"],Ye=["stiffness","damping","mass"];function Pe(e){return Ye.some(r=>r in e)?!1:Xe.some(r=>r in e)}function He(e,r,t){return Pe(t)?`${e}-${r}-${t.duration}-${t.bounce}`:`${e}-${r}-${t.damping}-${t.stiffness}-${t.mass}`}function Ze(e){return Pe(e)?{...e,duration:R(e.duration)}:e}var Se=new Map,ve=10;function Ue(e,r,t){let o=He(e,r,t),s=Se.get(o);if(s)return s;let i=[e,r],n=E({...Ze(t),keyframes:i}),f={done:!1,value:i[0]},a=[],m=0;for(;!f.done&&me.replace(r,o)}function Ce(e){return e?e.find(t=>t.mediaQuery?window.matchMedia(t.mediaQuery).matches===!0:!1)?.hash:void 0}var Dt={animateAppearEffects:Ee,getActiveVariantHash:Ce,spring:E,startOptimizedAppearAnimation:fe};return Dt})() {"j4fbbl":{"default":{"initial":{"opacity":0.001,"rotate":0,"rotateX":0,"rotateY":0,"scale":1,"skewX":0,"skewY":0,"x":0,"y":-50},"animate":{"opacity":1,"rotate":0,"rotateX":0,"rotateY":0,"scale":1,"skewX":0,"skewY":0,"transition":{"damping":60,"delay":0,"mass":1,"stiffness":350,"type":"spring"},"x":0,"y":0}}},"1gl5wag":{"default":{"initial":{"opacity":0.001,"rotate":0,"rotateX":0,"rotateY":0,"scale":1,"skewX":0,"skewY":0,"x":0,"y":0},"animate":{"opacity":1,"rotate":0,"rotateX":0,"rotateY":0,"scale":1,"skewX":0,"skewY":0,"transition":{"bounce":0,"delay":0.2,"duration":1.2,"type":"spring"},"x":0,"y":0}}},"12072ya":{"default":{"initial":{"opacity":0.001,"rotate":0,"rotateX":0,"rotateY":0,"scale":1,"skewX":0,"skewY":0,"x":0,"y":40},"animate":{"opacity":1,"rotate":0,"rotateX":0,"rotateY":0,"scale":1,"skewX":0,"skewY":0,"transition":{"damping":90,"delay":0,"mass":1,"stiffness":400,"type":"spring"},"x":0,"y":0}}}} [{"hash":"3xyle8","mediaQuery":"(min-width: 1720px)"},{"hash":"1hobmrz","mediaQuery":"(min-width: 1200px) and (max-width: 1719.98px)"},{"hash":"ju962k","mediaQuery":"(max-width: 1199.98px)"},{"hash":"140hx7j","mediaQuery":"(min-width: 1720px)"},{"hash":"rhgz67","mediaQuery":"(min-width: 1200px) and (max-width: 1719.98px)"},{"hash":"1wonv3x","mediaQuery":"(max-width: 1199.98px)"}](()=>{function c(i,o,s){if(window.__framer_disable_appear_effects_optimization__||typeof animator>"u")return;let e={detail:{bg:document.hidden}};requestAnimationFrame(()=>{let a="framer-appear-start";performance.mark(a,e),animator.animateAppearEffects(JSON.parse(window.__framer__appearAnimationsContent.text),(m,p,d)=>{let t=document.querySelector(m);if(t)for(let[r,f]of Object.entries(p))animator.startOptimizedAppearAnimation(t,r,f,d[r])},i,o,s&&window.matchMedia("(prefers-reduced-motion:reduce)").matches===!0,animator.getActiveVariantHash(JSON.parse(window.__framer__breakpoints.text)));let n="framer-appear-end";performance.mark(n,e),performance.measure("framer-appear",{start:a,end:n,detail:e.detail})})}return c})()("data-framer-appear-id","__Appear_Animation_Transform__",false) typeof document<"u"&&(window.process={...window.process,env:{...window.process?.env,NODE_ENV:"production"}}); [{"0":1,"1":16},["Map",2,3],"{\"from\":\"e17e4dd5-2eb1-47a3-8dc7-3753f2200a82\",\"select\":[{\"collection\":\"LN5XHCA5r\",\"name\":\"ilyDWhyTp\",\"type\":\"Identifier\"},{\"collection\":\"LN5XHCA5r\",\"name\":\"mlDRvpw6X\",\"type\":\"Identifier\"},{\"collection\":\"LN5XHCA5r\",\"name\":\"yMB5yGeAk\",\"type\":\"Identifier\"}],\"where\":{\"type\":\"BinaryOperation\",\"operator\":\"==\",\"left\":{\"type\":\"TypeCast\",\"value\":{\"type\":\"Identifier\",\"name\":\"WrtPp8sfD\",\"collection\":\"LN5XHCA5r\"},\"dataType\":\"STRING\"},\"right\":{\"type\":\"LiteralValue\",\"value\":\"machine-learning-engineer-computer-vision\"}}}default",[4],{"ilyDWhyTp":5,"mlDRvpw6X":8,"yMB5yGeAk":11},{"type":6,"value":7},"string","Machine Learning Engineer – Computer Vision",{"type":9,"value":10},"enum","ZXDne1z3A",{"type":12,"value":13},"richtext",{"collectionId":14,"pointer":15},"e17e4dd5-2eb1-47a3-8dc7-3753f2200a82default","[1,[4,\"p\",{\"dir\":\"auto\"},[4,\"strong\",null,[5,\"Location\"]],[5,\": Leuven, Belgium\"]],[4,\"p\",{\"dir\":\"auto\"},[5,\"At IVEX, we’re shaping the future of Automated Driving and Advanced Driver-Assistance Systems (ADAS). We’re looking for a Machine Learning Engineer with a passion for computer vision to help us develop and optimize cutting-edge AI models that interpret vehicle camera data and make driving safer and smarter.\"]],[4,\"p\",{\"dir\":\"auto\"},[4,\"strong\",null,[5,\"In this role you will\"]]],[4,\"ul\",{\"dir\":\"auto\"},[4,\"li\",{\"data-preset-tag\":\"p\"},[4,\"p\",null,[5,\"Design, develop, and optimize machine learning models for vision-based vehicle perception tasks.\"]]],[4,\"li\",{\"data-preset-tag\":\"p\"},[4,\"p\",null,[5,\"Build and maintain efficient data processing and training pipelines for large-scale image datasets.\"]]],[4,\"li\",{\"data-preset-tag\":\"p\"},[4,\"p\",null,[5,\"Improve and automate data labeling workflows to enhance annotation quality and efficiency.\"]]],[4,\"li\",{\"data-preset-tag\":\"p\"},[4,\"p\",null,[5,\"Continuously evaluate, benchmark, and refine model performance, ensuring robustness and scalability for real-world deployment.\"]]]],[4,\"p\",{\"dir\":\"auto\"},[4,\"strong\",null,[5,\"What we are looking for\"]]],[4,\"ul\",{\"dir\":\"auto\"},[4,\"li\",{\"data-preset-tag\":\"p\"},[4,\"p\",null,[5,\"Bachelor’s degree or higher in Computer Science, Engineering, or a related technical field (or equivalent practical experience).\"]]],[4,\"li\",{\"data-preset-tag\":\"p\"},[4,\"p\",null,[5,\"Strong programming skills in Python, and solid experience with Linux and Git.\"]]],[4,\"li\",{\"data-preset-tag\":\"p\"},[4,\"p\",null,[5,\"Hands-on experience with Docker for development and deployment.\"]]],[4,\"li\",{\"data-preset-tag\":\"p\"},[4,\"p\",null,[5,\"Proven experience with OpenCV and PyTorch.\"]]],[4,\"li\",{\"data-preset-tag\":\"p\"},[4,\"p\",null,[5,\"Experience contributing to at least two computer vision / deep learning projects (academic or professional).\"]]],[4,\"li\",{\"data-preset-tag\":\"p\"},[4,\"p\",null,[5,\"Excellent communication skills in English, both written and verbal.\"]]]],[4,\"p\",{\"dir\":\"auto\"},[4,\"strong\",null,[5,\"Nice to have\"]]],[4,\"ul\",{\"dir\":\"auto\"},[4,\"li\",{\"data-preset-tag\":\"p\"},[4,\"p\",null,[5,\"Experience working with AWS or other cloud platforms.\"]]]],[4,\"p\",{\"dir\":\"auto\"},[5,\"At IVEX, we’re on a mission to make ADAS and autonomous driving systems safer and more trustworthy. You’ll join a team of engineers and researchers building the next generation of safety intelligence for connected and automated vehicles. \"],[4,\"br\",null],[4,\"br\",null],[4,\"strong\",null,[5,\"We offer\"]]],[4,\"ul\",{\"dir\":\"auto\"},[4,\"li\",{\"data-preset-tag\":\"p\"},[4,\"p\",null,[5,\"Opportunities for professional growth and skill development in a rapidly evolving field\"]]],[4,\"li\",{\"data-preset-tag\":\"p\"},[4,\"p\",null,[5,\"A competitive salary and benefits package\"]]]],[4,\"p\",{\"dir\":\"auto\"},[5,\"If you’re motivated by innovation and eager to push the boundaries of computer vision in mobility, we’d love to hear from you.\"]],[4,\"p\",{\"dir\":\"auto\"},[4,\"strong\",null,[5,\"Send us your CV and surprise us with your motivation.\"]],[5,\" \"]],[4,\"p\",{\"dir\":\"auto\"},[5,\"By sending your CV, you agree to our \"],[2,{\"href\":\"https://ivex.ai/wp-content/uploads/2024/01/2023.10.31-GDPR-recruitment-and-hiring-processes.docx-Documentos-Google.pdf\",\"openInNewTab\":true,\"smoothScroll\":false,\"relValues\":[\"noreferrer\"],\"motionChild\":true,\"nodeId\":\"uYq2L1UnT\",\"scopeId\":\"contentManagement\"},[4,\"a\",null,[5,\"GDPR\"]]],[5,\".\"]]]",["Map",17,18],"getSlugByRecordId|jmghuB7GM|default|bSYlRbekQ","series-a"]

Similar Jobs

All jobs