I've been using Btrfs on KDE Neon User Edition for over two years and it has been faultless for me. I used it on a single HD, then created a RAID1 with two HDs, then converted back to a singleton with two HDs to maximize my free space. I use a third HD in my laptop (CDROM Cadddy) for using Btrfs send & receive to store backup snapshots.
Btrfs is offered in Kubuntu or Neon as a fs during the install. You can give it the whole disk (/dev/sda) or a partition (/dev/sda1). The partition is better. Based on Ubuntu, either creates the primary subvolumes @ and @home. Other distros, like OpenSuSE, create a dozen or so default subvolumes. Lines in /etc/fstab bind @ to / and @home to /home. Oshunluver on Kubuntuforuums.net explains how you can use Btrfs to install multiple distros, selectable at boot, and give each one access to all the available free space. There's no need to preassign sizes to subvolumens.
Using snapper and other automatic snapshotting apps can get you into disk space shortage very quickly unless your snapper.conf is tuned properly. After trying snapper I uninstalled it. The Btrfs snapshot commands are so easy that I open a Konsole and issue them manually, especially before an update or an experiment. If, while updating or experimenting, you break something, rather than taking hours or days to fix it just do a 3 minute rollback.
If you plan to run VirtualBox on a Btrfs system you have two choices: Use a fixed size virtual HD, or for dynamic virtual HDs, give the folder into which you will create your virtual HDs the NOCOW property first.
Because Btrfs makes it SO EASY to backup and restore I will never be going back to EXT4. ZFS isn't a default root fs on most distros yet, but when it does appear in that capacity I will give it a try.