tl;dr - This got long, sorry. But it is a complex topic, ill-suited to twitter. Not that even this long post is a complete treatment of the topic(s) or my thoughts. Still, the conclusion is good: I want to employ people who provide good value for their pay, who enjoy their lives, and who continue to enjoy life now and into the future.
Over the past several months on twitter I’ve noticed a lot of tweets talking about jobs and careers in tech (often without distinguishing the two). These often involve people complaining about gatekeeping, people trying to impose gatekeeping, people talking about work/life balance, and a host of related issues.
I’ll start by saying that I’m one of the people who (I think fortunately) gets to do, at work, many of the things that I love to do in life. And, working in tech, this means I gain substantial monetary and other benefits through my work, and through my passion.
I don’t take this for granted in any way. Yet it clearly shapes my views on this overall topic, because I very much like where I am, for me!
My problem with a lot of these tweets is that they rarely seem to distinguish between tech as a job, and tech as a career.
A job is a point-in-time employment arrangement between you and someone paying you money to do work. Sure, some people have jobs that last many decades, but most folks find that a job is a temporary thing, and that they have numerous jobs over decades.
A career is a long-term investment in yourself and an industry, with the goal of achieving some level of competency, or even mastery, within that industry. Usually a career does span decades, and also usually involves numerous jobs within that industry.
Many people have multiple careers in their lifetime. I’ve watched quite a number of people leave tech for management, or leave tech to become project managers, or program managers. I know people who’ve left tech to become psychics!
As an aside, this is one of my pet peeves about many orgs. They create a career path for tech folks that is capped; setting management careers above senior technologists.
The real problem here, is two-fold.
First, the employer looses a valuable tech person, who becomes a near-entry-level manager. You don’t want your best technologists to entirely switch careers right when they are at their peak!
Second, in my experience, a lot of these tech folks switch to management because it is the only way to “advance”, and they hate the new job.
This is usually compounded by the sad reality that the career path model doesn’t show that switching from being an amazing technologist to being a manager is actually a career change. People pretend like it is a continuation of an existing career path! That’s just cruel!
See also: the Peter principle
OK, back to my original train of thought.
Are there real minimum requirements for someone to get a specific job? Are those requirements different depending on that job, and the context of that job?
What do I mean by context?
My first job was as a junior programmer. I don’t remember the actual title, but they hired me to program. Fingers on keyboard, eyes on screen, mind in code.
Obviously there were minimum requirements for that job. Knowledge of the operating system and tools, knowledge of some programming language, willingness to learn a new programming language. The ability to follow instructions, stay focused, actually show up for work every day and work 8 hours.
You might take these things for granted, but as an employer I surely do not. It is ridiculous how many people don’t realize that they actually do need to be to work at a certain time, or work 8 hours a day, or 40 hours a week. Or that they need to follow instructions.
Is that gatekeeping? Of course! The business world has very real gates, and if you can’t pass those gates you can’t get (or keep) a job. Period.
Is that fair? Honestly, I must say yes. Why would someone pay you good money to not show up for work, put in your time, follow instructions, learn what’s necessary to be productive, and ultimately to provide value for their money?
I went to school to be a developer. I was so happy to have that first job, and yet there was a lot of frustration. Those damned bosses of mine wanted me to do things their way (which was often wrong in my youthful view, yet turned out to be right in the long run).
Some of my coworkers were there purely to maximize their take-home pay. They did the work, but played games around whatever incentive system was put in place to ensure that how they did their work maximized the incetive payouts.
I’ll be honest, I did too. They trained me. The thing is, I swiftly drifted off “the plan”, because I found that instead of maximizing money, I could maximize my “free time”: time not accounted for within the incentive system.
I was able to use that free time to do things more fun than the daily grind programming I was assigned. For example, I started writing software to analyze and modify the software we were writing, anticipating how I could use my tooling to free up even more of my time going forward (via automation of assigned tasks).
That let me work in more esoteric things, like exploring fun algorithms, data structures, operating system services (APIs), etc.
OK, so I’m getting off track.
My point is that, because I love what I do, I found flexible work time more valuable than incentive payouts, so I did game the system, but not for money exactly.
Did this pay off? Yes. When my employer was bought out, they kept me and moved me half way across the country, and let everyone else go find other jobs. Oh, and in addition to keeping me, they gave me a nice raise or two, and more interesting work.
To take an opposing view. Later in my career I worked alongside a fellow who was an Oracle DBA. Not a great one, but adequate. And he was happy being adequate, and had been doing this job for years without promotions.
He was a very happy person. Not with work so much, which he viewed as something that wasn’t offensive, but wasn’t exactly fun either. No, he worked his 40 hours each week (exactly), took all his vacation, and spent all his mental energy, time, and money on his kids and camping and other outdoor activities.
He’d talk about databases as necessary for work. During breaks and lunch it was all about the latest camping trip, or the canoeing trip they were planning.
At the time I didn’t see the value of his trade-off. He met the gates to get and keep a decent-but-unassuming job. And he just stayed there. That made no sense to me at all!
Now, I look back with the benefit of time and life experience and I see what he did. And I respect his choices. I hope he did too over time.
Would I do it differently if I had a chance? Absolutely not! I love what I do, and my balance will never be the same as his balance.
Another example, if you’ll indulge me.
A person who loves hardware and has a passion for building PCs and that sort of thing. And who worked at various “joe jobs” for many, many years, barely scraping by, and putting any spare money into buying parts to build computers for himself and others.
I, and other close friends, often suggested that he get a job working with hardware, where he could make more money, and do for a living what he loves doing for fun.
His fear: that if building computers was work, then it would stop being fun. Would stop being a passion.
I get that, I surely do. If work has always been a barely-sufferable grind to make enough money for life, then it is hard to imagine taking something you love and making it into a horrific grind.
Thankfully, my friend ultimately did start working in jobs where his skill, talent, and passion for hardware directly applies. And yes, sometimes it isn’t fun - which is why it is called work. But on the whole, his attitude toward life improved, his financial state improved, and I’m fairly confident that he’s happy with this choice.
So that discussion was all focused on jobs. On people meeting the requirements (gates) to get and keep a job. Where the context of the job matters.
To call out context: the gates to be an “invisible programmer” in a dark room where they slide you pizza under the door are far lower than the gates to be a consultant talking to the people who write the checks. Their expectations and requirements are much higher, and so the gates are stronger.
The gates to be a low to mid-level DBA job after job are much different than to be a high-end DBA.
So now let’s talk about careers. I realize that a lot of the twitter threads are dealing with people just getting into the industry. Looking for their first web designer or developer job, or their first backend programmer job.
In my case, I didn’t really start thinking about career until I was in my third job, with about 7 years of overall experience. At that point in my (thus far unplanned) career, I realized that I had stalled, and that I had a choice.
I could either keep working where I was, and learn nothing new, just keep doing hopefully fun things where I was. Or I could find a different job that furthered my career.
What does that mean: “further my career”?
In my case I still thought I should climb the corporate ladder. I still had no idea that such a climb would require that I leave tech to become a manager. That lesson came later.
Right at that point in time, I thought I’d learned all I could from my boss, from the company and manufacturing industry niche it occupied, and from the limited tech available at that company.
Looking back, I was right. But I could have been wrong too. It did turn out that the company just kept chugging along with the same tech for years, adding little new. Yet I’ve seen other companies decide to be more aggressive in adopting new tech, and even new business processes and models. Hindsight is 20/20.
Where I ended up was in consulting. Which completed my circuit of employment models, by the way:
- Be someone who is building the product/service being sold (software product company)
- Be someone who supports those who build and sell the product (IT)
- Actually be the product that is being sold (consulting)
I did spend 2-3 years actually being a consultant. Being the product. Long enough to see that the only obvious way to climb the corporate ladder was to start managing people.
So I took a management job within the consulting company. And I hated it. Oh, how I hated it. Every day dealing with personnel issues, conflicting requirements on my staff, sales people bringing horrible work with poor margins. Yuck!
A few months later I had an opportunity to side-step to a “technical leadership role”, where I was in more of a business/tech advisory capacity. One way or another, I’ve been in this sort of “middle role” ever since.
I count myself fortunate. I was able, with no long term harm, to try climbing the corporate ladder, and to realize that a career as a manager wasn’t right for me.
Over the years I’ve watched quite a few people go through that transition. Some by accident (kind of like me), and some with intention.
Either way, some of them love management, and thrive. They’ve studied and learned management techniques, some have even gone back to school to improve those skills. The point being, they’ve embraced their second career, and chosen to excel at it.
Others were like me, and couldn’t escape fast enough. Usually back into tech.
Still others felt trapped, because they only way out is “down”, and down is never a good thing. They all became bitter and burned out over time.
This is the thing about a career. It is usually a sequence of jobs, each one building on a body of experience and capability that allows you to provide more and more value within your industry and niche.
Switching to a different career is fine, but should be intentional. Something you choose and desire, not something you stumble into without realizing it happened.
Gatekeeping is a big deal in this context. Again, is it fair or right? Actually yes, probably, because the people paying you for the increasing value you could provide, actually do expect that you can provide that value.
If you can’t provide and keep providing the value, then you can’t keep the job, and your career will suffer a setback.
Let me loop back around.
I have personally chosen a strange and relatively unique career path, where I constantly straddle the line between management (even executive management) and being a technologist. This has worked for me, but not without sacrifice in terms of the amount of time and travel I’ve invested. Time that could have been spent with family and friends and other things I love.
I’ve watched other people unintentionally and intentionally switch careers and love it. Or hate it. Again, odds of success and happiness greatly increased if the choice is conscious and intentional.
I’ve watched people who chose, early on, to settle at a workable level within their industry, make good money, and really focus their life outside of work.
Yet I’ve also seen people do that, and then later become bitter as they are constantly passed over for promotions, raises, bonuses, etc. Personally I can’t feel too sorry for them, as they chose to focus outside of work and enjoy benefits I didn’t.
This whole thing is a trade-off. We are born, live, and die. In between there’s only so much time. What you do with that time is up to you.
We, in the tech industry, are extremely fortunate, in that we live in a time when it is hard not to make a good living, even by doing “merely” an adequate job in the industry.
This means we are blessed with amazing choice: we can choose to meet the gates to get and keep a decent job, and use the income to live life to the fullest outside work. Or we can choose to crush the gates to get job after job after job, pursuing our passion (which also happens to be what they pay us for), and live to the fullest in that context.
And many other variations exist.
My final point is this: make your choices. Be intentional about your career. And don’t let yourself be bitter about the road you chose not to take. We each follow our own path, we each enjoy the benefits and costs of our choices.
Do I judge folks who put in 40 hours a week and that’s it? Absolutely not, as long as they meet the requirements of their job.
Do I judge folks who put in untold hours a week, doing their job plus many other things? Again, no. As long as they take the time to do whatever it is they do to prevent burnout.
In each case, I want people who provide good value for their pay, who enjoy their lives, and who continue to enjoy life now and into the future.