Guest Service Officers on RCCL definitely share cabins with 1 other person from their department. The cabins are quite small and have bunk beds. You don't really get any discounts off food and drinks. There are restaurants that passengers use that you can go to like Johnny Rockets burger bar and the fine dining restaurants but you pay the same as the passengers. I think in some bars you get a discount and there is food for all crew in the mess and also a crew bar that is quite cheap.
As far as I know Guest Service Officers don't really get tips but you do have direct contact with guests as your job is standing at the front desk helping them and dealing with their complaints. The hours are between 8 and 11 hours a day, 7 days a week but sometimes Guest Service Officers can earn a day off.
I hope that helps and good luck!