do a search on the internet "roofer in your city" or use the yellow pages or seek the BBB or ask neighbors.
I roofer roofs, a General contractor will seek a roofer to do the job and you will pay both. I personally think and feel that a roofer will be much cheaper than going through a GC who will then get a roofer.
Get estimates, three, before you make any decisions and be sure to have the job include new turbins, new stacks, new roof edging in your gutter colors and also to get new gutters. In my area, the roofer usually throws in gutters, turbins, wind driven, and of course new roof edging. Make sure that they also do a magnetic roofing nail search of the grass. If not, you will be picking up roofing nails for ever.
Decking, sometimes, if your not there, and you need new decking, they will cover it quickly so that you will not see it and nothing said. The day they rake off the old shingles, be there to determine if new decking is needed. If you need it and don't get it, the next time you go up there to check out something, you might fall all the way through. I am soo serious.