Recently I was noticing slow start-up on my laptop. It has Ubuntu 16.10. It comes with systemd. I had a number of programs collected through almost one year of use. So I first went through Synaptic and removed the ones not required any more. This helped to some extent. Systemd has a nice tool called systemd-analyze that gives you a clear picture of all that's happening with your system at start-up. So using systemd-analyze critical-path, systemd-analyze blame, and systemd-analyze plot > plot.svg, I got loads of information about the bunch of things that are making the start-up slow. So I went through disabling a number of unwanted services and removing few more programs/utilities and finally got the boot time down from 57sec to 32Sec. I'm stuck there though. But again my laptop is five year old Lenovo with Pentium D 2.1GHz processor and 2GB of RAM and a 320GB SATA HDD, so maybe that's the best it can do!