Live data from Hacker News

Ask HN: What is your best advice for a junior software developer?

news.ycombinator.com

81–90 of 460 posts

Re: Ask HN: What is your best advice for a junior software developer?

#81
Always understand what you are doing, never accept advice like 'do it exactly like this to be on the right side', in short: stay clear of vodoo. Learn scripting to avoid repeating yourself, learn templates/macros or whatever it takes to avoid code duplication (it takes an effort, but is really worth it). Have some kind of document where you can write down your experience, what was learned, what kind of problems you have solved - patterns keep repeating and writing stuff down helps to be aware of these patterns. Try to learn reading code - it's a skill of great value. Learn specifics of build tools as a lot of time gets wasted if the tools are not understood

Be a bit sceptical of people who pass out judgement and advise

Re: Ask HN: What is your best advice for a junior software developer?

#82
Learn the tools that you'll use to develop software. Becoming proficient in the tooling will help you greatly with the actual development.

Some things you can do for example:

- Using linux? Learn to use the CLI

- Learn to use git/svn/... (whichever you use at work)

- Get comfortable with your IDE (shortcuts, customize to your liking, ...)

- Learn to use a profiler (JProfile, ..)

Those are some pretty general things but they'll help you in any job where you write code.

The tools are (imo) just as important as knowing the language you use.

Re: Ask HN: What is your best advice for a junior software developer?

#83
post #76

do not burnout I know you are young and you feel like you're invincible. I know you can pull an all-nighter and work the next day just fine. We have all been in that situation and believe me, it is gonna take a toll at your performance ... and it could even trigger or help you develop some health issues in your life that can sabotage you down the line. Realize there's only so much progress one can do in the day. Stop…

People vastly underestimate how easy it is to burn yourself out and how long or difficult it can be to recognize you've done it. Solid advice. I'd tack on finding a mentor who pushes back on you and has reasonable work/life balance expectations.

Re: Ask HN: What is your best advice for a junior software developer?

#84

Say "yes" to new challenges, even if you think they are over your head. Everybody feels a bit of imposter syndrome, so don't let yours stop you.

There's no cure for impostor syndrome. I have 13 years of experience, CTO and lead developer at my company and a part of me always thinks people are way overvaluing my skills. You just learn to ignore it, but it never goes away.

Are you sure it needs to be "cured"? Lately I have been thinking that it's a blessing in disguise; a painful -but effective- motivator to improve and seek out new skills and more knowledge.

Yes, it comes with a side of depression, and that really sucks, but I've found if I'm deep in some tech I don't know, it doesn't seem to affect me nearly as much.

Could it be jut us getting restless? The feeling we haven't learned anything new or faced any new challenges lately?

Re: Ask HN: What is your best advice for a junior software developer?

#85
post #83
post #76

do not burnout I know you are young and you feel like you're invincible. I know you can pull an all-nighter and work the next day just fine. We have all been in that situation and believe me, it is gonna take a toll at your performance ... and it could even trigger or help you develop some health issues in your life that can sabotage you down the line. Realize there's only so much progress one can do in the day. Stop…

People vastly underestimate how easy it is to burn yourself out and how long or difficult it can be to recognize you've done it. Solid advice. I'd tack on finding a mentor who pushes back on you and has reasonable work/life balance expectations.

I sometimes find people that have mentors that have crappy work/life balance and they look up to them like they're some kind of superhumans.

It's just like in japan when someone falls over a heap of work on premises at late hours, instead of lazy they think the guy is a 'trooper' for staying in for such a long time ("must be a strong person").

This has to stop.

Re: Ask HN: What is your best advice for a junior software developer?

#86
post #49

On the slightly more negative side: everything management tells you that's not in an email will have "never happened" when it's convenient. When you have a conversation with anyone where you think a plan was verbally agreed on, before doing anything your first action is to go back to your desk, write it in an email, send it to them as confirmation and find at least 1 other person, ideally in your reporting line, whic…

> On the slightly more negative side: everything management tells you that's not in an email will have "never happened" when it's convenient.

This brings us to two very important points:

1. Never delete any email. Only archive. Search does wonders to cover your ass.

2. Never use company email for anything personal because you are never going delete any email and you are not the only person who can search your company email.

Re: Ask HN: What is your best advice for a junior software developer?

#87
post #49

On the slightly more negative side: everything management tells you that's not in an email will have "never happened" when it's convenient. When you have a conversation with anyone where you think a plan was verbally agreed on, before doing anything your first action is to go back to your desk, write it in an email, send it to them as confirmation and find at least 1 other person, ideally in your reporting line, whic…

And it doesn't even have to be any malice. People forget things, (re)interpret things until a thing is no more, or just misunderstand them from the get-go. This is a good advice, glad to see it. While it won't be helping you much to get through your day, it'll count where and when it matters a lot.

I think you're underselling this. You're right that malice is relatively rare. Ambiguity, however, is the norm.

For example, say you have a quick discussion and decide you will do task X and your colleague will do related task Y. You nod and head off to work. For most people, this feels like a commitment but if they haven't explicitly promised a deadline then there's no assumption of when it'll be done. So it might actually never be done, and whatever commitment has been made is super weak.

But then: you write an email "Thanks for the chat. I'll do X this week and you'll follow up with Y in time to ship by Thursday the 11th". By getting explicit about the timing you're really asking them, in a specific but not confrontational way, to seriously consider the timing portion of the implied commitment. Maybe they're super swamped with something else and assumed you'd be OK waiting? Maybe the work is more complicated than you realized and will take longer?

For most people, in most work environments, these kinds of ambiguous commitments are more common than clear, thoughtful ones. But anyone in an interaction can help steer it toward clearer commitments, and this is frequently very valuable. It's valuable to you because you know what you can really expect from others (or if they let you down, you know the difference between them failing to magically read your mind vs. do what they promised). It's valuable to others (as long as you're not a jerk about it) because it'll help clarify misunderstandings before they become a bigger problem.

Re: Ask HN: What is your best advice for a junior software developer?

#88
Socialize with people in your organization. Get to know people outside your team, especially those from non-technical departments. Try to have lunch with different groups in different days

Why:

1. Chances are you'll meet very interesting people, with a background different than yours. This is invaluable, in my opinion

2. You'll understand how the organization works and how information dissipates.

3. You can learn about their jobs, and if possible, find ways to make their jobs easier for them. Do someone a favor, they'll most likely return it.

3. Networking can provide very interesting opportunities in the future

4. You'll get perspective from outside the technology bubble

Physical exercise. If possible, try to do it at least 2 days a week. Besides the obvious physical health aspects, regular exercise is a performance boost for intelectual work.

Best of luck!

Re: Ask HN: What is your best advice for a junior software developer?

#89
post #49

On the slightly more negative side: everything management tells you that's not in an email will have "never happened" when it's convenient. When you have a conversation with anyone where you think a plan was verbally agreed on, before doing anything your first action is to go back to your desk, write it in an email, send it to them as confirmation and find at least 1 other person, ideally in your reporting line, whic…

Thank you for writing this. I came here to say the same. It is vitally important that people just starting out learn this and make it habit.

Also, if you have an important decision to make, something that if it goes wrong it would be pretty bad, don't make that decision unilaterally. Partner with your direct report. Get them to sign off on it.

Re: Ask HN: What is your best advice for a junior software developer?

#90
post #2

Don't stress about not being good enough when you see other people's work. People show off their end result and not the hundreds of broken iterations it took to get there. You can build exactly the same stuff with a bit of effort, learning and time.

I've been coding professionally for a decade and I'm pretty darn good at it, but I still have to tell myself this.
Post reply on HN