Live data from Hacker News

Ask HN: How can a junior dev maximize their income?

news.ycombinator.com

61–70 of 91 posts

Re: Ask HN: How can a junior dev maximize their income?

#61
There are two main paths to promotion and salary increase: - Becoming a super expert in one domain, or an expert in many. Rare, irreplaceable skillset that is recognized and valuable for the business. Yes, this is vague, but there are tons of different career paths where it's possible. Pick the one where you feel you can learn the fastest and are strongest at. (Often correlates with things you like!) Note: This involves some healthy self-promotion, advertising your work, blogs, conferences. Even if you're the best in the world but no one knows it - nobody will care.

- Focus on organizing other people's work, leadership, empathy, cross team communication. This is the way to get promoted into managerial and director positions at healthy companies. Obviously, a junior should not try dictate others what to do (lol, but I've seen some hyper ambitious ones like this - it didn't end well), but first very quickly becoming proactive and gathering requirements by yourself, working with many people and on many projects. Trying to expand the scope of work broad, instead of deep.

Choice of either depends on your skills and personality. The latter can eventually pay more (statistically - there are more highly paid directors than world class experts), but can be also more risky (if more senior people think you want to manage them, they might get upset).

Re: Ask HN: How can a junior dev maximize their income?

#62
post #7

I know this question is situated around the tech, but the real answer is to leave every couple of years. There is always more money to be made, and the more experience you have the easier it is to get it. I'm not saying this is what somebody should do, but if you're only indexing for income, then it's the only answer IMO.

I agree with this as well. I spent 7 years at my first job, and would have been much better off moving at least once. After that I tended to average closer to 3 - 4 years at jobs.

I would recommend having at least one stop where you spend more than a year or two, just to show that you can get past the initial ramp up period. This avoids having a red flag on your resume, but that may be old fashioned thinking.

The original stipulation is someone with the skills to get into a FAANG, so I'll focus less on that. I'm also going to ignore quality of life considerations.

Cynical ideas, with a slant towards making the most money: - Don't be afraid to move, or take advantage of working remotely.

- Get a job that pays Silicon Valley money / RSUs but then move somewhere cheap.

- Pay more attention to potential stock benefits, that's where the bigger money can be.

- When the market is running better again, jump to a company that should go public soon. This way you get the most shares with the least personal risk. If you get good a guessing who the "hot" company will be, you can do really well.

- Companies aren't allowed to say when they're going public, or their stock may disappoint. Switch and try again if you've guessed wrong.

- Don't stick around past your initial stock grant (generally 4 years).

- Keep an ear out for the hot new tech / VC focus, and learn enough of those skills to get hired.

- Get good at interviewing.

Note: this is what's worked in the past, future conditions may be different.

Re: Ask HN: How can a junior dev maximize their income?

#63
post #43
post #7

I know this question is situated around the tech, but the real answer is to leave every couple of years. There is always more money to be made, and the more experience you have the easier it is to get it. I'm not saying this is what somebody should do, but if you're only indexing for income, then it's the only answer IMO.

I spent my 20s following this advice, but now in my 30s I am starting to question it. When I look up the org chart, the people higher up have been at the company 5+ years. Moving into the higher roles requires the right opportunity, which often takes time to find. Those "right opportunities" are rarely given to people new to the company and are often used to retain existing high performers. Certainly if you're stuck…

Interesting in that I kind of did the opposite. I stayed at one company for a long time, and then moved more around later in my career.

Perhaps there is an argument for getting to the "staff" level quickly, and then hop around more as it's harder to advance past that level?

Re: Ask HN: How can a junior dev maximize their income?

#64
> ML+Python+Pytorch because it's hot right now?

Watch this video, which is an introduction to logistic regression for beginners - https://www.youtube.com/watch?v=hjrYrynGWGA

If you think that is lacking some preliminary explanation, this is the possibly clarifying previous video: https://www.youtube.com/watch?v=eqEc66RFY0I

The video doesn't expect you to know deep learning, but does expect you know probability/statistics, calculus and linear algebra.

If this is confusing, then things like transformers will be even more confusing.

> Java because no one wants to maintain legacy Java code but there are lots of it and the demand will be there? COBOL to take that even further?

Over a long career I have not found this to be a good strategy. Although plenty of application servers run JVM code - Java, or nowadays sometimes Kotlin (or other JVM languages). Java is OK to do, but the idea of starting with some legacy stuff does not - there are Java programmers who have experience going back to the 1990s.

> Node.js because it's popular?

Popularity has its appeals and drawbacks. More jobs for popular technology, but there is also more competition. Companies are always having trouble finding senior programmers in niche but not too niche stacks.

> Swift because Apple will continue to dominate the high end?

iOS is not going away anytime soon.

> Practice and pass the tests to get into a FAANG?

