Here are some tips on picking a good bank:1. If you like to visit the brnach, try to find one that's near where you work or live or at least pass by. If you use ATMs or point-of-sale in stores alot, then the brnach location doesn't really matter. However, if you need service from live people, you need to find one that has easily accessible employees.2. The smaller local banks almost always are tops in service. Look for a mutually-owned (vs. stockholder-owned) bank not too many of them left, but there are some. These banks don't have to answer to their stockholders where the stock price is the overriding decision-maker of all things. You'll find these banks have good employees who have left the bigger banks after they've merged or been acquired.3. What's most important to you? Higher deposit rates, lower mortgage/loan rates, free ATM use, free checking (all banks have this, but watch for loopholes)? Zero in on your local bank that offers what's most important to you.4. As far as your overdraft fees, you're getting charged for what's called uncollected funds, or monies you've deposited that your bank hasn't yet collected or been paid for from the bank upon which your deposited check is drawn. Ask the bank how many days until my funds are considered collected? Smaller banks will typically give you collected funds in one day. Bigger banks clear checks through several channels and often will hold your money for up to 5 days. This is important, so ask the question. You'll find many variances among banks.Good luck!