Hi, I'm Keith, an independent software engineer. I solve business challenges with code, design, infrastructure and things.

I can help you with ...

Scale icon

Consultancy

I provide consultancy services to help you deduce architectural decisions for your project. Evaluating team capabilities, legislative obligations and infrastructure requirements.

more details ...

Puzzle icon

Project and Team Lead

If your project or team can benefit from an experienced engineer. I'm your go-to person. I enjoy leading by example, and my consultancy tends to stretch beyond the tasks at hand.

more details ...

Full stack icon

Full-stack development

Whether you need a solo developer or a team member, I can develop websites and applications from the backend model, to the application, infrastructure and front-end layers.

more details ...

Recent clients

Keith is an excellent Engineer, with a thorough knowledge of web development. He has great attention to detail, is complete and honest in his work. I recommend Keith to anyone who is looking for a Senior Engineer for both simple or complex projects.

Keith is an excellent engineer with a great attention to details, self-starter and well organised. But most importantly Keith is motivated to do the right thing and acts as a team player. I highly recommend Keith to anyone who is looking for a senior developer who is reliable and trustworthy.

Keith is very knowledgeable on coding and being coupled with the quality of being meticulous equates to a very good end result.

Recent technology

These are some of the programming languages, frameworks and tools I've had the opportunity to work with during 2018. I'm experienced in several other technologies and I enjoy learning new ones every month.

C++
Ruby
JavaScript
C
Python
Bash
HTML
Markdown
MySql
MSSql iconMSSql
GraphQl iconGrapghQl
CSS
Json iconJSON
Yaml
Doctrine
Saas
Nginx
Apache
MqttMQTT
PHP
Laravel
Symfony
React
VueJs
PHPUnitPHPUnit
RubyGemsRubyGems
ESLInt
WebpackWebPack
Gulp
PHPComposerComposer
NPMNPM
NodeJS
WordPress
MagentoMagento
GatsbyGatsby
JekyllJekyll
RSpec
Bootstrap
jQuery
BabelBabel
CodeIgniter
Git
GitHub
BitbucketBitBucket
Docker
KubernetesKubernetes
GoogleCloudGCP
AtlassianAtlassian
SlackSlack
DigitalOceanDigital Ocean
RaspberryPiRaspberryPi
Heroku
PhpStormPhpStorm
RubyMineRubyMine
PyCharmPyCharm
IntelliJIdeaIntelliJ
VisualStudioCodeVSCode
VagrantVagrant

“Tell me and I forget, teach me and I may remember, involve me and I learn.” - Benjamin Franklin

Get in touch

Recent articles

The Fearless and Natural Approach to TDD

Published on 23rd January, 2018
phpunitphptdd

I’ve been applying TDD (Test Driven Development) religiously for the past 5 years and now cannot imagine where I would even start from, in…

The value of Event Sourcing

Published on 15th January, 2018
event sourcingmachine learning

I honestly feel obliged to write this article because I feel that most developers think about Event Sourcing as only another PoEAA (Pattern…

PHP software development workflow

Published on 8th January, 2018
phpworkflowcomposergit

Continuing from the previous post Developing a Command Bus in PHP , we will look into how to get started in setting up our composer library…

Open source

Jekyll Target Blank

First released on 30th May, 2018 | Last updated on 24th December, 2018

Gem Version

A Jekyll plugin to facilitate implementing the target attribute of external links. Includes several configuration options such as default and custom rel attributes, adding custom CSS classes and even overriding default behaviour as needed. Works with HTML, Markdown and Liquid tags.