So we went from the Crowd based setup to LDAP / postgresql backed versions of the products. The big surprise for me is how divergent the products are. User setup and the cross application links are so different. The underlying postgres schemas are different. So the migrations were fundimentally different. (In hipchat's case it is understandable as the self hosted version of the softwre was new and somewhat beta)
It reminded me of how back in the 90s I heard that Microsoft kept the developers of different products in the Office suite apart.
Thus when you go to link the applications together you get weird redundancies and it all doesnt work as it should. Partly that is because the licensing is so separate. Atlassian support was pretty good in that they worked with us on it and also they provided unofficial scripts to help withthe process. They also recommended using Crowd to manage users which to my mind only added a layer of complexity - you should be able to add users directly from LDAP.
I ended up enjoying the migration project because I got to work with postgres which is great software.
Atlassian is bloated and in my opinion they havent worked on cross application connectivity enough. It should be seamless.
My company (at the time) ended up hiring a fulltime person to manage the complexity (ie an Atlassian admin) plus a few consultants to get the workflow stuff down.
It is good when you have jira and confluence running well - but it takes a lot of time and money to get to that point.