I am very much opposed to the concept of funlocking (where you have to unlock the fun part of the game). To that end, it is my opinion that the only thing that should keep a novice restricted to a novice match is fear. If they're not afraid of better players kicking the #@%* out of them, then I think they should be allowed to join higher-level matches. After all, how are they supposed to learn about buffing, fire prevention, effective ammo types, engie parkour, etc if they never see it in action?
If locking absolutely must be in place, I would recommend locking higher-level matches until merely level 5 or so, and locking novice matches after level 10. I would also recommend that the locking only consider the highest level class for higher-level locking. The novice "promotion" lockout might be a bit trickier, as a player might consider ceasing leveling at 9 to stay in novice matches; I would imagine that this could be prevented by using a combination of questions: "does this player have a level 5+ class," and "is the sum of this player's class levels 10+?" If the answer to both questions is yes, he gets locked out of novice matches. This crap is too complicated. I think a simple "sum of levels" or "sum of experience" would be the best means of locking players into/out of novice matches, but for GOD'S SAKE, don't make it take too long to unlock!