I'm a 24 y.o. junior/medior "Cybersecurity Specialist" with around two years of experience, primarily focused on Kubernetes, container, Cloud security but I also really enjoy coding, application observability and systems design.
I would like to lay out a plan to optimize my career for money and time, more than anything else. I don't really care about working at a prestigious company or having a shiny role to my name. As long as I make money, enjoy work and have time outside of it, I'm happy.
I'm not looking for entrepreneurship advice. Instead, I am interested how to organize my skillset in a way that I can still stay in a tech role and make "serious" money while doing it. Do I have a better chance if I focus on one specific technology and become an expert in it? Or should I be proficient in many technologies? What do such roles even look like? Should I double down on coding? Is it even possible to have money, time and still have fun?
I've heard that switching jobs often will help me get a bigger salary. On the other hand I'm a bit scared of ending up corporate hopping between jobs with a lot of meetings but no responsibility/fun. My current job pays a smaller salary relative to other companies in the area due to the nature of what we do but on the other hand it's really fun and I get to learn and deploy industry standard technologies, which I think is very valuable experience. As far as I can tell I'm really good and learning things and enjoy doing so.
As mentioned, I see two possible ways: becoming an absolute expert in one high-demand technology or becoming proficient in many technologies.
What is your experience?
The best advice I can give is do not go for the money. I fell for it, and all it gave me was unhappiness and stress. I used to earn about 11k a month doing technical work for an American big tech company. It was not worth it. I earn not even half now, but I can smile again and enjoy my life.
That being said, it's really a simple equation and there's a few options.
The lottery way: Try to join a promising startup, or start one yourself. Maybe you will hit it big and have a nice early retirement. This is kind of rare though, despite the lots of news of succesful founders. most people find themselves working shit-tons of hours for average rewards.
The American way: In america, the tech budget is trillions, rather than billions or millions. This due to the large number of HUGE companies there. You can get a regular job for one of them, get stocks from them and do fairly regular working hours. Your pay will be much larger than anywhere else in the world in a general case, as they simply have much more budget to spend to find those high quality engineers.
This does require a certain level of skill, so be dilligent in your learning, buy books, try and understand the domain you are working in fully and be open to learning new things all the time and elevate yourself. You can make a killing (as per most peoples standards) working even fairly simple tech support jobs in the cybersecurity sphere for example.
Some notable companies in that area: Palo Alto Networks, SentinelOne. Their start salary for techsupport on their products is fairly big. (I say the American way, because it's my experience, but in essence, this tells you, certain countries might pay more than others in general - Germany is also pretty good, but there you need a degree to fill certain roles. America is more tuned to you having skills rather than papers in my experience).
I did not work _in_ America. just for a company there. It litterally trippled my pay overnight. (and quadruppeled my stress.) It was good for a few years, but i dropped out for a better balance.
My experience in general is: more money == more stress. Chose what fits your lifestyle and mental capacity wisely. Burnout is not a game. I've seen people drop off and never go back to fully working or enjoying life due to severely stress related issues. - Take care of yourself, and beyond that, go for what feels good :)
Big tech hires mostly off leetcodes. There are other factors too.
Your journey begins with practicing leetcodes and reading all the books on teachyourselfcs.com
Study dilligently. Watch YouTube courses too but this should be considered supplemental.
Apply for big tech jobs. This will probably take several trys, especially in this market. Just keep applying and studying.
Once you're at a big tech company keep studying, learn from the smartest people you meet, and ship a lot. After a promotion or two apply to Meta (or someone else if they're paying more on levels.fyi at that point, but Meta pays especially well)
Start giving presentations at conferences. At higher levels in big tech this is encouraged and sometimes even expected as part of promo packets. Also practice your writing. Starting on writing a technical book on a subject your an expert in by this time would be good.
Keep shipping, keep learning, keep getting promoted. Once you're on that track you're well on your way to $1M/yr TC.
1. Obtaining a very unique yet demanded enough expertise, so that certain companies hunt for you because it is critical for the business and there is not many people in the world who can do that (for example building facebook scale datacenters from scratch, or being a creator of java).
2. Having your own business and your own customers.
Leaving that aside, if you want money go to places where you are on the critical path for the company to make money and become more important to the company by what you are doing there - either solving hard problems, or solving problems that no one wants to touch, or problems that only you know how to solve. The toxic way is to create problems and then solve them; please don't do that, because we have enough of those assholes.
* Follow a trend, as in do what everyone else does. For example be great at both Java and JavaScript React. When I say great I only mean above average at programming but administratively great at agile and closing tickets. Beef up your resume with numbers and move into a role as a corporate principal. AI and cloud infrastructure are hot right so try spinning those into a primary focus.
* Get a PhD and become a researcher for Google or Microsoft
* Get an MBA, a PMP, and focus on the business of IT.
That’s really it. If you really want to make money go into management, and you don’t need any experience as a developer to do that.
Always be a salesperson. Sociopaths will get further than everyone else if they aren’t completely assholes.
It’s never about technical excellence. If you waste effort on technical excellence, especially in a trendy area, you will race to the bottom arguing best practices with people probably shouldn’t be there in the first place. Software is laissez faire, so most businesses just try to retain boring people and most people aggressively pushing their careers lie about their capabilities.