This is an interesting question. The only thing that comes to mind that we are doing now is by creating custom roles in the Admin area, you can quite granularly select which content types etc. that each role has visible to them. In this way you could sort of customize what each user sees, content-wise, when they log in by applying different roles for them.
If you’re looking for a completely customized experience, with different logos, colors, or whatever then that may be doable using a custom function that runs at login to apply different settings.