Hi,
Have you tried looking at msconfig and disabling start-up programs/programs that start-up at power-up you don't need? Good practice to check every now and then how many unnecessary programs are slowing the start-up down, it unfortunately seems to be a default installation configuration for a lot of software.
Type "msconfig" in the start panel, then click on the "Windows start" panel to have a look. Example, I don't need the Printer monitor program or mobile phone programs at start-up so I untick them in msconfig>Windows start.
Maybe it is your hard drive failing, and I agree, SSD is a big improvement; you can also speed up start-up by going to the second tab in msconfig and changing wait time to 3 seconds, and ticking "start without gui", and in "advanced options" there you can choose how many processors to use for start-up.
I might be wrong, but I think sometimes with updates and changes the computer can take a few seconds longer to start-up (maybe it's reading its new configuration or something...)