I think Express is a nice choice for backend, it's very simple and gives you a lot of control.
About templates, I used to work a lot with EJS but I'm mostly writing Angular apps right now, so there's no server-side template rendering, just requests/replies (containing JSON) between the client side app and the backend. I prefer gulp over grunt, syntax looks clearer for me. I haven't tried Babel yet but it looks promising, it's very probable that I will use it for my next project.
Other tools I'm using for deployment, etc.: I'm deploying my apps to AWS / Amazon EC2 through Tutum. When I push stuff to a repo, Github triggers a request to CircleCI (testing), when CircleCI is done, it triggers a request to DockerHub, DockerHub generates a new Docker image and this process ends in Tutum. Tutum is notified everytime there's a new image available, it will take care of redeploying the container in your instance(s), also it lets you scale up by setting up new instances, "clusters", etc.
You may reach me at matias AT insaurral.de if you have any specific question/problem/etc.