You may eventually want to pin your project to a specific node version, and homebrew aggressively upgrades dependencies with no easy way to run older versions, other than setting up your own tap.
Older software will tell you when you need NVM. A good example is I recently worked on a project requiring Node version 9.x or earlier (I don't remember why). Installing Yarn via brew installed Node v11.x. Even if I installed Yarn via brew without the Node dependency, brew upgrade would install Node whenever a Yarn upgrade was available. NVM, and alternatives like ASDF (some people like it, I don't care for it) we're created to work around blocking node version conflicts. Another option is developing in Docker containers, but using Docker is way beyond the scope of the beginner friendly setup in this article.