One thing I liked about nix in this capacity was the "nix-shell" facility, which could be used to create a whole hermetic dev environment with all the right versions of things and all the right environment variables set up, etc. Similar to similar uses of docker but more integrated with the rest of the system -- not as "sealed off" from the rest of the distribution, e.g. I could still use my emacs config inside it, etc.
* Guix Shell https://www.futurile.net/2023/04/29/guix-shell-virtual-envir...
I did two specific posts about using it for 'development' environments. You can also 'fix' the environment (think a git hash) and use the declarative configuration to share it with others:
* https://www.futurile.net/2023/04/30/guix-reproducible-dev-en...
* https://www.futurile.net/2023/10/17/guix-time-travel-dev-env...
Hope they help - if you have a play and get stuck the mailing list is really good and I posted about the Meetup further up.