While I am a guy who has been working a lot with real time ray tracing and even real time path tracing a lot, in general ray tracing approach is a huge problem, and that is acceleration structure for your scene.
Now typically for my standard rendering game engine I use a BVH (Bounding Volume Hierarchy) that contains single meshes in leaves (note mesh inside my game engine is a single vertex buffer object, optionally index buffer object ... packed in vertex array object + additional data) and each frame this BVH is re-built so I allow for dynamic objects. The re-building of BVH is not done using re-fit algorithm but full re-build (re-fit is ending up in bad BVH in general), which can be done quickly for thousands of objects.
For typical real time ray tracing scenario (or path tracing), I build BVH once (because I need to go as low as few triangles per leaf), and never re-fit(dynamic geometry is therefore a problem), yes I can re-build on demand, but it takes time (for Split-BVH algorithm which gives me very high quality tree, it can go even into minutes for more complex scene). You can go for hierarchical BVH - like in the upper case and have SplitBVH built for each separate mesh yes, that would work ... unless you have a lot of moving objects. Also noting that hierarchical BVH decreases performance compared to full SplitBVH.
So to speak - ray tracing shadows are good, as long as you have static only scene. Dynamic scenes... not that much, sadly (but hey - this can change with any new hardware, using lower quality but fast-build BVHs can give you enough speed for dynamic scenes, but you will be quite limited with geometry).
Honestly to the link ... fix cascaded shadow maps ... they are looking really bad, honestly they are comparing one of the worst cascaded shadow maps implementation to ray traced shadows (is it intention?), they only use static geometry in both, and we don't see the scene geometrical complexity. This way the comparison is non objective and therefore useless!
Anyways the OP came for opinions, I can tell you what I'm using now inside the current rendering engine I use. Standard cascaded-shadow-mapping (allowing to choose from few heuristics to select cascades splits) for directional lights. Standard old fashioned shadow maps for spotlights and cube-maps for point lights. Each single shadow map is rendered into 'shadow map texture atlas' which is limiting memory spent on shadowing.