If you have a sufficiently JavaScript-heavy client-side codebase, there is a very strong argument for essentially unifying the server-side and client-side tooling. Being able to write and run unit tests in exactly the same way (jasmine or mocha), being able to use the same IDE or text editor plugins, being able to use the same package manager (npm), being able to move client-side and server-side developers relatively effortlessly, being able to use the exact same build tools (grunt or something else). You also get to share code between the client and server (this isn't a huge benefit, though).
As a bonus you get the fact that node.js can scale better, though this should not be a huge concern.
Python has a real advantage if you're doing lot's of data analysis / machine learning, as the node.js ecosystem for those applications is nearly non-existent.
Comments
If you have a sufficiently JavaScript-heavy client-side codebase, there is a very strong argument for essentially unifying the server-side and client-side tooling. Being able to write and run unit tests in exactly the same way (jasmine or mocha), being able to use the same IDE or text editor plugins, being able to use the same package manager (npm), being able to move client-side and server-side developers relatively effortlessly, being able to use the exact same build tools (grunt or something else). You also get to share code between the client and server (this isn't a huge benefit, though).
As a bonus you get the fact that node.js can scale better, though this should not be a huge concern.
Python has a real advantage if you're doing lot's of data analysis / machine learning, as the node.js ecosystem for those applications is nearly non-existent.