The kernel of the discovery for Black no doubt is obvious: the rook on d3 masks the queen on e2, which otherwise would take White’s queen. The question is what threat the rook can make when it moves. Since it has no checks, think about other ways it can put pressure on White’s king—always keeping in mind any other pieces you have that also bear on the king’s position, since pressuring the king usually requires a team effort. Here Black has a bishop aimed at White's king on the long diagonal, blocked just by the pawn on f3. What would it take to create checkmate from here? If the f3 pawn were eliminated and the rook were added to the assault against the king, that would do it. So Black plays Rxf3. This unmasks QxQ, of course; it also leads to mate when the rook next drops down and plays RxN#—a case not only of discovered check but of double check. White has a move to make after Rxf3, but no way to prevent the result. The idea of RxNf1 can be hard to see, because f1 is heavily guarded. The fact that those guards are irrelevant nicely illustrates the power of double check.
Notice here that when Black unmasks one discovery he also uses the unmasking piece to set up another one; he moves the rook out of the queen’s path and into the bishop’s path, creating a mating threat. The point: when you have multiple pieces aimed in the enemy king’s vicinity, don’t just look for existing discoveries. Think, too, about how various checks, captures, and threats you might make would create new kernels and new potential discoveries. Indeed, anytime you move your pieces you want to be careful to notice whether you are bringing one into the path of another, for now you appreciate the power conferred on pieces when combined in this way.