There is a mantra - earn, learn and have fun - that I heard a while ago that I have been using ever since as a leveling gauge. The idea being that as an employee one should consider whether working for a given company makes sense or it is time to move on. It provides this simple barometer that as long as you earn a living, learn something every day at work while you also enjoy it as in you are having fun then you are at the right place. However, if any of those three conditions makes you feel lacking then probably it is time to look around what the job market might have in store for you.
💵 Earn
Stating the obvious - the world we live in is material. Unless you hit the jackpot, you have to make a living. When you decide to work for an employer, you are technically selling the time you have on your hand (no pun intended). Regardless of the job requirements or the qualifications one has, at the core every employee is conducting a business transaction of selling time.
🧑🎓 Learn
While most occupations I can think of entail some level of learning, I feel lucky having chosen software engineering as my profession. It is widely regarded as a quickly evolving industry where you have to keep up with it, lest it will leave your outdated knowledge in the dust. A more interesting aspect of it is the choice one eventually has to make. Become an expert in a specific sub-domain or try to maintain an all rounded but not necessarily the deepest insight into a broader spectrum of the industry. As with most difficult questions in life, this is not a left or right one. There is no right answer. I for one, like to maintain an open attitude towards software engineering in general. At the end of the day, this profession is about solving problems. There are lots of tools out there to help you out. However, no one tool is a silver bullet that will help you yield an ideal solution to any problem. For that reason, I keep learning every day and try hard not to use a hammer when it comes to driving screws.
🕹 Have Fun
I like to put some skin in the game every once in a while. I usually challenge my colleagues for a pizza. Large, name your toppings. Some were skeptical in the beginning, but after I had that pie delivered to a colleague on a different continent it became a hallmark in no time. My utmost favorite pastime at work is pair programming. I usually jump at any opportunity to pair-program with anyone knowing that there is always something to learn for at least one of the participants, but ideally for all. Recently, I am aiming to bring my pair programming game to the next level, by wowing to pair program with each and everyone at my current work place. And not just with engineers, but with HR, marketing and heck, even the CEO.