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
- NamePeter
- ResidenceLeeds, UK
- Emailportfolio@bitinix.com
- LinkedIn linkedin/bitinix
- GitHub github/bitinix
- NPMJS npmjs.com/~bitinix
skills
DB skills
Worked with MS SQL server for over 20 years, MongoDB 6+ years Also SQLite3 MYSQL PostgreSQL
Technologies
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
Testimonials
Ipsum ab necessitatibus numquam vitae quis. Nobis nostrum deserunt suscipit eos fugit. Consectetur dolorum temporibus facilis impedit exercitationem dignissimos.
Ipsum ab necessitatibus numquam vitae quis. Nobis nostrum deserunt suscipit eos fugit. Consectetur dolorum temporibus facilis impedit exercitationem dignissimos.
Ipsum ab necessitatibus numquam vitae quis. Nobis nostrum deserunt suscipit eos fugit. Consectetur dolorum temporibus facilis impedit exercitationem dignissimos.
skills
-
-
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
RESTful JSON XML
-
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.
Project: VIES-VAT
NPM Package VIES-VAT
European VAT Number Validation
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
Callback example
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
awaitTest()
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'
Debug
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 'ec.europa.eu' from your server
Add the following entry to your host file:-
147.67.34.30 ec.europa.eu
Personal Information
- NamePeter
- ResidenceLeeds, UK
- Emailportfolio@bitinix.com
- LinkedIn linkedin/bitinix
- GitHub github/bitinix
- NPMJS npmjs.com/~bitinix