We all know what Cycles is, at least to a first approximation: Cycles is
a path tracing engine [...] Specifically, cycles is a "backwards" path tracer, which means that it traces light rays by sending them from the camera instead of sending them from light source(s)
—from this community wiki
Understanding its implementation clearly requires some more technicalities, like the BVH, the specificity of volumetric shaders etc, but even without all those details it's pretty clear what's the "idea" behind it.
In short (Cycles): rays are traced back from the camera until they reach a source of light or the sky. Every time they "hit" something they have different possible routes -- each with its own probability, as described by the material settings: they can reflect at specular angle (specularity), bounce at random angle (rough diffuse), transmit through the surface (refraction), etc -- and during this route they accrue color, intensity etc. Since there are probabilistic choices along the route, multiple rays with different random seeds are cast and then averaged (samples) (1).
As for EEVEE, we know what it's for: it is a «modern, high-quality viewport that will perform better than the current Blender viewport» (link); we know what it is not for: it «uses approximations on the behavior of light and will not be as accurate» as Cycles (link). But I think it hasn't been written yet "what it does".
How would you shortly explain the workings of EEVEE to a friend (or to a class of non experts)? What are the main steps that go into the rendering process? Lit/shaded areas, occlusion, interaction with the materials, (possibly even subsurface scattering and volumetrics, that I guess must be somewhat tricky), etc...
My description of Cycles above (1) is the type of understanding I'd like to get about Eevee.
Thanks!