If you Google “Redis systemctl too many levels of symbolic links” you’ll find many results. I haven’t had such issues with recent versions of Raspbian, but I recall it was a problem on older ones. Usually trying with both the names redis.service and redis-server.service helps, otherwise you may want to investigate which redis.service file the system is trying to start and make sure that it’s not symlinked. Worst case scenario, you can make your own systemd service or bash script that simply launches the redis command.
npm is the Node.js package manager and it’s not installed by default — you may have to run apt install npm.