Currently I have been working mostly as FrontEnd SPA developer so I would like to share some thoughts about this interesting topic.
I would like to periodically update and add there some hints, which may find someone usefull.
Preferred (my) technologies and frameworks:
Unit testing of React application:
It's simple to get lost with component state when we are mixing it with properties. We need to make sure state is always updated with passed properties.
There are important differences need to know when working with component constructor and componentWillReceiveProps:
Use stateless components when using Redux. Try to avoid containing local state in components - do it only in edge cases, eg. some internal styling or state which may not be needed outside (in other components) in any circumstances in future.
(article is still in edit, last quick update 2017 march)