I usually makes parties of three so I have to create three classes (havy warrior, light warrior and mage in one; Warrior, mage and healer in other and warrior, mage and paladin in the third). My way of balancing them out is rather simple: I choose two random numbers, the first humber will be how much the characters' stats will add up at level 1, the second the same at level 99. So everyone has the same points distributed according to their specialties. As for skills I usually look at other games for inspiration, but amongst my preferred thing about them there are: not doing many hit all skills, they take out the fun of choosing targets, the ones I do create are very situational; dividing moves amongst allies, so the warrior will have the strength buff and the paladin the defense one (also buffs should be fun, in one of my games they're heals as well, in another they are followups to weak attacks);create pieces of equipment that compliment that character in a fun way. (a low defense armor that you can equip your priest with that increases holy spells power for example). Status effects should be handled with utmost care but shouls always be effective ways to counteract some enemies.
I dunno... those are the first that come to mind, since I like a challenge I usually give enemies abilities similar to the characters'.