John Needham

Skills

Leadership

Leadership is a skill I have been fortunate to develop over the years, initially though scuba diving as an Instructor and Examiner, and then later as I took on leadership roles in my technical career. I am a huge fan of helping those around me to improve and develop, both as software engineers but also as members of the team. I also believe that a good technical leader should give their team the clarity, details and tools they need, as well as providing the space (and peace) to get on with the task.

I have worked in agile, scrum and in-house methods and believe that a unique combination of each is usually best for each environment.

Developing in PHP

I have been coding in PHP since 2010, over that time I have seen the landscape change entirely to embrace the best and modern software practices. I strive to integrate this same goals into all of my own development. I am a strong proponent of good OO code that adheres to the SOLID principles, which should give the product the flexibility to adapt to changes as well help developers find clarity when exploring codebase. I also push for robust tests that give you that important confidence when making changes in your software.

Frameworks

Over the past few years I have embraced the speed and confidence that building using good frameworks can bring to a project, my favourite of which is Laravel. I have used this on multiple work and personal projects and found it to be a great and robust platform to build on (I have also used Symfony and Slim).

I have also become an advocate of the Vue.js front-end framework, I am a huge fan of the speed of development it can provide as well as the simplicity of the components it can help you to create. I also love SMACSS for organising my css.

The Development Cycle

From Git to Github, Docker to AWS, or Jira to post-it notes, I have various levels of experience across a wide range of tools that developers use to help them build and ship software. I'm always learning more and improving my skills, I’ve listed some of the tools and techniques I have used over the years below.

SASS, Nginx, AWS, Lua, Mysql, MongoDB, Git, Composer, Slim, Bootstrap, Wordpress, AMP, Facebook Instant Articles, Docker