JOIN when you are ready to perform:
1. in your technical skill and relevant knowledge
2. to be a good team player
3. strong execution and analyzation
QUIT when you are ready to challenge:
1. new and different working environment.
2. for more difficulties and toughness
3. for a better career (including salary, come on, it's a fact)
Lastly, please ask yourself "Do you fit with the corporate culture?"
This could be one of the main consideration when comes to quit. We would never know deeply about it's TRUE culture until we spent our working life here for years maybe. You may figure out it's transparency or darkness yet slowly build up a hesitation in your mind to re-judge your employer.
I've tried a quiz on this website which might be giving you some idea on your next move. Here is the result of mine.