The career of a software engineer is a curious one. It’s a tale of hardship and woe, filled with ladders to climb, deadlines to beat, and management to appease.
In my infinite wisdom, I saw that the life cycle of a developer can be categorized into five different levels.
Level 1 (0–2 years):
You just graduated from college, a young boy with young boys dreams, big eyes and a thirst for life. You start your work hoping to change the world, invent the next big app or make enough money to retire young and spend the rest of your life on exotic beaches, sleeping with models, who have a thing for nerds.
The first few months seem very alike, you’re assigned the same tasks every day, and your only job is not to screw up big time. It’s not what you were hoping for, giving your superior level of intellect and mad skills on the keyboard, but you’re certain that soon enough things will change.
You wake up one day after two years and realize that you’ve been living the same day and writing the same code over and over again. It makes you sad, but you feel a wind of change coming.
Level 2 (2–5 years):
You’re no longer a junior developer now, you’ve been promoted to a full-blown software engineer, basically a rock star, without the money, women, and fame.
You’re no longer being supervised by that old mean engineer who hates you because he knows you’re a better coder than he is. You’re being assigned small tasks, which you accomplish flawlessly -most of the time- and you can finally start feeling valued and useful. Everyone respects you now… right?
Level 3 (5–10 years):
You’ve been doing this long enough now to be called a senior developer and assigned your own team. You’ve long have given up on your dreams to change the world, sleep with models or even make the next big app, after years of seeing people try to do it and fail, and having tried yourself to launch something and failed at it too, though you wouldn’t admit it, and hide behind the excuse of not giving it much attention or that people are not ready for your creation yet.
On the bright side, you get to handle big projects now and manage your team the way you want to. You also make a lot of money, which is what you always hoped for! But on the downside, you’re honestly not into coding that much anymore, your team is a bunch of brats who constantly think they’re better than you, without realizing you’ve been helping them grow all along, and you’re very sure they see you like the old mean guy who’s there to make their life a living hell, oh! And although you do make a lot of money, almost half of it goes to pay the rent or mortgage, because you had to move to an expensive city to get a better offer.
Level 4 (10–20 years):
At this point in your career, you have a choice to make, either you join management and become another suit who’s only concern is cutting corners to save money, and to meet this quarter’s earnings expectations, or to continue being a developer, who’s work now consists of managing multiple teams and making sure everyone’s doing their job.
You were always a rebel, you chose to code because it gave you freedom, heck, you wrote your best lines high, listening to Led Zeppelin, so I’ll assume you’d go with continuing on your path as a developer.
It’s been years since you enjoyed coding or went to the office excited about something. Last night you looked in the mirror and saw your empty dead eyes looking back at you, and you couldn’t help but remember the young boy with dreams and hopes who came to work with a big smile and shiny eyes.
You decide to do something about this. You realized that just because you didn’t get everything you wanted, it doesn’t mean that your career was not fulfilling, and perhaps it’s time for you to move on and start giving lectures or maybe even take a teaching position.
Level 5 (20 years+):
At this point, you discover that you’ve been granted the powers of an almighty wizard, by the benevolent gods of coding. You magically turn to 24 again and have a spell for infinite money.
You get your happy ending after all, and you spend the rest of your life on exotic beaches sleeping with models.