Pros
Co-workers honestly make the job bearable. Make friends, it makes getting shifts covered, employee work efficiency (as much as your manager will tell you this is not the case, people work better when they're with people they like/their friends) so much better and easier. If you give enough notice and your manager isn't terrible, they're usually pretty flexible with students as long as you're not no-showing last minute. If you want to and can manage to get a managerial role, Old Navy will help pay for schooling if your degree relates to or can be used at the company (at least this was the case at the locations I worked, this may change region to region).
Cons
I had to fight tooth and nail to get a raise past the "yearly increase" based on Old Navy store wide metrics. I took on leadership roles that I was told came with an automatic pay increase, never happened even after I fought for it. I took on shipment and department lead roles, working directly under certain managers to learn marketing plans and ins and outs of shipment management. After doing this for well over a year and being told I was "setting company records", still no raise but was offered $5 starbucks gift cards. This being the case and being close with my General Manager as well as the new District Manager of my city, we all fought with HR to try to get my a pay increase which dragged on for about 6-8 months. Finally I was offered an additional $0.25/hr on top of the $0.10 annual raise I had gotten, to which I replied with a 2 week resignation. In other words, don't expect anything much above minimum wage, even if you're "setting records".