Node.JS Development & Consultation

I’m a Node.JS developer and a consultant and I Love It. Writing code helps me be a better consultant and vice versa. I work with some known Israeli startups and large enterprises usually to craft large-scale, distributed, cloud application. See below a list of technologies I aim to master and a list of services I provide. Should you want to work me – I’ll be glad to discuss by phone 972-50-7621940 or by email



Following is a list of technologies I’m highly acquaintance with.

Node.JS stack, JavaScript in all flavors (ES6, TypeScript, etc), MongoDB, PostgreSQL, mySQL, SqlServer, Redis, Docker, AWS, Google Cloud, RabbitMQ, Microservices, Angular (4+)

Services and Packages

  1. Accompanying development teams – Working closely with a Node.JS team in getting the most strategic decisions right: setting the architecture, choosing the right technologies and components, planning the development workflow and any other mission that can empower the development
  2. Development – Fully out-sourcing a product or a module where I provide a working application that has 95% testing code coverage, crafted with state of the art technologies and complies with all the best practices of the industry
  3. Project setup – Configuring and Initializing the code solution so that it follows all the best practices, avoid common mistakes and push the development team to write a maintainable application. Practically this involves the following activities: Setting the project structure, configuring various types of unit tests, configuring a continuous deployment pipe with auto-deployment to common cloud vendors, GIT setup, docker-izing the application, choosing mature and useful libraries for the common tasks, sharing code templates (i.e. snippets) for common tasks, setting the error handling strategy and many other activities
  4. Production optimization – planning and configuring your precious live environment for resiliency and transparency. Big words aside, this includes configuring the right process and tools for deployment (with zero downtime), guarding the Node processes and initializing upon failure, monitoring the cluster with focus on important Node.JS metrics, setting up automatic scalability and others
  5. Code review – Collaboratively go through the code solution and together with teams identify strategic issues that might greatly affect the maintainability or the production stability. This is always done in a friendly manner by speaking about the current state and realizing alternative paths that might yield a better solution

From My Twitter: Node.JS Best Practices

Great discussion about the future of tests in #Javasvript with:
Nancy Du (@rangleio)

Courtesy of @TestJSSummit

📢 Test polls, episode #6

Say your code sends SMS given a vendor library /npm/@smslib, your code has a wrapper around it - smsWrapper. During test you must avoid sending SMS.

A - Stub vendor lib /npm/@smslib
B - Stub our smsWrapper
C - Intercept the HTTP calls of /npm/@smslib

When you say "Microservices", what do you mean?

A - At least logical code separation (bounded context). For example, using folders. A Component approaches others via the network only. All can run in same process

B - Physical runtime separation of processes/container is a must

Many of us write this type of generic code:

if (req.session.isAuthenticated()) {
res.redirect(req.query.url);//redirect URL comes as param

Think again, this can lead to phishing and other 'social' attacks. From our security section 👇

🇯🇵 Yay, our guide is now translated into Japanese 🇯🇵

Awesome work by Yuta Azumi and YukiOta 💜

Node.js ベストプラクティス

(You may find a translation for 12 other languages)

Load More...