Homebrew gaming is probably the easiest way we can "practice" game design and actually view the results. Unless you're in a game creation circle and have some programming skills (even stuff like RPG Maker or RenPy require programmer skills to a degree) it's pretty had to find decent feedback for your design -- especially the kind where you actually see what people do and figure out why they're not doing what you intend. By comparison, you can just apply your own mods to your tabletop game or RPG and play it out and see the results, play situations over and over and see different permutations of your adjustments right away.
Part of this is because tabletop games have randomness, so even if people play "the same" the randomness helps a lot with seeing how adjustments work over the long term.
Just last night we played Sentinels of the Multiverse and we played against the Chairman for the first time. If there is one thing I am absolutely sure of, it's that Chairman is very poorly designed. His deck is designed to have no good counter AND to punish the things that can beat it. While no enemy deck should have a guaranteed answer, the Chairman has completely built-in consistency. I've been thinking about a lot of possible fixes for it.
My gaming group also plays D&D (3.5 E6, with some PF content) and 3.5, even when capped at level 6, has some pretty egregious balance issues. I'm not the DM, but I work with him a lot to address stuff that we both don't like, or stuff that I think is kind of dumb and imbalanced. I even do it for player stuff, even though I'm a player. There were a number of power creep feats that were either removed or nerfed because of me. Fortunately it's E6 so our feat builds are pretty flexible. On that note, I also try to help with the rest of the team's character designs. I don't tell people how to build, but I definitely offer suggestions and advice, especially where bad choices are involved. In case you didn't know, there are a lot of bad choices in D&D.
For the game systems I have GMed for, I've usually rewritten entire parts of the game. Probably most notably, I completely rewrote the Palladium combat system to somewhat make sense (though it's still bad, there is only so much fixing you can do) and rewrote a huge amount of content in the game from weapons and armor and magic and everything. I think my Palladium games are more homebrew content than anything else at this point.
On that note I'd also like to mention that sometimes games can't be saved. I did a lot of work on BESM (2nd, 3rd, and DX) as well as Palladium, and for the most part those games are not salvagable. You can make a lot of changes and adjustments and do a lot of work, but it really doesn't matter if the game is totally screwed. Palladium isn't totally but... you really have to work to have things fit and their magic system is completely busted beyond fixing. It's taken me actual decades to come to terms with how busted magic is in that game.
Being a DM/GM in general is a good way to kind of help put on the designer hat, and I'll possibly get into the difference between being a director/designer and being a writer at some other time. Either way, when I look at stuff that happens in a PNP game, I'm always asking myself whether such a thing is fair or reasonable. When my players trump stuff that I do in a game, I'm not always mad. Sometimes stuff like that is just clever, and other times it's like "this stuff trivializes the action economy in the game."
Let's give an example. In Palladium, dodging is basically an action tax, and if you want to do stuff in that game, the person who shoots first with a serious threat is the one who wins in a fight. Melee ends up being kind of underpowered even if you greatly buff its damage, because melee can be blocked as a free action. Likewise, any way of avoiding ranged attacks for free (typically by blocking) is desirable because it gives a chance of avoiding the ranged attack, but keeps actions free for creating your own threats.
This is especially troublesome because of the "no save or die" effects present in magic. There are a number of effects that allow no save except a dodge, and many of them can't be blocked. Some of these aren't game ending (some are just blinds for instance) but even a blind completely takes an enemy out of the fight for a very long time. So you have dodge-only attacks that instantly incapacitate.
Of course nerfing the attacks themselves is something you can do (I did that at first), but I realized much later that it was an underlying problem in the game system itself. If dodging is a huge action tax, then any attack that is dangerous and can't be blocked becomes a problem. Kind of hard to balance in that environment. Even worse is the fact that the game is sort of balanced around dodging taking more effort than blocking. If we converted defense in the game into something abstract like "armor class" or "defense rating," it would change a whole lot of other interactions in the game too.
There's a bunch of other issues in the game related to the action economy too. I don't like the D&D solution (you get one thing every turn) because anything that comes later and adjusts the action economy (like swift actions) has undesired effects.
This turned into a bit too specific about action economy. I have run into a lot of other troubles too, namely from scry-and-die (mainly via astral projection) and other such things. If you ever want to be a designer, you should consider how to handle these kinds of things when you run a campaign (or play tabletop games).