About Me.

Senior Node.js Software Developer

Delivering creative solutions while utilising latest technologies with extensive skills developing complete software solutions using latest technologies.

I am a creative problem solver that is passionate about creating scalable, modern solutions to complex problems in an efficient manner.
. A methodical programmer with a focus on design, code readability and documentation
. Expert troubleshooting skills and the ability to analyse problems and associated data structures
. Excellent analytical and communication skills
. Proven ability to be a self-starter
. Enthusiasm for evaluating and understanding new technologies

Enterprise-level development skills
. Node.js v4-v18 Express.js , 6+ years
. Front end Technologies JavaScript Jquery HTML CSS
. Multiple JavaScript frameworks including React.js vue.js
. Build systems, tools and deployment mechanisms
. Creating NPM modules
. Developing RESTful APIs with Node.js inc Webservices & SOAP
. Databases - PostgreSQL, MySQL, MSSQL, SQLite, MongoDB, Redis

Personal Information


DB skills

Worked with MS SQL server for over 20 years, MongoDB 6+ years Also SQLite3 MYSQL PostgreSQL


6+ years skills in Node.js development, Also 20+ years Javascript, PHP, Python, Cobol, Pascal, Basic

Front End Design

Javascript 20+, Jquery, HTML, CSS, Vue.js & React.js

Frameworks / Libraries

Front end solutions using vue.js & React.js frameworks and Server Side Rendering Techniques



  • Programming

  • Database Systems

    MSSQL MySQL REDIS Postres MongoDB
  • Javascript Frameworks

    React.js Next.js Vue.js
  • Front End

    HTML CSS Bootstrap Javascript JQuery
  • Collaboration

    GitHub GitLabs
  • Project Management

    Trello Asana
  • API Development

  • Senior Software Developer

    Node.js From 2015

    • Updated old code bases to modern development standards
    • Collaborated select ambitious & realistic milestones
    • Led version control efforts for organization
    • Developed open source solutions
    • Integrated constructive programs into cohesive product • Discussed issues to provide resolution & apply best practices.
    • Collaborated on stages of systems development lifecycle
    • Planned and developed interfaces that simplified overall management
    • Developed software for desktop and mobile operating OS
    • Developed clear specifications for project plans
    • Designed intuitive graphical user interfaces to improve user experience.
    • Documented technical workflows and knowledge to educate employees.
    • Designed customized solutions
    • Designed reusable and reliable code
    • Coordinated with project management on database development.

Contact Me.

Let's Talk

Project: VIES-VAT


European VAT Number Validation

VIES-VAT status Badge VIES-VAT license Badge VIES-VAT license Badge VIES-VAT twitter Badge

What is VIES-VAT ?
A lightweight quick and easy to use NPM package written in node.js A simple request with country code & VAT number ( timeout & debug optional ) will allow you to verify the validity of a VAT number issued by any European Union Member State via the VIES System. The returned response will show whether the VAT number is valid or not and any extra company information where available.

What is VIES ?
VIES (VAT Information Exchange System) is an electronic means of validating VAT-identification ( VATIN ) numbers of economic operators registered in the European Union for cross border transactions on goods or service.

Get started
npm install --save VIES-VAT

Callback example
var vies = require('VIES-VAT');

var viesOptions = {
   "countryCode": "xx", // ie FR
   "vatNumber": 'xxxxxx', // vat Number without country code
   "timeout": 10000 // optional - default 30000 ( 30 seconds )

vies(viesOptions, function (error, viesInfo) {
   if (error) console.log('vies callback test - error ', error)
   console.log('vies callback test ', viesInfo)

async/await example
var vies = require('VIES-VAT');

async function awaitTest() {
  var viesOptions = {
    "countryCode": "xx", // ie FR
    "vatNumber": 'xxxxxx', // vat Number without country code
    "timeout": 10000 // optional - default 30000 ( 30 seconds )

  var res = await vies(viesOptions)
  if (res.error) console.log('vies sync test - error ', res.error)

  console.log('vies sync test Result ', res.viesInfo)

Valid Response
    valid: true,
    countryCode: 'xx',
    vatNumber: 'xxxxxxx',
    requestDate: '2021-12-08+01:00',
    name: 'Company Name', // if available
    address: 'Company Address' // if available

Invalid Response
    valid: false,
    countryCode: 'xx',
    vatNumber: 'xxxxxxxxxx',
    requestDate: '2022-05-08+01:00',
    name: false,
    address: false,
    error : 'Error message'

Error Messages
'vies Badly formed request - Check vatNumber & countryCode'
'vies Badly formed request - vatNumber is empty'
'vies Badly formed request - countryCode is empty'
'vies Badly formed request - Not EU Country'
'vies vies call error'
'vies Timeout'

Add the Debug key to your options
This will give more details of the call including errors
async function debugTest() {
  var viesOptions = {
    "countryCode": "xx", // ie FR
    "vatNumber": 'xxxxxx', // vat Number without country code
    "timeout": 60000, // optional - default 30000 ( 30 seconds )
    "debug": true // optional - default false
  var res = await vies(viesOptions)
  if (res.error) console.log('vies debug test - error ', res.error)
  console.log('vies debug test Result ', res.viesInfo)

Common Issues
Receive Error when testing a valid VAT Number
This could be an internet connection issue or dns lookup
Check that you can ping '' from your server
Add the following entry to your host file:-

Personal Information