The most critical components of page load optimization are simple tick-the-box items when setting up your application that need to be automatic for every web engineer, but aren't. They are mostly not a matter of having the tech improve. They are mostly not involved with "publishing tools" at all, insofar as by the time your CMS is in the picture it is way too late.
Partial checklist:
It takes something like four lines in your web server config to turn on gzip. Did you turn on gzip?
It takes perhaps ten lines of code to splat all your Javascript and CSS files into one file at deployment. If you were running Rails, this would be about fifteen keystrokes or so. Did you do it?
You should be loading your static assets from 2-3 hosts to maximize how many can be loaded in parallel. This is, again, two minutes of work and doesn't even require you to actually possess multiple hosts since you can just create multiple DNS entries pointing to the same one. Did you do it?
Don't forget CSS spriting; static assets from multiple hosts is great, but when you minimize your dependencies AND their size the loading time appears even faster.
Partial checklist:
It takes something like four lines in your web server config to turn on gzip. Did you turn on gzip?
It takes perhaps ten lines of code to splat all your Javascript and CSS files into one file at deployment. If you were running Rails, this would be about fifteen keystrokes or so. Did you do it?
You should be loading your static assets from 2-3 hosts to maximize how many can be loaded in parallel. This is, again, two minutes of work and doesn't even require you to actually possess multiple hosts since you can just create multiple DNS entries pointing to the same one. Did you do it?