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.
*experience rated out of ten
Written communication: 7, Verbal communication: 6
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)
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)
Responsibilities: Development of production code, automation scripts, unit tests and integration / end to end tests. Mentoring junior developers. Mentoring on agile practice.
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.
Responsibilities: Development (production code, unit tests, automation scripts).
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.
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.
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.
Responsibilities: Programming, responsive web design, experience design, mentoring on agile practice, implementing coding standards.
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.
Responsibilities: Programming. Development of; production code and unit tests. Responsive web design, experience design, implementing coding standards, interviewing potential new team members
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.
Responsibilities: Technical leadership, programming, managing freelance developers, managing 3rd part development teams, internal stakeholder management, client stakeholder management, interviewing potential new team members.
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.
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.