Do research your contractor through the Better Business Bureau, Home Advisor and elsewhere on the internet.
Do hire a contractor who is licensed. The state of Minnesota requires all roofing contractors to be licensed.
Do make your contractor aware of all problems you are having with your home (ice dams, ceiling damage, water coming through windows, peeling paint under your eaves, etc.).
Don't pay a contractor 100 percent of the funds up front. Reputable contractors ask for a down payment to begin work and final payment on completion of work. We require 1/2 down at contract signing and the remainder upon completion of the project.
Don't forget to have a city inspector sign off on the building permit. This will ensure installation work meets state building codes.