I know I'm a bit late to answer the teambuild question, but I really wanted to add on to what Indigo Plateau said in his outstanding post, and share some of my thoughts and my philosophy when it comes to teambuilding.
My main philosophy is that your team needs to accomplish a very simple goal: win the most games possible, so you should cater your team to achieve that result, well that's obvious. But the point is: your team needs a win condition, a goal of sorts. And this changes so much from playstyle to playstyle, here is a basic rundown of what I feel are the most important aspect of the three main types of playstyles and how you should orient your teambuilding to make it successful in my book.
For instance, with
Hyper Offense
your prime goal is to overwhelm your opponent's defensive backbone to the point of one of your several sweepers being able to break through and sweep, so it's your goal as a builder to maximize your odds of making that happen; obvious tools to have are hazard stacking with Stealth Rock and Spikes; conditions that easen setup such as Dual Screens; speed control to help your Pokémon sweep such as rain; a teamslot dedicated to a Pokémon that can break past bulkier teams—Stall—that have ways around setup such as Mega Gyarados and Manaphy; and overall offensive Pokémon with offensive synergy that appreciate one wearing down another's checks; making sure your team has enough counterplay to not let other sweepers sweep your team, so basically pack something for opposing Shift Gear Magearna and Quiver Dance Volcarona, for example to not let them set up; and lastly having an offensive switch in to problematic powerful and fast Pokémon that could beat your team otherwise, examples include Ash-Greninja, Choice Scarf Kartana, and Mega Alakazam. I think these are your main concerns with more offensive teams by nature. Obviously, you can never tick every single box and every team is bound to have a weakness or two, but these are just ideas I like to have in mind when working with such a playstyle.
Balance
and to a lesser extent Bulky Offense have the premise of having a stronger defensive backbone so making your opponent take down your team isn't as easy, but still having your own breakers and faster Pokémon to help you whittle down and clear your opponent's team. So with these two playstyles you should try to juggle two attributes: the Offensive department and the Defensive department. Can your team break past a wide variety of different defensive structures? Can it break Balances with this and that core? Can it break full Stall teams? Lastly, does your team have a win-condition, a faster Pokémon that pick up where your breakers left off to clean up your opponent's team? But you should also be covering the other side of the spectrum. Can your team switch into key Offensive threats? If you don't have a proper switch in to a certain offensive threat, can your team at least punish it and dissuade it from switching in or setting up? Or can it revenge kill any troublesome sweeper your defensive backbone can't take care of? Remember, with Balance you can tackle any would-be-threats with both the Offensive and Defensive department. Can't fit a Toxapex to always beat these Volcaronas? Perhaps a Choice Scarf Greninja could help revenge killing it? The other way around is also truth. Hard to fit something that revenge kills Shift Gear Magearna because there's literally nothing viable that accomplishes this? Try covering it on the defensive front with an Assault Vest or Heart Swap Magearna of your own, or perhaps the combo of Toxapex and Heatran, which very few Megarna sets can actually break through. That type of mentality is the goal here. Obviously you're bound to have a Pokémon or two or perhaps a core or two that your team kind of lacks enough counterplay for, but that's the way things work at times, you can't handle 807 potential Pokémon with only a team of only 6 of them. So yeah, your bread and butter with Balance is to handle as many Pokémon and cores as you can, be it on the Offensive front, Defensive front, or maybe even a mix of both. Sure there are always other roles that a Balance team should strive for, such as Stealth Rock and Defog users, but these are in a way parts of your main goal of overwhelming your opponent's defensive backbone and not letting them overwhelm yours, respectively. Other tools can also be employed by Balance such as sand for speed control making cleaning up teams easier, or momentum grabbing pivots such as Rotom-W and Tornadus-T to give your breakers some extra opportunities, et cetera.
Bulky Offense sits in a bit of a in-between state from that of Balance and Hyper Offense—presumably—but your main plan when building still feels a bit more similar to that of Balance from my personal experience. You want to cover stuff on both Offensive and Defensive fronts, but this time with a bigger emphasis on the Offensive side, you don't exactly need a switch in for everything if all your team members don't give it a chance to attack or set up in the first place. And while something like Rotom-W or Flynium Z U-turn Defensive Landorus-T may not be the very best checks to many physical attackers out there, they do provide plenty of momentum. So that's the main premise here.
Onto the other end of the spectrum:
Stall. With Stall your main goal is to slowly whittle down your opponents team while they get no chance to break through your Stall team, so this not only means having a defensive check for the most number of breakers possible but also keeping hazards off so checking such breakers is guaranteed. Finchinator already went extremely in-depth with a post on Stall
here, so I would recommend giving it a read if you're interested in the playstyle, Finchinator has far for knowledge than I could ever provide on this playstyle, so no point in doing anything but linking his post.
Lastly, there's
Semi-Stall which is in between Stall and Balance but this type of playstyle doesn't seem to be that great in the current metagame with most people preferring full out stall or just doing enough to call it a Balance team so I will sort of gloss over it, especially since it's the playstyle I have the least ampunt of experience with myself, but an approach somewhere in between that of Stall and Balance is what I would expect to see here, but yeah I can't really say for sure.
One thing I'll echo from what IP said is that you should most definitely test your teams. It's nearly impossible to tick every box for your teams in one sitting so testing you'll realize blank is too big of a threat and you need to do something about it, that way you can tweak your team afterwards to make it better overall.
So that's my philosophy, really. It's a lot more abstract than what Indigo Plateau proposed but it's the way I like to think about teambuilding. I hope my take on the subject was helpful to you or anyone reading. Feel free to reach me out for any questions too, and thanks for reading :)