We Ask the Expert: What’s Next?

Natasha Sholl By Natasha Sholl | 24 Jun 2019

Adore Beauty’s CTO Gareth Williams talks storytelling, leadership, headless commerce and planning for future disruption.

Ahead of Online Retailer Conference & Expo, we speak to Gareth Williams, CTO of Adore Beauty, about what’s next for e-commerce and how to plan for future disruptors:

What are the three top things that retailers should be implementing now to plan for the future?

  • If your site is not loading in under three seconds, you need to be on a path to that – no matter what platform you are on. Customers do not want to wait. This is a guaranteed conversion booster. Unless tackled, you will see yourself left behind as better performing sites continue to invest in performance. Then ensure that all future deployments and changes to the site are benchmarked against site speed to ensure that it doesn’t go backwards with new features or replatforming.
  • Security may not be fun but is increasingly a challenge with attacks on the rise. Ensure that all your platforms are secure as a data breach can harm a business of any size. Make sure you have two factor authentication against all platforms as well as adding to internal training e.g. the basics of spotting phishing attacks. You might even want to simulate some situations to see how ready your organisation is as a starting point.
  • Being in a 15 tab world, you need to have a plan on how you will bring together previously separated silos and be ready to go up the funnel. Content mixed in with commerce will be table stakes in the future— you need to ensure there is a plan to pull that blog sitting alongside your commerce store together. 

What are the current major disruptors that brands and retailers need to be aware of? Can you plan for future disruption?

Selling through storytelling and aiding discovery of new topics for customers on a one to one basis, which has been done for product recommendations already. Personalisation in terms of product recommendations is the norm. The next phase is using the same tools to engage customers with entertaining content as well as really changing the site to adapt for the customer.

The best way to prepare for the unknown is to build resilience to change, a bias towards action and a collaborative foundation between teams across an organisation. For all the talk of being customer-centric, it is too easy for teams to go with gut feel or what has been done previously when working to deadlines and within information vacuums.

Customers and Search Engines will continue to adapt how and where they want to shop however, great service is never going away. Get the basics right such as empowering a great Customer Service Team, have a functioning warehouse or 3PL so that customers expectations are exceeded. Give customers a reason to come back again and again and listen to what they are telling you

There is so much to get on top of when it comes to remaining competitive in the current (and future) landscape. How can / should brands and retailers block out the noise and focus on what is really important to them?

By implementing a very strong, internally visible (to all employees) feedback loop from customers. Leveraging internal messaging services such as Slack, Confluence or your own collaboration platforms. Rise to the surface customer feedback, research findings, product announcements as well as how the competitive landscape is changing.

Offer easy ways for employees to surface trends, discuss with each other and collaborate. Most importantly, lead by example. The leadership and management should be feeding into this loop by sharing information, leading discussions as well as taking the information and showing teams how what they have surfaced comes to fruition.

Get on board early and lead the way or wait to see how everything plays out and learn from others? What’s your strategy when it comes to early adoption of new technology or trends?

We have a strong bias towards action throughout everything we do at Adore Beauty. From a tech standpoint, the aim is to have a foundation which can adapt quickly, test, fail fast and always look for green shoots with which to build upon.

We have a strong customer feedback loop which drives our platform and development of new services and features. 

E-commerce: What’s next? 

Combining commerce and storytelling. Retailers who can successfully combine entertainment and commerce with a truly authentic story will be the most successful. Creating a defendable, authentic experience for customers where retail can cut through the noise and become a trusted partner will be the standouts.

Connecting all the various inputs together will be key. I believe there are going to be two camps, those who end up innovating by decoupling the presentation from the data i.e. headless, and the platform retailers who don’t need to innovate. The headless platforms will become the agile, retailers of the future – seamlessly being available anywhere the customers are now or in the future. 

Gareth Williams will be presenting on the topic: Talking retail tech with Adore Beauty: Their journey towards headless commerce. To see the full agenda for Online Retailer Conference & Expo (to be held 24-25 July at the ICC Sydney) or to buy tickets, click here.

