I agree with nckwntzl. Skills earned over time would be a lot better. How about items earned though a game. These games are usually long, and backbreaking anyway. So lets just say that Everyone starts off the same over time and as they progress through the map they each person can pick up an item that lets them specialize. For instance, one player picks up a medkit, and are now able to to heal players (if the zombies are no longer 1hitter quitters) or able to bring someone back from the dead (maybe after a charge/recharge period). Or a player picks up some sort of riot shield, that prevents him/her from getting killed by any zombies in the front, allowing survivors to ram/spearhead through thick sections of zombies (of course, the shield would break over time). Their could be blowtorch that allows players to fix broken items or prevent them from breaking (maybe materials such as scrapmetal can be pick up here or there).
I'm sure that Items with such abilities, would be allot easier to script then an entire class and experience system. That would make the game ALOT more strategic, and allow players a more diverse gameplay without needing to add a whole class system.
Items with certain abilities, sounds more realistic, and simpler.
Maybe the blowtorch can fix weapon durability, as to prevent jamming and etc.