It makes sense, as other companies ape FAANGs tests as well. Being able to do Leetcode and system level design never hurts.

> Go work for a high frequency trading company?

As competitive as FAANG for successful ones.

If I were a junior dev right now, the two stacks I would look at would be React/JS and Python/pytorch. There are lots of openings for React/JS in small and big companies, so it's easier to get your foot in the door with it, which is the important thing. But if you're already a junior dev that matters less.

Then Python is good because people run it on servers, but it's also what pytorch uses, and deep learning will surely be growing in the coming years. You can get a job and hone your Python skills even if it does not involve neural nets, and then use those Python skills if you switch over into working with neural nets.

Re: Ask HN: How can a junior dev maximize their income?

#65
Either focus deep in some specific business domain you like (or don't hate at least), or focus on becoming a super knowledgeable generalist.

In either case it's better to start with becoming an okay expert in a single domain.

Also don't focus too much on tools or leetcode shit, tools will evolve unpredictably in 10y. And FAANG landscape/salaries too.

E.g. java, swift, nodjs, LLM is not a domain, it's a tool.

But banking transactions, realtime video processing or customer support automation — is.

Re: Ask HN: How can a junior dev maximize their income?

#66
Get good at public speaking

Learn how to tell a story

Get good at interviewing and Leetcode (this just isn’t going away anytime soon)

Learn some infrastructure management and plumbing

As for languages and code, join an org that uses Java and Go, should be good with those for the next decade :P

Re: Ask HN: How can a junior dev maximize their income?

#67

Learn Java or C++, get good at leetcode, and work in finance. You don't need to be a good engineer – these places are messes of legacy code created in fiefdoms run by people who care more about money than the engineering. You'll make a ton of money and feel poor because the quants will make far more than you ever will. In my opinion this is a truly terrible path to choose, but you will earn more than anyone in tech w…

I am a junior that does C++ currently for HFT. Lots of legacy code, although I don’t think the code is that terrible (although I am a junior so maybe I can’t tell). Any reason why it’s a terrible path to choose? Am I stunting my growth? I was hoping HFT would help leverage me into a big tech company for systems level stuff since (at least I was told this as a selling point to get me to join) its tougher here so FAANG…

It depends on the FAANG, though most of them have some amount of C++ code. Google has a ton; they'll appreciate people who know the language well.

I think people may be concerned because these days it's more niche, though it's still a very common language. Take a look at the job postings from the companies you want to join and see what skills they want. Get familiar with some of them, even if you don't do them professionally.

Get good at the Leetcode style questions.

Are you doing distributed systems work? Can you answer design questions like: design bit.ly, Twitter, or Facebook? There's a lot of info out there on how to solve these problems.

There may be questions about your ability to work with "big data". But that's also something you can pick up on your own, even if you aren't doing it at work.

Look for technically challenging projects at your job and solve them. Learn from them. Think about ways you could have solved them better with what you know now.

Re: Ask HN: How can a junior dev maximize their income?

#68
post #22

Earlier quoted context omitted.

To a point. People who move around too much will not get the job if there's a comparable candidate that has stayed around longer at previous jobs.

Not necessarily, not when I hire. On-boarding, and ramping up in a new environment is a skill and to some extent, I see that as a value add. A person who has gotten comfortable in a role for 10 years is often slower to ramp vs. a person that has seen a lot of environments and projects.

Depends on the role. When it's a highly complex system where it will take 6 months for the person to become a productive contributing member of a team, I have most definitely heard and been part of conversations where we considered if the person will stay around long enough to be worth the effort of training. On the other hand, for roles where it's a series of 1-2 month projects to make fairly straightforward changes to network protocol implementations, time to turnover for a new employee hasn't been a concern.

Of course a reasonable explanation for why a person has turned over jobs so many times can negate the concern. It really depends on the candidate. My point is that someone early in their career needs to recognize that there are both upsides and downsides to switching jobs frequently.

Re: Ask HN: How can a junior dev maximize their income?

#69

Realize that answers from those who have been in your position years ago are answers fitting to a low interest rate landscape. The rule book has changed and so will the industries that are at the top.

I’ve been thinking about this. You bring up a good point. Advice of the last decade might not apply anymore given the changing landscape in tech and broader economy along with the feds response.

Joining hot new startups or VC propped companies may or may not be worthwhile. Is there a point of learning the latest FE frameworks or some new backend language? Companies will be risk averse. Hiring across the board might be tighter for the next couple of years with less roles so Leetcoding your way to a FAANG job might not be enough.

OTOH, the changing landscapes and uncertainty could lead to massive breakthroughs, initiatives and opportunities ex. (LLMs, AI, AR/VR, emerging markets in lesser developed countries, Renewable) etc.

Post reply on HN