James Winfield


This is what I have achieved, in descending chronological order:


Currently one of 4 senior engineers driving experimentation within personalisation, using React hooks to build experimental components, testing through Optimizely, with supporting roles provided to product/analytics to assess experiments from ideation through to analysing data. Also one of the originator of the Tech_Den community within M&S, which is aiming to bring engineering together with talks, socials and more.

Previously tech lead for the Choose & Buy team, which is a self-driving incremental revenue generating team within the Growth & Personalisation department. Leading 5 other engineers to build and test ideas in either the old vanilla JavaScript tech stack, or newer React-based tech stack, whilst the tech stack migration is ongoing.

Also a mentor for a graduate, tech lead for a new tech stack adoption team within the Growth & Personalisation department, part of the engineer recruitment team, provide on call support 24/7 on a rota basis, and initiated the engineering social committee.

Worked on a concept called an “Outfit Generator”, working with back-end engineers, data scientists and designers to bring a new outfitting concept – being built in React, TypeScript, Next and GraphQL. Alas, project was “paused” due to revenue requirements.

Previously worked as part of the recommendations team, a self-contained team where we generated our own ideas and tested them using a/b tests in Adobe Experience. A highly successful team, generating large sums of proven incremental revenue – most of the f/e code written in vanilla JavaScript, SCSS and Handlebars. Whilst on the recommendations team, I became the tech lead for the f/e side.

My first main accomplishment at M&S was to rebuild the product details page using JavaScript (ES6), IncrementalDOM, SCSS, Node, Express, Handlebars – mostly client-side code though some server-side. 100% unit test coverage using Mocha/Chai.


Managed the front-end development of the Lovespace website, via WordPress, AngularJS and jQuery.

Converted the order flow from jQuery to AngularJS.

Led front-end aspect of internationalisation project, using WordPress Multisite, encoding to allow for translation and making necessary adjustments for new international markets.

Expanded WordPress functionality to give more control to the marketing team over the website, via the WP-admin panel.