Defragging has very little to do with the actual hardware since the days of the IDE drive where they implemented sector re-allocation. In the beginning we had MFM drives with fixed sectors, tracks and cylinders. The reason for defragging was that, as files got deleted, there would be holes created and a large file would not likely fit in all one large piece. When files are split apart (fragmented), you will have to use multiple reads to access the data. The first good defragment tool came with PCTOOLS and was good. I remember finding one that actually took the hardware into account and minimized head movement by filling up a complete cylinder (wrote to each platter in succession as the track got full). Great stuff.
When IDE drives came about, the location of sectors became uncertain because if a bad spot appeared, the data could be relocated elsewhere independent of what the OS (Windows, for example) knew about.
Then there is NTFS. In all of Windows storage management, the basic allocation unit is NOT the sector at all. It is something called a cluster and clusters are laid out at the time you format the HDD and, more recent, when you allocate space for files.
So, as long as you are using NTFS, there is, technically a need to improve I/O speed by defrag. HOWEVER, (and I really dread this part), SSD has an issue where continued writes to a storage location make the data writes UNRELIABLE. That is, you might not even get an error; your data could just be messed up. So, it is imperative to avoid a lot of writes to the disk, if possible. Since there is no latency (waiting for a disk to spin to a location nor head movement on an SSD, there is very little need for defragmenting an SSD and it is not advised.
NTFS is still NTFS. There are still clusters out there and if your file is scattered among clusters, there will have to be multiple I/O sequences to read a large file, if the clusters are not contiguous. What about Win 10? You can set up Win 10 to automatically defragment but you need to make sure it is active if you want to do that (I usually don't because of the overhead). There are also defrag programs out there that are better than Microsoft's (check out Smart Defrag) and these automatically don't defrag SSD drives but just performs TRIM operations on them.
My personal opinion/recommendation is to run TRIM on SSD drives but do NOT defragment them. HDD drives should be defragmented but I'd suggest not using auto-defragment routines. Just do a periodic check on them. Think about it this way. If you no longer needed to defrag, why would Microsoft still give you the utility? The performance change may not be as dramatic as "the old days" but it is still relevant, especially if you have a lot of small files that get deleted often. I would just check the utility and see what it says especially if the machine seems to slow down. Remember that, unless your processor or memory utilization is near 100%, disk I/O is probably the big thing that can slow you down (that is why the adding of an SSD drive can produce such dramatic improvements).
Now, if you have RAID drives, the effect of defrag may be even less. At work, we added huge RAID array (SAN) systems to improve disk allocation espectially for virtual systems (VMWARE) but this was mostly for servers and NOT workstations.