As one of the most popular content management system, Drupal made web development hassle-free. But this does come at a cost. The default Drupal front-end is poorly designed.
By default, a Drupal site scores low on YSlow. To counter this problem, one can use modules and customizations to change the default way Drupal behaves.
Here is a good article details the steps can be taken to help CSS JS aggregation, header control, GZIP etc.