I have found during my experience with Sitecore that it can take a long time to load when the system first initializes (Happens after publishing code or changing a configuration). This becomes frustrating for developers who are creating the website as for testing they have to wait for some time even while making small code changes. After looking at the log files and seeing what steps take the most time to run, I was able to do some research online and find out that I could change a few Sitecore configurations to make the system load faster. The changes I made are for Sitecore 9.0.1 but similar changes can be made for earlier or later versions of Sitecore. Below is a compilation of all the changes I made to make my Sitecore instance load faster.
1) Add optimizeCompilations=”true” to the compilation tag in web.config.
Replace the line

<compilation defaultLanguage="c#" debug="false" targetFramework="4.6.2”>


<compilation defaultLanguage="c#" debug="false" targetFramework="4.6.2" optimizeCompilations="true">

2) In Sitecore.Xdb.config located in \App_Config\Sitecore\Marketing.xDB turn off tracking and analytics by setting Xdb.Enabled and Xdb.Tracking.Enabled to false
3) Turn off device detection in \App_Config\Sitecore\DeviceDetection.Client\Sitecore.CES.DeviceDetection.config by setting DeviceDetection.Enabled to false
4) Patch the following configuration to make the sure the agent doesn’t run every 10 seconds. It appears to be related to list management. (Source: https://community.sitecore.net/developers/f/5/t/8920 )

<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/" xmlns:role="http://www.sitecore.net/xmlconfig/role/">
 <sitecore role:require="Standalone or ContentManagement">
 <agent type="Sitecore.ListManagement.Operations.UpdateListOperationsAgent, Sitecore.ListManagement">
 <patch:attribute name="interval">00:30:00</patch:attribute>

Note: This should only be done on development machines and not in production. Also make sure your website is not making use of the features discussed below such as tracking, analytics or device detection.
Similarly, if later versions of Sitecore include features that slow down the system, you can track down what steps are taking longer to run by looking at the log files and doing a little research on these steps.