Curriculum Vitae: Lewis Barclay

Introduction

I work as a software engineer. I write JavaScript / NodeJS mostly but have programmed (or written scripts) in other languages (C#,VB.Net, Java, PHP, Bash, and others). I've been working as a software engineer, web developer or tech lead, commercially for 18 years. In the last five years a regular requirement of my work has been to mentor less experienced developers and help coach less experienced agile team members.

I'm currently a consultant and I am a long time contractor. The majority of software I create operates nearer the user; web applications and user interfaces, web services and web APIs. Mostly all of the products I have worked on recently have been for large enterprises.

The majority of work I complete, consistently forms part of an Agile programme of work and is accompanied by a healthy level of automation; always continuous integration, sometimes continuous delivery and occasionally continuous deployment.

I have a mix of skills and experience in; programming, software design and architecture, automation, user interface design and user experience design. While I do not specialise in any of the disciplines I can demonstrate advanced skills and good experience in all of them.

I like things to be straightforward, to be able to understand things quickly and with confidence, by removing unnecessary complexity.

Skills used regularly & experience ratings for each

*experience rated out of ten

JavaScript: 9, ES6/ES7: 7, HTML: 8, CSS / SASS: 7, NodeJS: 7, ReactJS: 7,, Redux: 6, BackboneJS: 6, UX Design: 8, Visual Design: 5, Agile practices: 8, XP: 8, Scrum: 9, Kanban: 6, Lean ways of working: 6
Written communication: 7, Verbal communication: 6

Other things I regularly use to deliver working software

WebStorm, Git, AWS (CLI & js-SDK), NPM, Yarn, Webpack, Gulp, Grunt, SASS, Webpack, TeamCity, Jenkins, OSX, Bash / zsh, Linux, Docker, Windows, ExpressJS, Swagger, JIRA, Confluence, Slack, Trello, Photoshop, Sketch - amongst others.

I have a PSM1 Scrum master certification from Scrum.org (2016)


Work History

July 2017 to present: Fidelity International Limited

Senior software engineer


April 2015 to July 2017: Equal Experts

Senior, associate software engineer

Equal Experts are an Agile software consultancy. They have a 700+ associate network where most of the associates have 10+ years of experience in their field, myself included.

(Roles for Equal Experts follow)


February 2017 to July 2017: Barclays - Investment bank

Senior front-end web developer

Responsibilities: Development of production code, automation scripts, unit tests and integration / end to end tests. Mentoring junior developers. Mentoring on agile practice.
Tech Stack: JavaScript, NodeJS, ReactJS, D3Js, NVD3, ASP.Net, C#, Git, Oracle, TeamCity, Powershell.
Environment: Agile / Scrum / XP, TDD, pair programming, CI & CD.

I worked as part of an agile delivery team (six people) building a greenfield trading insights application, serving clients of a new securities lending business unit, within the investment bank. Development of the application included integration with Barclay's security services, build of web services to transform and deliver data to the user interface, and development of the web user interface, including more than 10 interactive data visualisations.

January 2017 to February 2017: Internal Equal Experts projects

Full stack Javascript engineer

Responsibilities: Development (production code, unit tests, automation scripts).
Tech Stack: JavaScript, NodeJS, ReactJS, Docker, AWS (AWS CLI), ExpressJS, Swagger, Ansible.
Environment: Agile / Scrum / XP, CI (& deployment), pair programming.

I worked to develop the UI and micro-services for a CI/CD dashboard for Equal Expert's clients. The dashboard was developed to offer a near realtime view, of the state of environments, containers and applications within a software delivery project. The dashboard started simply by illustrating the current state of any environment within a specific CD pipeline including; AWS instance states, their child Docker containers running in Docker swarms, in those environments, and the applications or services hosted on them.

I also worked on two proof of concepts built using Redux and ReactJS. One demonstrating a UI on top of an web API, connected to a blockchain (Ethereum), via a web based RPC API and another chat-bot and conversational user interface.


April 2015 to December 2016: Fidelity International (global asset managers)

Senior front-end web engineer

Responsibilities: Programming. Development of; production code, tests, build scripts. Team leadership (Front-end team - interim), responsive web design, mentoring on agile practice (XP / Scrum), implementing coding standards and coding best practice, interviews.
Tech Stack (various projects): JavaScript, NodeJS, BackboneJS, ReactJS, Marionette, ExpressJS, Grunt, Mocha. HTML, SASS / CSS. Swagger. SVN and Git. Java. CloudFoundry (Pivotal). TeamCity. AWS.

Primarily my role was to help progress the development of a personal investing web user interface. The application was developed as a few small single page applications, on top of an investment platform. The SPAs were built in Backbone / Marionette, used SASS for pre-processing CSS, Grunt for builds along with some custom NodeJS scripts.

My role evolved into an interim head of front end web development role, within the digital department, while the company appointed a permanent employee to take up the role full-time. I worked with onshore and offshore teams to try to progress their software and design delivery practice. We tried to increase the pace at which features were developed and released, increase quality and maturity of agile practice within the delivery teams and ultimately deliver better working software. I reported into the Head of digital in the UK and then worked to help onboard the newly appointed Head of front-end development, within the UK.

During the second half of my time in this role, I worked on two "incubator" projects created to improve and challenge the organisation's existing ways of working, attempting to migrate from Waterfall processes, as part of the company's ongoing Agile and digital transformation. The first project was focused around new ways to perform AML and KYC of new customers and the second was to deliver Corporate Action information as part of the new personal investing website.


August 2014 to April 2015: Dentsu Aegis plc

Senior software engineer

Responsibilities: Programming, responsive web design, experience design, mentoring on agile practice, implementing coding standards.

Tech Stack:Angular JS (v1), JavaScript, jQuery, D3JS, NodeJs, Grunt, SASS, Bootstrap. Git, Java. Postgres, Hadoop. TeamCity.

Environment: Scrum, JIRA, Confluence, Jenkins

Dentsu Aegis is a large advertising / media agency. I worked in the Data Labs department as the Lead UI engineer.

I developed an admin interface and data dashboard to manage and report on data on global campaigns run for Dentsu's clients. The data was sourced from various datasources including Hadoop and SQL Server. The UI interacted through a brand new Restful Web API, which I designed via contracts using Apiary.io, as part of a contract first development approach.


November 2012 to August 2014: Aimia Inc

Senior front end developer / UI development team lead

Responsibilities: Programming. Development of; production code and unit tests. Responsive web design, experience design, implementing coding standards, interviewing potential new team members
Tech Stack: Javascript, BackboneJS, Marionette, HTML, CSS, LESS, Grunt, jQuery. Git, AWS. Java, MongoDB, MySQL. Jenkins. CentOS.
Environment: Agile / Scrum / XP, TDD, BDD, AWS, JIRA, Confluence

I joined as a senior web developer, part of a 100 strong team building a SaaS based loyalty platform, to be used by Aimia's clients. As part of a strict Agile delivery (XP & Scrum), originally led by Thoughtworks, I worked on the user interfaces of 4 separate applications which formed a large part of their platform.

The work involved working on a monthly Sprint cycle delivering features on one of the four UIs with and their associated web services, practising TDD and CI. I worked closely with the experience and visual designers to deliver highly fully featured web applications that formed the user interface for the applications that formed the platform being released to Aimia's clients.

Towards the later part of the contract I adopted the UI team lead role. I was responsible for managing the day to day efforts of the UI development team (6 developers) and their output alongside my continued engineering responsibilities.


August 2011 to November 2012: Further

Technical lead

Responsibilities: Technical leadership, programming, managing freelance developers, managing 3rd part development teams, internal stakeholder management, client stakeholder management, interviewing potential new team members.
Tech: Javascript, NodeJS, PHP, ASP.Net (C#), Wordpress, CSS, HTML, jQuery, Git, SVN

The role I took at Further started off by developing a CMS backed website for one of their clients, to be rolled out in 5 territories and locales. The solution needed to be cost effective and flexible to suit both their marketing teams and internal technical capabilities.

When this first project was completed and rolled out successfully I was kept on to help manage the technical delivery of several other projects including; a small microsite for an enterprise FMCG company, a microsite for a large investment firm, a CMS backed website for large UK Industrial park, a CMS backed site for an illustrator.


Previous to this I worked for companies including:

Interests

Developer and designer culture. What makes a good team. How developers and designers can work to make real positive change to organisations, industries and society. Anything that combines creativity and technology!

I like music, tech, design, snowboarding and trying to go to the gym! I'm a proud dad and husband.

References and URLs of work can be provided on request