{"id":13345,"date":"2026-05-21T14:27:12","date_gmt":"2026-05-21T12:27:12","guid":{"rendered":"https:\/\/qls.nl\/?post_type=vacatures&#038;p=13345"},"modified":"2026-10-21T10:19:12","modified_gmt":"2026-10-21T08:19:12","slug":"product-owner","status":"publish","type":"vacatures","link":"https:\/\/qls.nl\/en\/vacancies\/product-owner\/","title":{"rendered":"Product Owner"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\"><strong>Help us build the smartest logistics platform for e-commerce.<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">QLS is a forward-thinking logistics company built around e-commerce, with a no-nonsense mentality. We process&nbsp;<strong>34 million orders<\/strong>&nbsp;for&nbsp;<strong>3,000+ webshops<\/strong>&nbsp;with a team of&nbsp;<strong>1,000+ colleagues<\/strong>, from our highly automated warehouses (think AutoStore and our own packaging machines) and through partners like DHL, PostNL, DPD and FedEx. We operate internationally and ship worldwide. The beating heart of our operation is our own software:&nbsp;<strong>my.QLS<\/strong>. And you&#8217;ll co-own a meaningful part of it.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The role<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">As a Product Owner, you&#8217;ll own (part of)&nbsp;<strong>my.QLS<\/strong>, with a focus on&nbsp;<strong>WMS, OMS and warehouse automation<\/strong>. You&#8217;ll work on software used both internally (by our own warehouse operations) and externally (by thousands of B2B webshops and, to a lesser extent, consumers).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You&#8217;ll join an international product team of Product Owners and a project manager. The product team sits separately from Tech, but you work closely with our Tech department every day, in particular with the Tech Leads and developers. Both the product team and your Tech colleagues are based in Alblasserdam (the Netherlands), the UK and various other locations around the world. You report directly to the Head of Strategy &amp; Product.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What you&#8217;ll do<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u2022 Take ownership of a clearly defined part of my.QLS. You decide, together with stakeholders, what we build and why. <br>\u2022 Work according to&nbsp;<strong>Shape Up<\/strong>: shape problems into clear pitches, protect scope inside fixed cycles, and keep the team focused. <br>\u2022&nbsp;<strong>Use AI as a core component of your product and of how you work.<\/strong>&nbsp;Think smarter warehouse flows, predictive logistics, AI-driven features inside my.QLS, and leaning on AI tools to build faster and better. AI isn&#8217;t a side feature at QLS; it&#8217;s a through-line. <br>\u2022 Collaborate day-to-day with developers, designers and stakeholders from operations, sales and customer success. <br>\u2022 Sketch wireframes and flows in&nbsp;<strong>Figma<\/strong>&nbsp;and manage your backlog in the&nbsp;<strong>Atlassian suite<\/strong>&nbsp;(Jira, Confluence). <br>\u2022 Steer on impact rather than output, keeping an eye on both roadmap and details.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What we&#8217;re looking for<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u2022 1 to 5 years of experience as a Product Owner or in a comparable product role. <br>\u2022 Affinity with or experience in&nbsp;<strong>Shape Up<\/strong>, or the drive to pick it up quickly. <br>\u2022&nbsp;<strong>You already use AI daily in your work.<\/strong>&nbsp;You actively work with AI tools and continually think about where AI makes your product and your team better. <br>\u2022 Basic knowledge of&nbsp;<strong>Figma<\/strong>. You don&#8217;t need to be a designer, but you can sketch screens and spar with designers. <br>\u2022 Comfortable in the&nbsp;<strong>Atlassian suite<\/strong>&nbsp;(Jira, Confluence). <br>\u2022 Strong communication skills. You switch easily between developers, operations and commercial stakeholders. <br>\u2022 Analytical and pragmatic. You make decisions based on data and common sense. <br>\u2022 Fluent in English; Dutch is a strong plus given our HQ and team setup.<br>\u2022 Affinity with e-commerce, logistics, fulfilment or warehouse automation is a strong plus.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What we offer<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u2022 A competitive, market-conform salary based on your experience. <br>\u2022 25 vacation days, a pension scheme and travel allowance (reiskostenvergoeding). <br>\u2022 A personal training and development budget. We&#8217;re happy to invest in your growth. <br>\u2022 A\u00a0<strong>Figma<\/strong>\u00a0subscription and a\u00a0<strong>Claude<\/strong>\u00a0subscription at the right tier, so you work with the right tools from day one. <br>\u2022 Laptop, phone and all the kit you need to do your best work. <br>\u2022 Office based role in Dordrecht with some flexibility to work 1 day\/week from home after successful onboarding process. <br>\u2022 A friendly, no-nonsense culture with enthusiastic, international colleagues, Friday drinks and regular team activities. <br>\u2022 A scalable, technically ambitious company where you&#8217;ll have real impact on a product used daily by thousands of webshops.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Interested?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Do you see yourself as the new Product Owner at QLS? Apply directly using the form below. We will get back to you as soon as possible!<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<section id=\"form\" class=\"module-contactform wp-block margin-xlarge header-medium\">\n    <div class=\"row align-center\">\n        <div class=\"small-12 large-6 column\">  \n            <div class=\"bg-gray round-large padding-medium\">\n                                                                    <script>\nvar gform;gform||(document.addEventListener(\"gform_main_scripts_loaded\",function(){gform.scriptsLoaded=!0}),document.addEventListener(\"gform\/theme\/scripts_loaded\",function(){gform.themeScriptsLoaded=!0}),window.addEventListener(\"DOMContentLoaded\",function(){gform.domLoaded=!0}),gform={domLoaded:!1,scriptsLoaded:!1,themeScriptsLoaded:!1,isFormEditor:()=>\"function\"==typeof InitializeEditor,callIfLoaded:function(o){return!(!gform.domLoaded||!gform.scriptsLoaded||!gform.themeScriptsLoaded&&!gform.isFormEditor()||(gform.isFormEditor()&&console.warn(\"The use of gform.initializeOnLoaded() is deprecated in the form editor context and will be removed in Gravity Forms 3.1.\"),o(),0))},initializeOnLoaded:function(o){gform.callIfLoaded(o)||(document.addEventListener(\"gform_main_scripts_loaded\",()=>{gform.scriptsLoaded=!0,gform.callIfLoaded(o)}),document.addEventListener(\"gform\/theme\/scripts_loaded\",()=>{gform.themeScriptsLoaded=!0,gform.callIfLoaded(o)}),window.addEventListener(\"DOMContentLoaded\",()=>{gform.domLoaded=!0,gform.callIfLoaded(o)}))},hooks:{action:{},filter:{}},addAction:function(o,r,e,t){gform.addHook(\"action\",o,r,e,t)},addFilter:function(o,r,e,t){gform.addHook(\"filter\",o,r,e,t)},doAction:function(o){gform.doHook(\"action\",o,arguments)},applyFilters:function(o){return gform.doHook(\"filter\",o,arguments)},removeAction:function(o,r){gform.removeHook(\"action\",o,r)},removeFilter:function(o,r,e){gform.removeHook(\"filter\",o,r,e)},addHook:function(o,r,e,t,n){null==gform.hooks[o][r]&&(gform.hooks[o][r]=[]);var d=gform.hooks[o][r];null==n&&(n=r+\"_\"+d.length),gform.hooks[o][r].push({tag:n,callable:e,priority:t=null==t?10:t})},doHook:function(r,o,e){var t;if(e=Array.prototype.slice.call(e,1),null!=gform.hooks[r][o]&&((o=gform.hooks[r][o]).sort(function(o,r){return o.priority-r.priority}),o.forEach(function(o){\"function\"!=typeof(t=o.callable)&&(t=window[t]),\"action\"==r?t.apply(null,e):e[0]=t.apply(null,e)})),\"filter\"==r)return e[0]},removeHook:function(o,r,t,n){var e;null!=gform.hooks[o][r]&&(e=(e=gform.hooks[o][r]).filter(function(o,r,e){return!!(null!=n&&n!=o.tag||null!=t&&t!=o.priority)}),gform.hooks[o][r]=e)}});\n<\/script>\n\n                <div class='gf_browser_gecko gform_wrapper gravity-theme gform-theme--no-framework' data-form-theme='gravity-theme' data-form-index='0' id='gform_wrapper_20' ><div id='gf_20' class='gform_anchor' tabindex='-1'><\/div>\n                        <div class='gform_heading'>\n\t\t\t\t\t\t\t<p class='gform_required_legend'>&quot;<span class=\"gfield_required gfield_required_asterisk\">*<\/span>&quot; indicates required fields<\/p>\n                        <\/div><form method='post' enctype='multipart\/form-data' target='gform_ajax_frame_20' id='gform_20'  action='\/en\/wp-json\/wp\/v2\/vacatures\/13345#gf_20' data-formid='20' novalidate>\n                        <div class='gform-body gform_body'><div id='gform_fields_20' class='gform_fields top_label form_sublabel_below description_below validation_below' data-column-layout='fill'><div id=\"field_20_3\" class=\"gfield gfield--type-text gfield--input-type-text gfield_contains_required field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible\" data-group-id=\"bf97207a\" data-field-span=\"12\"><label id='gfield_label_20_3' class='gfield_label gform-field-label' for='input_20_3'><span class='gform-field-label__text'>Name<\/span><span class=\"gfield_required\"><span class=\"gfield_required gfield_required_asterisk\">*<\/span><\/span><\/label><div class='ginput_container ginput_container_text'><input name='input_3' id='input_20_3' type='text' value='' class='large'     aria-required=\"true\" aria-invalid=\"false\"   \/><\/div><\/div><div id=\"field_20_4\" class=\"gfield gfield--type-email gfield--input-type-email gfield_contains_required field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible\" data-group-id=\"3202ca3c\" data-field-span=\"12\"><label id='gfield_label_20_4' class='gfield_label gform-field-label' for='input_20_4'><span class='gform-field-label__text'>Email address<\/span><span class=\"gfield_required\"><span class=\"gfield_required gfield_required_asterisk\">*<\/span><\/span><\/label><div class='ginput_container ginput_container_email'>\n                            <input name='input_4' id='input_20_4' type='email' value='' class='large'    aria-required=\"true\" aria-invalid=\"false\"  \/>\n                        <\/div><\/div><div id=\"field_20_5\" class=\"gfield gfield--type-phone gfield--input-type-phone gfield--phone-format-international field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible\" data-group-id=\"a305508e\" data-field-span=\"12\"><label id='gfield_label_20_5' class='gfield_label gform-field-label' for='input_20_5'><span class='gform-field-label__text'>Phone number<\/span><\/label><div class='ginput_container ginput_container_phone'><input name='input_5' id='input_20_5' type='tel' value='' class='large'    aria-invalid=\"false\"    \/><\/div><\/div><div id=\"field_20_6\" class=\"gfield gfield--type-textarea gfield--input-type-textarea field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible\" data-group-id=\"d740d9e6\" data-field-span=\"12\"><label id='gfield_label_20_6' class='gfield_label gform-field-label' for='input_20_6'><span class='gform-field-label__text'>Motivation\/explanation<\/span><\/label><div class='ginput_container ginput_container_textarea'><textarea name='input_6' id='input_20_6' class='textarea large'      aria-invalid=\"false\"   rows='10' cols='50'><\/textarea><\/div><\/div><div id=\"field_20_8\" class=\"gfield gfield--type-fileupload gfield--input-type-fileupload gfield_contains_required field_sublabel_below gfield--has-description field_description_below field_validation_below gfield_visibility_visible\" data-group-id=\"1315db2f\" data-field-span=\"12\"><label id='gfield_label_20_8' class='gfield_label gform-field-label' for='input_20_8'><span class='gform-field-label__text'>CV<\/span><span class=\"gfield_required\"><span class=\"gfield_required gfield_required_asterisk\">*<\/span><\/span><\/label><div class='ginput_container ginput_container_fileupload'><input type='hidden' name='MAX_FILE_SIZE' value='134217728' \/><input name='input_8' id='input_20_8' type='file' class='large' aria-describedby=\"gfield_upload_rules_20_8 gfield_description_20_8\" onchange='javascript:gformValidateFileSize( this, 134217728 );'  \/><span class='gfield_description gform_fileupload_rules' id='gfield_upload_rules_20_8'>Accepted file types: pdf, doc, docx, pages, Max. file size: 128 MB.<\/span><div class='gfield_description validation_message gfield_validation_message validation_message--hidden-on-empty' id='live_validation_message_20_8'><\/div> <\/div><div class='gfield_description' id='gfield_description_20_8'>Add CV<\/div><\/div><div id=\"field_20_9\" class=\"gfield gfield--type-turnstile gfield--input-type-turnstile gfield--width-full field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible\" data-group-id=\"ae61e9fb\" data-field-span=\"12\"><div class='ginput_container ginput_container_turnstile'><div class=\"cf-turnstile\" id=\"cf-turnstile_20\" data-js-turnstile data-response-field-name=\"cf-turnstile-response_20\" data-theme=\"light\" data-size=\"\" data-sitekey=\"0x4AAAAAABgRl6zio3ldGOix\"><\/div><\/div><\/div><\/div><\/div>\n        <div class='gform-footer gform_footer top_label'> <button type='submit' id='gform_submit_button_20' class='gform_button button' onclick='gform.submission.handleButtonClick(this);' data-submission-type='submit' >Send application<\/button> <input type='hidden' name='gform_ajax' value='form_id=20&amp;title=&amp;description=&amp;tabindex=0&amp;theme=gravity-theme&amp;hash=b0e45c802a3ff8d44e6ee45113c9db18' \/>\n            <input type='hidden' class='gform_hidden' name='gform_submission_method' data-js='gform_submission_method_20' value='iframe' \/>\n            <input type='hidden' class='gform_hidden' name='gform_theme' data-js='gform_theme_20' id='gform_theme_20' value='gravity-theme' \/>\n            <input type='hidden' class='gform_hidden' name='gform_style_settings' data-js='gform_style_settings_20' id='gform_style_settings_20' value='' \/>\n            <input type='hidden' class='gform_hidden' name='is_submit_20' value='1' \/>\n            <input type='hidden' class='gform_hidden' name='gform_submit' value='20' \/>\n            \n            <input type='hidden' class='gform_hidden' name='gform_currency' data-currency='EUR' value='j1D25NwKi8zjVVSd\/yvyA19UPWrevbiKlGMQUrYXA6qm6GGLk9YthGvVtcIFbnJJmKV+SYlI0HI8Sd6PnEoKJRrAqIVCG+1jNJzmni5y4SoIBrg=' \/>\n            <input type='hidden' class='gform_hidden' name='gform_unique_id' value='' \/>\n            <input type='hidden' class='gform_hidden' name='state_20' value='WyJ7XCJnZm9ybV9zdWJtaXNzaW9uX21ldGhvZFwiOltcIjQyZTIzNTYzMjI0N2YxNzA5MGY0MTRlMDhiOTNmODlhXCIsXCI3ZDMyYjI3ZjllY2M0NWViYjFkYzljZmViMjBmMTY2YlwiLFwiZWVjNDVkYWI0NDNjZThmNzRhOTZmMGVmODNhOTkyNjNcIl0sXCJnZm9ybV90aGVtZVwiOlwiYWM1MTEzMjQ4OTJkMTM5MGRiYTlmMWYzZDQ4NjQ2YzRcIixcImdmb3JtX3N0eWxlX3NldHRpbmdzXCI6XCIxYzRiYmVjOTFiZjI0ZjhhODY1YmEwNjRkZDE1Y2NhZVwiLFwiZm9ybV9pZFwiOlwiMDM5ODEzYWMzMDI1MDY5OGJiMDdhMDE2Mzc4NGJlY2RcIixcInVybFwiOlwiM2I0MmQwNDMwOTkxNzU0YWE2ZTc4MDUzNTVkYzU0YTVcIixcInN0YXRlX3RpbWVzdGFtcFwiOlwiMTVhMjI5OTc5OGNlNGQwMTQ3YmRkMzliODFiN2YzZGFcIn0iLCJhZmM0M2EzMzI2Njc2YzU4NDkyZWMzYzJhOGIxNDNjNSIsMTc5MjY3Nzk4Nl0=' \/>\n            <input type='hidden' autocomplete='off' class='gform_hidden' name='gform_target_page_number_20' id='gform_target_page_number_20' value='0' \/>\n            <input type='hidden' autocomplete='off' class='gform_hidden' name='gform_source_page_number_20' id='gform_source_page_number_20' value='1' \/>\n            <input type='hidden' name='gform_field_values' value='' \/>\n            \n        <\/div>\n                        <\/form>\n                        <\/div>\n\t\t                <iframe style='display:none;width:0px;height:0px;' src='about:blank' name='gform_ajax_frame_20' id='gform_ajax_frame_20' title='This iframe contains the logic required to handle Ajax powered Gravity Forms.'><\/iframe>\n\t\t                <script>\ngform.initializeOnLoaded( function() {jQuery('#gform_ajax_frame_20').on('load',function(){var contents = jQuery(this).contents().find('*').html();var is_postback = contents.indexOf('GF_AJAX_POSTBACK') >= 0;if(!is_postback){return;}var form_content = jQuery(this).contents().find('#gform_wrapper_20');var is_confirmation = jQuery(this).contents().find('#gform_confirmation_wrapper_20').length > 0;var is_redirect = contents.indexOf('gformRedirect(){') >= 0;var is_form = form_content.length > 0 && ! is_redirect && ! is_confirmation;var mt = parseInt(jQuery('html').css('margin-top'), 10) + parseInt(jQuery('body').css('margin-top'), 10) + 100;if(is_form){jQuery('#gform_wrapper_20').html(form_content.html());if(form_content.hasClass('gform_validation_error')){jQuery('#gform_wrapper_20').addClass('gform_validation_error');} else {jQuery('#gform_wrapper_20').removeClass('gform_validation_error');}setTimeout( function() { \/* delay the scroll by 50 milliseconds to fix a bug in chrome *\/ jQuery(document).scrollTop(jQuery('#gform_wrapper_20').offset().top - mt); }, 50 );var current_page = jQuery('#gform_source_page_number_20').val();jQuery(document).trigger('gform_page_loaded', [20, current_page]);window['gf_submitting_20'] = false;}else if(!is_redirect){var confirmation_content = jQuery(this).contents().find('.GF_AJAX_POSTBACK').html();if(!confirmation_content){confirmation_content = contents;}jQuery('#gform_wrapper_20').replaceWith(confirmation_content);jQuery(document).scrollTop(jQuery('#gf_20').offset().top - mt);jQuery(document).trigger('gform_confirmation_loaded', [20]);if(window.gform && gform.pagination && gform.pagination.removePageQueryArg){gform.pagination.removePageQueryArg(20);}window['gf_submitting_20'] = false;wp.a11y.speak(jQuery('#gform_confirmation_message_20').text());}else{jQuery('#gform_20').append(contents);if(window['gformRedirect']) {gformRedirect();}}jQuery(document).trigger(\"gform_pre_post_render\", [{ formId: \"20\", currentPage: \"current_page\", abort: function() { this.preventDefault(); } }]);        if (event && event.defaultPrevented) {                return;        }        const gformWrapperDiv = document.getElementById( \"gform_wrapper_20\" );        if ( gformWrapperDiv ) {            const visibilitySpan = document.createElement( \"span\" );            visibilitySpan.id = \"gform_visibility_test_20\";            gformWrapperDiv.insertAdjacentElement( \"afterend\", visibilitySpan );        }        const visibilityTestDiv = document.getElementById( \"gform_visibility_test_20\" );        let postRenderFired = false;        function triggerPostRender() {            if ( postRenderFired ) {                return;            }            postRenderFired = true;            gform.core.triggerPostRenderEvents( 20, current_page );            if ( visibilityTestDiv ) {                visibilityTestDiv.parentNode.removeChild( visibilityTestDiv );            }        }        function debounce( func, wait, immediate ) {            var timeout;            return function() {                var context = this, args = arguments;                var later = function() {                    timeout = null;                    if ( !immediate ) func.apply( context, args );                };                var callNow = immediate && !timeout;                clearTimeout( timeout );                timeout = setTimeout( later, wait );                if ( callNow ) func.apply( context, args );            };        }        const debouncedTriggerPostRender = debounce( function() {            triggerPostRender();        }, 200 );        if ( visibilityTestDiv && visibilityTestDiv.offsetParent === null ) {            const observer = new MutationObserver( ( mutations ) => {                mutations.forEach( ( mutation ) => {                    if ( mutation.type === 'attributes' && visibilityTestDiv.offsetParent !== null ) {                        debouncedTriggerPostRender();                        observer.disconnect();                    }                });            });            observer.observe( document.body, {                attributes: true,                childList: false,                subtree: true,                attributeFilter: [ 'style', 'class' ],            });        } else {            triggerPostRender();        }    } );} );\n<\/script>\n    \n                            <\/div>\n        <\/div>\n    <\/div>  \n<\/section>\n","protected":false},"excerpt":{"rendered":"<p>Help us build the smartest logistics platform for e-commerce. QLS is a forward-thinking logistics company built around e-commerce, with a no-nonsense mentality. We process&nbsp;34 million orders&nbsp;for&nbsp;3,000+ webshops&nbsp;with a team of&nbsp;1,000+ colleagues, from our highly automated warehouses (think AutoStore and our own packaging machines) and through partners like DHL, PostNL, DPD and FedEx. We operate internationally<a class=\"excerpt-read-more\" href=\"https:\/\/qls.nl\/en\/vacancies\/product-owner\/\" title=\"Read moreProduct Owner\"> &#8230; Read more \u00bb <\/a><\/p>\n","protected":false},"author":19,"featured_media":0,"menu_order":39,"template":"","meta":{"_acf_changed":false,"content-type":"","footnotes":""},"class_list":["post-13345","vacatures","type-vacatures","status-publish","hentry","vacature_categories-tech"],"acf":[],"_links":{"self":[{"href":"https:\/\/qls.nl\/en\/wp-json\/wp\/v2\/vacatures\/13345","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/qls.nl\/en\/wp-json\/wp\/v2\/vacatures"}],"about":[{"href":"https:\/\/qls.nl\/en\/wp-json\/wp\/v2\/types\/vacatures"}],"author":[{"embeddable":true,"href":"https:\/\/qls.nl\/en\/wp-json\/wp\/v2\/users\/19"}],"version-history":[{"count":4,"href":"https:\/\/qls.nl\/en\/wp-json\/wp\/v2\/vacatures\/13345\/revisions"}],"predecessor-version":[{"id":13838,"href":"https:\/\/qls.nl\/en\/wp-json\/wp\/v2\/vacatures\/13345\/revisions\/13838"}],"wp:attachment":[{"href":"https:\/\/qls.nl\/en\/wp-json\/wp\/v2\/media?parent=13345"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}