I feel that many people are pushed to rescue dogs, whether it's the "Adopt, Don't Shop!" t-shirts and mantras, or the semi-shaming of dog breeders on Facebook. Unwanted and homeless pets is truly a tragedy of our society; things need to change. But if you are getting ready to acquire a dog, you should look carefully at all your options, including the option of an educated purchase of a quality puppy from a good breeder.
When you rescue a dog, you are venturing into unknown territory. Some rescued dogs come with a history and some information (early training, if they've ever bitten, if they're afraid of anything), and some come with no information at all (for example, if the dog was found as a stray), and some come with a bit of history and background, but you'll eventually discover that it was either guessed at or a deliberate falsehood (common with dogs adopted off Craigslist.)
And yet, people really really want to rescue dogs. It can be very rewarding if the dog makes a full adjustment to his new life. And sometimes you'll find that you've lucked out with the absolute perfect dog; you've found and cultivated a true diamond in the rough. So here are some suggestions on how to stack the odds in your favor if you are going to rescue a dog.
1) Don't overestimate your training experience and skill. If you've had dogs before that's great, and it definitely puts you in a better spot when bringing in your rescue dogs. But if you've never had experience with problematic behaviors in dogs you don't really know very well, then you'll feel like a beginner again. That isn't to say you won't be able to manage and train through certain behaviors, but it does mean that you might be walking into a situation where you don't have all the answers.
2) Decide in advance if there is anything that you simply can not live with, if it comes up. If you are willing to tackle just about anything, but can not accept or live with the risk of a dog who's (for example) aggressive to your cat, and if potentially fixing it through training isn't good enough for you, then be clear with yourself about that. It will make decisions about returning the dog to the rescue much more clearcut.
3) Don't underestimate how much time behavior problems take to change. Behavior problems are hard. They're hard for everybody, including dog professionals. There's usually not a quick fix. Change can happen slowly, even if you're doing everything right. For serious behavior problems, you could be talking months or years, rather than days or weeks.
4) Understand that some things might not be "fixed." You'll definitely get a lot of improvement, if you're diligent. But it's likely that your severely leash-aggressive dog may always need some degree of special handling when in certain situations, and other situations may never be workable for your dog.
5) Make sure everyone in your household is willing and able to work with a dog of unknown history and behavior. Behavior problems can be frustrating or even scary. If a family member is nervous or uneasy of dogs, or has a short temper and low patience with them it will make things harder on the dog and possibly harder on your family life. There will likely be times when you and a family member disagree on a training method or how you are going to handle a specific problem. If your solution to a serious housebreaking problem involves baby gates and supervision, and your partner's solution involves shock collars and intimidation, think in advance about how you're going to navigate this.
6) Understand that even if your dog does come with a "history" or a "behavior report" or "temperament test," these reports might not be accurate. Some people and shelters are very open and honest about the dog's behavioral history, but many are not. Just because your dog is reported to get along just fine with kids does not mean that you should be over-casual when it meets your own kids. The smartest thing to do is judge the dog's behavior that you see, rather than what you read on a report.
And best of luck to you and your new rescue dog!