[gravityform id="11" title="false" description="false" ajax="true"]
<div class='gf_browser_unknown gform_wrapper fix-om-styling_wrapper' id='gform_wrapper_11' ><div id='gf_11' class='gform_anchor' tabindex='-1'></div><form method='post' enctype='multipart/form-data' target='gform_ajax_frame_11' id='gform_11' class='fix-om-styling' action='/sponsored-post/we-ask-the-expert-whats-next/#gf_11'> <div class='gform_body'><ul id='gform_fields_11' class='gform_fields top_label form_sublabel_below description_below'><li id='field_11_2' class='gfield gfield_contains_required field_sublabel_below field_description_below hidden_label gfield_visibility_visible' ><label class='gfield_label' for='input_11_2' >Email Address<span class='gfield_required'>*</span></label><div class='ginput_container ginput_container_email'> <input name='input_2' id='input_11_2' type='text' value='' class='large' placeholder='Email' aria-required="true" aria-invalid="false" /> </div></li><li id='field_11_3' class='gfield gfield_contains_required field_sublabel_hidden_label field_description_below hidden_label gfield_visibility_visible' ><label class='gfield_label gfield_label_before_complex' >Name<span class='gfield_required'>*</span></label><div class='ginput_complex ginput_container no_prefix has_first_name no_middle_name has_last_name no_suffix gf_name_has_2 ginput_container_name' id='input_11_3'> <span id='input_11_3_3_container' class='name_first' > <input type='text' name='input_3.3' id='input_11_3_3' value='' aria-label='First name' aria-required="true" aria-invalid="false" placeholder='First Name'/> <label for='input_11_3_3' class='hidden_sub_label screen-reader-text'>First</label> </span> <span id='input_11_3_6_container' class='name_last' > <input type='text' name='input_3.6' id='input_11_3_6' value='' aria-label='Last name' aria-required="true" aria-invalid="false" placeholder='Last Name'/> <label for='input_11_3_6' class='hidden_sub_label screen-reader-text'>Last</label> </span> </div></li><li id='field_11_5' class='gfield gfield_contains_required field_sublabel_below field_description_below hidden_label gfield_visibility_visible' ><label class='gfield_label' for='input_11_5' >Company / Organisation<span class='gfield_required'>*</span></label><div class='ginput_container ginput_container_text'><input name='input_5' id='input_11_5' type='text' value='' class='large' placeholder='Company' aria-required="true" aria-invalid="false" /></div></li><li id='field_11_6' class='gfield gform_hidden field_sublabel_below field_description_below gfield_visibility_visible' ><input name='input_6' id='input_11_6' type='hidden' class='gform_hidden' aria-invalid="false" value='NOT PROVIDED' /></li><li id='field_11_7' class='gfield gform_hidden field_sublabel_below field_description_below gfield_visibility_visible' ><input name='input_7' id='input_11_7' type='hidden' class='gform_hidden' aria-invalid="false" value='NOT PROVIDED' /></li><li id='field_11_8' class='gfield gform_hidden field_sublabel_below field_description_below gfield_visibility_visible' ><input name='input_8' id='input_11_8' type='hidden' class='gform_hidden' aria-invalid="false" value='NOT PROVIDED' /></li><li id='field_11_9' class='gfield gform_validation_container field_sublabel_below field_description_below gfield_visibility_visible' ><label class='gfield_label' for='input_11_9' >Phone</label><div class='ginput_container'><input name='input_9' id='input_11_9' type='text' value='' /></div><div class='gfield_description' id='gfield_description_11_9'>This field is for validation purposes and should be left unchanged.</div></li> </ul></div> <div class='gform_footer top_label'> <button type="submit" class="button-3" id="gform_submit_button_11">SUBSCRIBE</button> <input type='hidden' name='gform_ajax' value='form_id=11&amp;title=&amp;description=&amp;tabindex=0' /> <input type='hidden' class='gform_hidden' name='is_submit_11' value='1' /> <input type='hidden' class='gform_hidden' name='gform_submit' value='11' /> <input type='hidden' class='gform_hidden' name='gform_unique_id' value='' /> <input type='hidden' class='gform_hidden' name='state_11' value='WyJbXSIsIjRjNDYzMzMwNzM3OTFjM2ZlOGZhNjY2ZDA4ZDVlMDcyIl0=' /> <input type='hidden' class='gform_hidden' name='gform_target_page_number_11' id='gform_target_page_number_11' value='0' /> <input type='hidden' class='gform_hidden' name='gform_source_page_number_11' id='gform_source_page_number_11' value='1' /> <input type='hidden' name='gform_field_values' value='' /> </div> </form> </div> <iframe style='display:none;width:0px;height:0px;' src='about:blank' name='gform_ajax_frame_11' id='gform_ajax_frame_11' title='This iframe contains the logic required to handle Ajax powered Gravity Forms.'></iframe> <script type='text/javascript'>jQuery(document).ready(function($){gformInitSpinner( 11, 'https://mlo34ofws4g4.i.optimole.com/T4zpr1M-5qCJrEGy/w:auto/h:auto/q:auto/https://powerretail.com.au/wp-content/plugins/gravityforms/images/spinner.gif' );jQuery('#gform_ajax_frame_11').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_11');var is_confirmation = jQuery(this).contents().find('#gform_confirmation_wrapper_11').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_11').html(form_content.html());if(form_content.hasClass('gform_validation_error')){jQuery('#gform_wrapper_11').addClass('gform_validation_error');} else {jQuery('#gform_wrapper_11').removeClass('gform_validation_error');}setTimeout( function() { /* delay the scroll by 50 milliseconds to fix a bug in chrome */ jQuery(document).scrollTop(jQuery('#gform_wrapper_11').offset().top - mt); }, 50 );if(window['gformInitDatepicker']) {gformInitDatepicker();}if(window['gformInitPriceFields']) {gformInitPriceFields();}var current_page = jQuery('#gform_source_page_number_11').val();gformInitSpinner( 11, 'https://mlo34ofws4g4.i.optimole.com/T4zpr1M-5qCJrEGy/w:auto/h:auto/q:auto/https://powerretail.com.au/wp-content/plugins/gravityforms/images/spinner.gif' );jQuery(document).trigger('gform_page_loaded', [11, current_page]);window['gf_submitting_11'] = false;}else if(!is_redirect){var confirmation_content = jQuery(this).contents().find('.GF_AJAX_POSTBACK').html();if(!confirmation_content){confirmation_content = contents;}setTimeout(function(){jQuery('#gform_wrapper_11').replaceWith(confirmation_content);jQuery(document).scrollTop(jQuery('#gf_11').offset().top - mt);jQuery(document).trigger('gform_confirmation_loaded', [11]);window['gf_submitting_11'] = false;}, 50);}else{jQuery('#gform_11').append(contents);if(window['gformRedirect']) {gformRedirect();}}jQuery(document).trigger('gform_post_render', [11, current_page]);} );} );</script><script type='text/javascript'> jQuery(document).bind('gform_post_render', function(event, formId, currentPage){if(formId == 11) {if(typeof Placeholders != 'undefined'){ Placeholders.enable(); }} } );jQuery(document).bind('gform_post_conditional_logic', function(event, formId, fields, isInit){} );</script><script type='text/javascript'> jQuery(document).ready(function(){jQuery(document).trigger('gform_post_render', [11, 1]) } ); </script>