Pros
Excellent entry-level positions for students or those who want a second job. Can choose how many hours you want to take on, although when I was working on-call I couldn't pick up more than 20 hours a week, 4 hours a day without going into overtime. Shelving shifts were 4 hours, which works well for those who want flexibility or have other commitments. Laid back, low-stress for the most part. Coworkers were pretty nice and helpful.
Cons
It is difficult to obtain regular employment and to move up. My position was unionized and while seniority wasn't the sole deciding factor, more often than not it gave applicants a strong competitive advantage. Employees typically worked on-call and part-time for many years before securing something more stable and high paid. Hours for full-time positions could be slashed so that employees no longer qualified for benefits. This was not a workable/realistic arrangement for everyone, so there was a fair amount of turnover. Changes were slow and communication was often not unified across departments and the organization as a whole. The performance management process had room for improvement, as it was not always clear what criteria employees were being evaluated on and there was a lack of regular feedback/check-ins with supervisors and managers. Management tended to pick on and try to resolve insignificant issues while missing the big picture and ignoring more looming and pressing problems.