An endocrinologist is a doctor who specializes in treating diseases that affect glands that produces hormones. Conditions that a cardiologist can address include diabetes, thyroid & metabolic disorders, osteoporosis and hypertension.