Success Criteria: 21 Years of Software Engineering
What are the ways that you measure success? Take a look at the perspective of a software developer with over 2 decades of experience.
Join the DZone community and get the full member experience.Join For Free
Have I learned anything in 21 years of professional software development? Well, yeah, a whole bunch of stuff! I've been paying some attention!
Some of it's obsolete now, not least all the cool Excel stuff I could do before Microsoft excreted its damned Office Ribbon thing into the world thing leaving me unarmed and bewildered. But some of it could, perhaps, by particularly kind observer, be called some form of wisdom. Facts, anyway. Experience.
I've avoided writing down the 300-odd "crucial tips" I'd give 22-year-old me because there's plenty of that sort of stuff already out there, and it's very well done too — no point regurgitating it here.
A career — a life, really — is. as the saying goes, a marathon, not a sprint. I think you need to have lived a bit, to have built some experience — of wins, of losses, personal and professional — to really appreciate that. One thing you certainly can't appreciate when you first start out in your career is how much you'll change in the years to come — but also how little. Philosophical stuff, right???
Something I've been thinking about a lot lately is success — what is it? How important is it? What types of success are there? And most importantly to me right now, what sort is most worth pursuing?
We all want a successful career. I'm lucky enough to think I'm enjoying one — so far, anyway, and with high hopes that long it may continue, large lottery wins notwithstanding. I've seen colleagues from similar software development backgrounds as me take many different routes over the years, though, and achieve many different types of success.
The single observation that's most prompted my reflection on all this is seeing people accept promotions into roles they plainly don't enjoy.
Every graduate loves making it from Junior Developer to Developer. Every Developer loves getting to Senior Developer. But the jump from Senior Developer to Manager, in role and in daily activity if not in title, catches people out — myself included, and I realized after a few months "away from the coal face" that frankly I didn't enjoy it as much as I enjoyed working hands-on with technology. Happily, I was able to pivot back to the hands-on side, no harm done.
That others choose to continue down paths they're plainly not happy with puzzles me. Obviously, some people genuinely love managerial jobs, and thrive in executive roles, just as some people are born salespeople — it's the people who don't relish that step up that get me thinking, the ones who wistfully recall their hands-on days as they navigate, sighing, the meetings in a Tetris-like calendar.
Some things that can be considered "success" — a far from complete list:
- job titles: "Chief VP of Global Blockchain Engineering" — it's impressive, snarky blockchain, dig aside!
- "fame", or at least having a highly visible profile, and "influence"
- money — wealth is one of the most universally recognized indicators of success, after all
- enjoying the challenge and the impact of the hands-on work you do, day in, day out, on its own merits; this can be creative, scientific, athletic, administrative, working with animals, teaching — doesn't matter, it's purely a doing something you love indicator
- having flexibility and control over one's workload, working patterns, and the ability to balance work, family, friends, leisure, hobbies, etc
- helping others, perhaps medically or perhaps in more of a social or caring capacity
It strikes me that although two of the above could be seen as status measures, most are happiness — or at least satisfaction — measures, and one is actually a bit of both: money genuinely makes some of life's more severe problems disappear, allowing a level of security, stability, and even luxury — and if you're doing particularly well you can plonk an Aston Martin in the driveway. Quite the status indicator, that...
My less-than-earth-shattering insight is just that perhaps the trappings of status are hard to give up even when our happiness is at stake. Obviously, it's for every individual to make their own choices in life, and there are complex factors in play — 10 years into a management or leadership role, you perhaps literally can't just get back into the "fun techie stuff", for example — we all know technology doesn't stand still.
I do believe though there's something in our collective human psyche that works against us here: imagine your neighbour gets a stunning new car — that Aston Martin, say. She leaves the house at 6am each day, doesn't get back till 9pm, but wow, she must be killing it at work to get that car.
Would you swap? You sure? What factors might sway you?
None of the above are mutually exclusive it's worth bearing in mind: if being European VP of Machine Learning Containers gives you fame and fortune, with a 4-hour workday and a shot at ending poverty and you love every minute — great!
(NB I would always be available for this role if anyone has it...?)
Of course what we value and strive towards as young adults isn't necessarily something that stays with us over a whole career (or lifetime).
I recall the excitement and impatience I had as a graduate engineer, and the exhilaration of hitting promotions and pay rises. There's nothing wrong with that: it's a good way to start out, and probably a safe "default" from which to develop and grow.
As things turned out my own course took a few turns, all of which have been good ones, happily: left a large consulting firm to join what would be called a "startup" these days. Moved from that to some roles in banking technology, and into some freelance work. Then back to a small startup type firm — and then back into freelance banking tech again!
It's important to be aware of other routes and perhaps to conduct "right path checks" every so often — every 5 to 10 years anyway, it needn't be a weekly ordeal:
- Do I really want that next promotion, i.e. do I want to be doing each day the work that people already in that role do? This is not a trick question: if you answer yes, go for it — there's absolutely nothing wrong with being successful! But don't jump blindly into something you'll likely hate — especially if those around you give every sign of hating it!
- "Am I enjoying the day-to-day as-is? If not, why not? Are there small tweaks that could help?
- "Is my workload about right? 'Too light' is arguably just as damaging 'too heavy' here!"
- "Where do I want to be in 5 years? 10 years?" It's a cliched interview question but a good career question to ask yourself from time to time — and one to which it's worth thinking carefully about your answer
Careers can take surprising turns, and with an appreciation that success can take many forms, it's well worth being open to exploring options that come along: you might think you want to solve the worlds Big Data replication problems but you might discover that teaching new graduates a Starting Out With SQL course gives you more of a buzz than you've had in years!
I've always inherently been a believer in delayed gratification — who, committing to a 3 or 4 year degree course isn't, in some small part — and right now I also believe in the importance of balance.
Contemplating the nature of success, I suspect the 22-year-old me would have a different view of what he wanted 43-year-old me to be doing than — should I be lucky enough to get there — what 64-year-old me might want to look back at. I find "what would Retired Me want to look back on from his mansion in the Algarve?" quite a good way to guide my thinking.
Maybe not though. Maybe they'd both think "stuff 'balance', get the Aston Martin whatever it takes, loser!"
Published at DZone with permission of Brian McConnell, DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.