Are involved 2 machines only? (home and work) or do we need a 3rd machine (call it a vps) to estabilish bridge between home and work!?
The answer to this question depends entirely on your particular situation. "Reverse ssh tunneling" means that you establish an ssh connection FROM your work machine TO your home machine, and then forward ports FROM your home machine TO your work machine over that connection.
If your work machine is able to connect directly to your home machine, then you don't need anything else. On your work machine, you can run something like:
ssh -R 2200:localhost:22 [email protected]
And as long as that connection is active, on your home machine you can connect to your work machine by running:
ssh -p 2200 myworkusername@localhost
If your work machine is not able to connect directly to your home machine, then you may need to arrange for some sort of intermediary, which would be a machine that (a) you can connect to from your work machine and (b) from which you can connect to your home machine.