However, looking at it now, it seems like I was wrong. While I do like writing code, I've been doing it both at job and after work for my side projects, and I think I no longer can handle it.
I want to keep doing side projects, but for my job, I think I want to get away from writing code, or at least minimize it drastically. I'm considering leadership positions now, but I'm not entirely sure what's there for me.
Would appreciate some people to share their experience, how they moved away from writing code to leadership/management positions, and how I can pull it off while having minimal leadership experience.
Do a thorough think of how much money you really need. And convince yourself that a dollar more isn't worth any amount of extra effort.
For most people it took a 3-5 years in school or lower level jobs to get good enough to crack into the fruits a high earning software engineering career. If you were young when this happened, you didn't even notice those years go by. Now you're older, but the same rules apply. They just feel different and usually unmotivating. You may need to spend a few years at the bottom again to make some progress down a different skill tree.
When you're winning for so long, it's hard to imagine eating shit for years just to make bread again elsewhere. Harness some excitement around that and commit fully, or realize that you have a pretty great life and find a way to stay cozy in tech (like divorcing your identity from your job).
edit: also if you've only been in big tech, then get out. it's so much more fun elsewhere.
Maybe figure out how to do the bare minimum to maintain an income while you figure out what you want to do.
I'm hoping to retire again. And then I'll just work on something like a video game where I don't need to hire anyone else (outside of contractors for art).
What I've learned over the years is that you should never chase prestige and the opinion of others. I did that for too long. What you should chase is getting money by the fastest means possible, even if its something with no title or career prospects, if you can buy your freedom from the wage wheel. If you can jump off the wage wheel then you can do your own projects with freedom. And freedom to set my own calendar is the only thing that matters to me anymore.
I am a programmer from Russia. I live in Siberia. I have not been able to find a job for a year. I continue to look, but I have already started to do some part-time work.
I participate in low-paid projects on image marking for training neural networks, checking the quality of their work.
I wanted to get a job in delivery, but our city is too small, and there is not even a delivery service. The only work in our city is drivers and store clerks, but also very low-paid (USD 300 per month).
I am doing a project to create a new programming language based on the C language, to unload the human brain from programming and give the opportunity to write programs in a human language. If you are interested, there is the first link to the article on my site azhibaev.com
You'll do minimum coding unless you want to code for fun and try new ideas. If you have research funding you can become the project lead but the pressure is much less than industry since only prototyping demo not shipping.
The academic institutions will really appreciate your experiences and students as well.
I wish all the best for whatever you decided to do.
It really sucks that most of us have to choose between doing something that we're interested in and doing something that pays the bills.
Do you like dealing with people? Do you like dealing with people's problems? People who get promoted into management tend to be fairly adept at managing themselves, and it is easy for such people to develop the misapprehension that everyone is like them. Nothing could be further from the truth. At any given point in time, there will be someone on your team with a personal crisis effecting their work, or someone just not performing up to standard, or someone who is performing up to standard that your boss thinks is not, or some other interminable inter-personal drama.
All of that will explicitly be your problem and your problem to solve, one way or another. Management is a burnout multiplier, not a refuge.
If you really have a passion for leading people, by all means, develop yourself in that area and try it out when the time is right. I did it for five years, and generally enjoyed it. But don't think it will lower your stress or cure your burnout.
0 - I'm going to call it management, because that's what your first "leadership" job will be. You aren't going to be "leading" much of anything or anyone for a while
The silver lining in being laid-off or fired numerous times, for spans of a year or more, is that I've been forced into re-thinking things and my relationship with coding and work. I don't think I'd be able to re-enter a coding job otherwise, it just gets miserable at a certain point, it's isolating, bad for your body, stressful at times; I do think this comes with anything you pursue for long-enough while trying to push yourself in some direction or another, unless you just get extremely lucky and it becomes entirely optional.
In those times, I've worked in random jobs (cafe, etc..) when they've come up, where I've had a different physical and organizational relationship with peers, solving different problems, using my body and communication skills differently, on different schedules, and I think that's absolutely crucial. A LOT of the time it's not as easy as you'd think; if you don't get rejected out of hand for a myriad of reasons, many jobs aren't as easy or as miserable as one would think from the outside. Volunteer work may also be incredibly rewarding. This is my recommendation to you, especially if you have some savings to fall back on for an extended period of time. It'll give you the space to consider things differently and get out of the headspace of being mired in code. Take up a challenging hobby and not-so challenging one, just to do anything else buy coding. Try to learn design or something in the visual arts to a serious level. Have an adventure.
Ultimately, I had the same thoughts as you earlier on in what can only vaguely be called a career, that coding is somehow intrinsically important and I should love it and it'll change the world or whatever crap, but later after numerous burnouts, I realized that coding is just whatever, it's text, it makes computers do things, who cares it's not that important. But it can still be compelling in various ways, and that's fine too, let the relationship be an organic one, and let it fight for your attention once you've put your attention elsewhere.
With 15 years experience, you must have had times you were a team leader or even a designer. Those roles can be amplified and used as a stepping stone.
I then discovered that I do like programming. I just don’t want to do it with anyone else.
The traditional routes to PM are from engineering, design, or an MBA -- so you'll be taking one of the classic paths. Basically try to unofficially take on PM-type responsibilities in your current role. And then they either realize you're good at it and make it official, or you interview for an official PM job somewhere else and explain that while it wasn't your official title, it's what you were effectively doing.
* Management
* Dev ops
* network engineer (routers and switches)
* cloud engineer
* security engineer (defense)
* cyber operations (offense)
* project management
* program management (more business than technical)
* platform infrastructure (similar to cloud but farther from the metal)
* recruiter
* API engineering
* test automation
* business analyst
* public relations
Most of these require certifications and most of the rest require specialized education. Some just happen by accident.
In my case I was a long time JavaScript developer but after being laid off I refused to go back to framework hell. I got picked up to author API for this big enterprise management thing. I was perfectly happy being a developer with no work ethic but for some weird reason I am now standing up developer operations for this enterprise effort. I had options because I have a coding background, prior experience as a principal and in management, certifications, and a security clearance. If you want options have some of those things that employers are looking for.
I too am unable to maintain any interest in working with a corporation. I tried doing open source for a long period of time, working off of grants, but this is quite difficult to do sustainably.
I'm in the Bay Area, and can be reach at my username at madefromscrat.ch
I find a lot more variety / interest in operations - there's a lot of scope to play with infrastructure, security, performance tracking, sysadmin stuff etc, and even to get a small amount of coding done on company time - though not on product, more on ancillary support services/infrastructure.
It's still IT, so a lot of industry knowledge and skill transfer is still relevant.
In my experience, its more interesting and challenging than coding for corporate. You will be motivated to learn a lot of things more than codes, like SEO, marketing, content creating, etc.
It feels really great when you know people pay for your codes / products
My first job was doing mainframe development for a few years until Y2K was done. Starting at ground zero with Assembler then on to COBOL.
From there I moved to being a consultant doing Java and .Net. This was J2EE and .Net alpha and beyond.
From there I was the team lead at a web hosting company leading the rewrite of the VBScript, PHP and Perl sites over to .Net to modernize.
Then I moved to my current company, where I’ve been for 20 years. Started doing .Net web dev, then moved to .Net Win Form apps. Then to Silverlight, then Knockout, Backbone, Angular 1. Then to a DevOps role leading a team where I helped out with Powershell automation. From there to a team that built POCs for the Machine Learning/Data Engineering team. I was always a team of one building whatever was needed. Then onto a Senior Staff Engineer role architecting and developing a large multi-region LATAM web application.
I’ve had so much variety and played so many roles that I’ve never hated work. Anytime something came up that may interest me I would show initiative and volunteer. Never just settled for grunt work.
So you should reflect on how you have provided leadership at various points.
First question will be what do you enjoy and how can you do more of that? Or enjoyment aside, what is it you would like to achieve.
Difficult, I know.
Work on that. First thing is to kick your line manager's ass.