I don't know...
The Jobs are, seemingly, only really meant to expand on or specialize the capabilities of the Class that they work with, so to me, it seems like it would make more sense for each Class to be capable of the different roles by way of different Jobs attached to them.
The downside to that, of course, would be that it would pretty much just be a spec system at that point, with each Class having three available Jobs, each working for a different role. So in the end, what started out looking really flexible, actually leads to very few options.
I say just give all Classes/Jobs abilities that enable them to perform the different roles, and from there just restrict them in such a way as to not allow omnipotence. High price point abilities or 'if you take this, you can't take that' setup's are very minor examples.