Printing tool Download PDF

Michael Brooks

Web Developer at Lightfoot

Summary

I am passionate about what I do and try to put 110% in everything. I always try to stay up to date in the latest technologies. Using websites such as Reddit and Twitter, I try to follow as many innovators as possible, these include Dale Reese, Taylor Otwell, Jeffrey Way, Adam Wathan etc. I've used Laravel, Vue to create personal websites and projects and have hosted many websites on Digital Ocean.

Skills

9
Backend Technologies (PHP, Laravel, TDD, BDD, Node etc)

I have 5+ years of professional PHP experience, but much longer in personal experience.

I have worked on many legacy PHP applications, but have also built a lot of newer PHP apps including Haulfryn (haulfryn.co.uk) and my very personal website (michaelbrooks.co.uk).

For my unit testing, I have used PHPUnit to help test components inside my Composer packages and Laravel's elixir to test user experience and form data.

Recently

9
Frontend Technologies (HTML, JavaScript, CSS/SASS/LESS)

I tend to think that a good PHP developer must know how to use frontend technologies. I have created websites using the latest HTML5 and CSS3 attributes.

I have also used JavaScript, ReactJS, VueJS and JQuery to help develop the more interactive side of my apps/sites. I am favouring SASS over LESS for my CSS compiler, but I'm happy to use either.

My favourite tools to help compile my frontend code is Laravel's Elixir which goes great with the Laravel framework. I have also used GULP, Bower, Webpack and many more tools to help ease code compilation.

8
VMs (Vagrant, Docker)

I try to include Vagrant and Homestead with any project I start as I believe that having a VM match your current production environment is very important. I have also delved into Docker on my personal website and have set up 3 containers (PHP-7, NGINX-FPM and MariaDB).

9
GIT (Version Control)

I have created and merged many branches to help ease a company's version control. I have also helped people understand merge conflicts and the best ways to go about merging conflicts into your targeted branch.

Work experience

May 2019Present

Contract PHP Developer

University of Exeter

Upgrading custom PHP code from PHP 5.6 to version 7.3 and ensuring all deprecated code has been eliminated. Ensuring the project is fully GDPR compliant by working through the spec list. Working through RIPSTech security list which ensures the project isn't vulnerable to SQL injection and all input is validated.

January 2017May 2019

Full-Stack Web Developer

Lightfoot

Using ReactJS to support and add new features to the Lightfoot portal. This enables clients and customers to easily track their journeys driven and view any events such as harsh acceleration, over-speeds and more. The portal connects and interacts with a backend API built with custom PHP code.

Implemented testing for ReactJS using Jest and Enzyme, and PHP app using Codeception which extends PHPUnit.

Encouraged and implemented the use of continuous integration with CircleCI. Running CircleCI to run our tests and give feedback on our pull requests through GitHub.

June 2016January 2017

Full-Stack Web Developer

DestinationCMS

Helped support lead developer by supporting legacy ColdFusion websites, bug features and updates on newer websites. They have a large API built with Symfony which is used as the backbone to all of their Mall 2 Mobile clients who are all using a custom built CMS also built on Symfony.

Jul 2015June 2016

Full-Stack Web Developer

Logo Commercial Creative Partners (CCP)

When I started at Logo, I could see there were a couple of opportunities to really push new technology to help with development time and future projects. I had introduced GIT to the team and taught everyone the best practices from creating new branches to deploying code to live.

I had also introduced Vagrant/Homestead which helps ease the development of code on local machines. This meant that any bugs within our PHP code would be caught sooner rather than later and we wouldn't have the "well it works on my machine" issue.

A couple of months in, I transferred Enjoy and the Haulfryn projects over to Logo so I could gain free time in the evenings, but also help Logo out by giving them a new client. Haulfryn then wanted us to split part of the site on haulfrynholidayhomes.co.uk called My Haulfryn. I then proposed that we use Unit testing (PHPUnit) and BDD (Laravel's built-in suite) to help speed up development time and catch any bugs before the project went live. This also made it easier for Continuous Integration using GitLab and deployment onto the live server.

As well as developing with PHP, I also helped manage our local and remote server datacentres by fixing server crashes and ensuring it wouldn't happen again in the future.

Apr 2015Jul 2015

Full-Stack Website Developer

Createanet

Supporting app developers by focusing my efforts on any website updates and create new websites/APIs which were needed for app development.

Apr 2015Aug 2015

Full-Stack Web Developer

Enjoy Marketing

During my time at Pulse8 Broadband, Enjoy had got in contact with me and needed help with Haulfryn's websites which consisted of 4 projects. As I had created and supported the projects during my tenure with Pulse8, they felt that I would be perfect to carry the work on and I then took them on as a freelance client.

I would then work on and support the sites during my evenings which had been okayed with my employer at Pulse8 Broadband.

Feb 2015Apr 2015

Full-Stack Website Developer

Pulse8 Broadband

Update and manage http://pulse8broadband.co.uk using custom PHP code along with GIT for version control. Traffic management using Google and Bing SEO tools to build the sites ranks. Social management with Twitter, Facebook and Google+ to ensure we build a good relationship with potential customers.

Nov 2013Jan 2015

Full-Stack Website Developer

Pulse8

Built websites for clients such as Haulfryn, Kerb, Delimann and many more. Using custom built PHP for older sites and newer sites were built on Laravel 4. Used GIT for version control to ensure everyone had the latest code. For newer sites, SEO had to be kept in mind to keep current rankings across all pages.

During my time here, I got given the task to re-develop Haulfryn websites which were haulfryn.co.uk, haulfrynholidays.co.uk, haulfrynholidayhomes.co.uk and haulfrynresidential.co.uk. I tried to make the administration pages modular by developing my own custom PHP packages using Composer and Bitbucket and used Laravel as the base framework to help drive development time/speed.

Education

20082011

National Diploma

St Austell College

National Diploma, Higher National Diploma, ICT Practitioners, Web Media, Distinction*, Triple Distinction