More than 10 years ago, I realized that I had a dead hard drive once every year or two, and I needed to reinstall and reconfigure everything, a process that usually took a better part of a month.
That nudged me to custom partition setups (e.g. having a separate partition for each home), using of portable apps (software that you do not install at the OS level, but merely unpack in a chosen folder and execute it from there), apps that will set all their needed configs and plugins inside your homedir, and virtual machine for special tools (including a Windows virtual machine when I need to test the software I build on a Windows).
How is this relevant to your question? Well, an immutable OS like Silverblue is nudging you to do the same thing. Leave the OS untouched, and do the most you can in containers, flatpaks and some portable apps.
I mostly develop in Java. I have a portableapps folder in my homedir where I have many apps that are happy to work that way. I have eclipse downloaded as a zip and unpacked there, 3-4 years ago, setup with all plugins I need, and I just run it from there every day. I don’t upgrade it unless I have to. If I have to, I download the new version in a new dir, and make it use a new workspace. I use sdkman to install as many Java versions I need inside my user profile and easily switch between them whenever I need. I have maven unpacked in the portable dir. I have several unpacked version of the Tomcat.
You asked about nodejs. I don’t use it much, but when I needed it, it worked just fine when unpacked in the portableapps dir.
In addition to such setup with portable apps, which is a good practice for any developer (even on Windows, as I started working that way 15 years ago on Windows), immutable OS like Silverblue (with podman and toolbox readily available) helps quite a lot with making containers at your fingertips.
I now have a dozen of containers (setup with podman) for some specific things that are harder to setup as portable apps manually (e.g. container for postgresql database for application A, another one for the database for application B with some specific plugins, another one for a test-bed authentication web server, another one for PHP, another one for Perl cgi-bin development).
So the OS is stable, and you install all the experimental software that as a developer you need to have installed and to experiment with, in places where it can’t do damage to do OS. Yes, in containers.
So that’s why I think that although Silverblue will be great for people that are illiterate, so that they can not damage the system, it is even better for developers, because it nudges your towards a better way to do things.
There are issues and some annoyances. Due to restrictions some flatpak apps do not remember the last folder you used to save some downloaded file, so that they offer some internal contained folder, and you have to navigate to the Documents/subfolder you need repeteadly again and again and again on each file save. Some flatpak apps do not communicate well with regular apps (e.g. browser and password manager via some specific protocol). Some apps that are distributed as rpm can not be installed via rpm-ostree due to mismatch of lib versions, or might prevent future upgrdes via rpm-ostree upgrade, so I had to install them inside “toolbox”. But running a GUI app inside toolbox turned to be rather slow (I have yet to find time to investigate why and what can I do to fix it).
Still, I am on Silverblue and Kinoite variant as a daily driver now, for several months, doing teaching online classes and development. I don’t have another OS to boot from, so whatever happens I have to endure it and fix it. I change distribution or hardware on yearly basis, just to keep me fit. The process is easy, due to the way I have partitions and portable apps setup.