See My Work!

You can download my latest desktop app "Puppet Master" from Github. This app is built with Electron and React using Material-UI Components. It is a good showcase of my work in React.

Puppet Master combines browser automation with regular surfing! You can use the browser while automating it - and it makes doing that super easy! Perfect for manual testing, webscraping and power users.

The app involves the complex state management of the integrated file system. Multi-processing and virtual machines for the execution fo user input code. Complex themeing to deal with switching the theme of the code editor, component libraries and application at the same time.

Midas Touch was a web-app designed to train Forex traders. They can access historical data and execute fake trades on that data. When you begin the app hides the future data from you and plays back time very quickly. You execute trades and guage your performance. The app contains many "indicators" which are formula for analysing the change of data over time. These were all created from scratch for the applcation.

Former Clients

  • G4S
  • NatWest
  • RBS
  • Barclays
  • LifeSearch
  • Hoya
  • Seiko
  • Costco
  • Maybourne Hotel Group
  • Atlanta Group
Profile

Graduated in Physics from Southampton University. Lived in rural China for 12 years. Returned to England on a permanent basis. Work in Tech.

After graduating I travelled to China to pursue my childhood fascination with Kung-Fu. What was intended to be a 6 month trip turned into a 12 year expedition in the mountain villages of Henan province. I trained Kung-Fu and meditation, taught, got married and followed a very different way of life. But it was never my intention to stay in China forever and in 2017 my wife finally persuaeded me Kung-Fu was not a great career choice and I returned to Britain on a permanent basis. Here I work in tech.

I had some programming experience from university and did some freelance work remotely while I lived in China. For the last 6 years I have worked in software development agencies in England.

The first agency I worked for here had a small permanent team but employed a lot of contractors remotely. My work was primarily FED on JAMstack apps with Java backends and React frontends (web apps, desktop apps and mobile apps). However because of the nature of a small permanent team managing many projects I ended up doing a lot of technical project management, specification and acceptance testing as well as writing automated tests and a lot of SQL.

Our typical stack was MacOS, AWS, MySql, Java, Maven, React, Material-UI, Webpack, Git, Jira. Agile startup methodology. All technical staff, low admin.

The second agency I worked for is kind of the opposite of that. Enterprise, Large permanent staff, no contractors. Waterfall methodology, high admin. Windows, Azure, TSql, C#, .Net MVC, CMSs, Sass and Gulp, Git, Target-Process.

My current role is Dev Team Technical Analyst with a focus on JS. This is not a very clear name but it is similar to a Technical Solutions Architect role. I run requirement capture meetings with the clients. I write functional specifications. I explore any APIs we are going to use and set them up in Postman. I estimate hours and pricing and request resources. I collaborate on technical specifciations with BEDs. I complete Production FED work and delegate. I do acceptance testing of BED and code review of FED. I profile the code and debug any hotpaths. I hand over to the QA team and I write the release notes and oversee deployment. Bascially shepherding a project through its various phases, though most involved in production.

My primary skill is React, designing components and the state management of complex applications. I am comfortable using many Javascript frameworks and libraries and experienced at researching and picking up new ones. I am not a back-end focused developer however I can make contributions to any project with a Node back-end, be it interacting with a database, other APIs, the file system, multi-processing or virtual machines. I can use C# and a portion of my role is debugging the back end. That sounds odd for a FED but when you write the specs you find your one of the few people who knows how everything fits together as a whole and so inevitably bugs come to you first.

My greatest strength is self sufficiency. That doesn't mean I don't work well in a team rather it means I don't need to be chased or spoon-fed. Because my work has had me touch both management and development roles in software, I know what each expects from the other and can form a bridge between the two. I can follow a spec, estimate time, communicate progress and I always know what the priority is. I can test my own work and I can do the neccessary admin, both before and after. I know how to leave clear comms so even if I am not there someone else can continue what I started or know what and how they are supposed to test. I am client facing and I can run meetings. I was a Kung-Fu instructor for years and I can teach JS. I have led teams and followed and I am comfortable in either position. I take personal responsibility for my work and I genuinely enjoy doing it.

Competencies

Javascript Development

Using HTML, CSS, Javascript, Node, various frameworks and UI libraries to create responsive web apps. Configuring and optimising Node build processes. Modular component architecture. State management. React, Redux and Material-UI is my goto stack. Puppeteer for auotmated testing.

Solutions Architecture

Requirements capture, functional and technical specification, acceptance testing and code review, CPU profiling, Ensuring scalability and maintainability of new features, ensuring security and compliance, maintaining team momentum, documentation.

Tech
  • Javascript
  • React
  • Node
  • Electron
  • Redux
  • Material UI Components
  • SASS
  • Styled Components
  • Next JS
  • Webpack
  • C#
  • .Net MVC
  • Git
  • SQL
  • Puppeteer
  • Salesforce
  • Wordpress
  • Episerver
  • Sitefintiy
  • Jira
Education

Canford School

A-Level Maths, Physics, Chemistry A A A

1998 - 2000

University of Southampton

Bachelor's degree, Physics, 2:1

2001 - 2004

Tagou Sports Institute

Wushu 5th Duan

2005 - 2008

Experience

Jiang Hu, Shanghai

Instructor, Researcher

Mar 2016 - Dec 2017

-Jiang Hu worked with management consultants in Shanghai to apply Zen martial arts training, meditation and philosophy to the business environment. I worked as a lecturer but also produced synopses of valuable works on the subject for the consumption of businesss leaders. Perhaps surprisingly (or perhaps not) Zen philosophy of action has a great deal in common with modern agile development principles.

T T Consultants Ltd.

Front End Developer, Full-time

Jan 2018 – Apr 2020

Day to Day: Javascript, React, Node, GIT, SQL, AWS, npm, VS-Code, Data-Grip, PHPMyAdmin, Wordpress, Material-UI, Jira, Trello, Active Collab, Skype, Slack, Illustrator, Photoshop, Excel, Word.

Front end, DB queries, General QA, Spec New Work, Project Management.

Freelance (lockdown)

Javascript Developer

Apr 2020 – Sep 2020

Day to Day: Javascript. Solo developer of a Fintech electron desktop app for a private contract. Training system for Forex trading including numerous indicators and their display on candle charts.

Front end, DB queries, General QA, Spec New Work, Project Management.

Appius

Dev Team Technical Analyst, Full-time

Sep 2020 – Present

Day to Day: Javascript, React and Node, frontend and build tooling. Requirements capture and specification of work. Acceptance testing and code review. Code profiling and optimisation. Automated testing and documentation.