Before going into prod, we tested LVM cache, and bcache, and LVM cache worked better for our workloads. Also, the tooling is significantly better than bcache.
One thing I love about LVM cache is if you are already running with LVM, you can add the caching layer on the fly without any downtime.
Regarding the note at the end where the author sees poor performance. I recommend taking a very close look at the SSD model. I've seen enterprise SSDs that perform worse with sync IO than spinning disks. When we buy hardware, we tell our vendors the exact model of SSD they can use. If we haven't qualified the SSD, we don't put it in production.