Nix is a dream come true. Due to the way the nix store keeps all dependencies separate and reproduces builds to a high fidelity, when you do need to build a system package (very rare, as most are just downloaded straight out of a binary cache), it will invariably succeed with few exceptions, and the resulting binaries will work correctly.
But the best part about nix vs portage is that it won't leave your system in a half way state. Upgrading NixOS means downloading or building a bunch of packages. This can be interrupted at anytime. At no point during the download or build will the old system become unusable. Nothing in the old system is overwritten. At the time you have everything built and are ready to change, the change occurs atomically and instantly. If the new system does not work, you can revert back to the old system atomically and instantly as well. In the rare case that the new system has made your computer unstable, you can reboot the system back into the old version without the need for a rescue CD or USB stick.