For that breed mix... If you're willing to spend some coin, here's what I would do:
1) Whitening shampoo. I use Shiny Silver Ultra from Sally Beauty (it's a Conair product, fine for dogs) but I've used a bunch. I like the SSU because it rinses out really clean and doesn't leave anything behind in the coat. You can use the whitening shampoo over the whole dog; no need to avoid the spots. If you've got problems with grease, you may need to use something first to cut the grease. Ivory Liquid dish detergent, diluted a TON (a squirt in an empty bottle, fill with warm water, shake, and use that to wash with) is a great degreaser and the formula is very close to a dog shampoo. Do not use Dawn or Palmolive.
2) Rinse like crazy. Rinse until you feel ridiculous, then rinse for five minutes more.
3) Use Chris Christensen Thick n Thicker Foaming Protein throughout the coat according to directions. Rinse. (Get this at Cherrybrook or at a dog show in your area)
4) Use Chris Christensen After Bath throughout the coat according to directions. Rinse.
5) Always blow dry, don't air dry. The best is a forced air dryer made for dogs but you can make do with a human hair dryer that has a no-heat or low-heat setting. Never allow genuinely hot air to get to the skin; dogs are even more sensitive to heat than we are. If it's not comfortable for you to have your hands in the stream for an extended amount of time, it's not comfortable for the dog. Brush out the dog as you're drying, and keep drying until every bit of moisture is out of the coat and the hair is relatively straight.
They should now look like a ball of hair
. I find that the reallllly puffy look lasts a couple days and then they just look well-groomed and fluffy after that. My dogs get bathed once a week or once every two weeks at most, so they don't really get a chance to get disgusting, which is another key. You have breeds that were never meant to be ungroomed, so the more you bathe the better.