Live data from Hacker News

Ask HN: How can I grow as an engineer without good seniors to learn from?

news.ycombinator.com

211–220 of 305 posts

Re: Ask HN: How can I grow as an engineer without good seniors to learn from?

#211
post #103

Earlier quoted context omitted.

"It may sound reassuring that someone watches your back and won't allow mistakes or would help clean up a mess, but you should not keep relying on this anyway." This assessment totally devalues the experience of having an more senior, more capable colleague to learn from. They are not there to watch anyones back, stop mistsakes, or clean up anyones mess. Rather the point is that the junior member is able to watch the…

Agree 100%. Mentorship from more experienced colleagues can save an enormous amount of time in pain by pointing out someone is going in the wrong direction very early on. Mentors can also expose a mentees to “unknown unknowns,” which a mentee might not otherwise know that they need to investigate. I agree that “learning how to learn” is more valuable, but that’s not to say that mentors or more experienced engineers h…

You say you agree, but your points are opposite of his points.

Watching a senior is not a senior pointing you to pitfalls, or unknown unknowns.

The parent argues that although there is value in being near a senior, all the actions lay with the junior. This is a transition people need to make when they leave school and enter work.

Re: Ask HN: How can I grow as an engineer without good seniors to learn from?

#212

I was in a similar position for the first half of my career. 1) Start contributing heavily to a popular open source project you're familiar with and use. Try to make your PRs as high quality as possible. You'll get free code reviews from some of the best engineers in the world doing this. That'll be a million times better than ChatGPT code reviews and you'll be able to learn a ton from it while also getting your code…

Not so sure about 3. Wouldn't it be more sensible to be flexible in terms if what you optimize? Some projects need best work, some need a friendly face, some should just die quickly.

Determining what a project needs and doing your best to deliver those needs is what "doing your best" means. If you spend months working on a solution that needs to be and can be deployed in a week, because you want to make it shiny and such, you aren't doing a great job on that work.

Re: Ask HN: How can I grow as an engineer without good seniors to learn from?

#213
post #86
post #83

Technical lead (not even a Senior!) after 6 months? You must be either a genius with R&D knowledge or the company is having a really bad time. I've realized that to get the best learning experience you need to read a lot and get reviewed by experienced devs, who are not "stuck in the 90s".

> Our company is not a tech company

I mean, even if it's not a tech company, this process takes years and can be achieved only with a ton of experience.

Re: Ask HN: How can I grow as an engineer without good seniors to learn from?

#214

Couple of important lessons that will keep you in good stead for a long time: 1. Learn how to learn well, continuously, and sustainably. Tech changes rapidly. And you will want to hop from one domain to another, just for keeping things interesting and to move with markets. This is both a blessing and a curse. It is a blessing because you can start late and still be in the top percentile if you have the brains and wor…

Any recommendations on learning to "think clearly"? I feel like this is something I struggle quite a bit with and haven't found any good resources on improving it other than "sleep" and "exercise", which I'm not lacking in.

Re: Ask HN: How can I grow as an engineer without good seniors to learn from?

#215

I was in a similar position for the first half of my career. 1) Start contributing heavily to a popular open source project you're familiar with and use. Try to make your PRs as high quality as possible. You'll get free code reviews from some of the best engineers in the world doing this. That'll be a million times better than ChatGPT code reviews and you'll be able to learn a ton from it while also getting your code…

1) Is this really the case? I mean some of the popular open source project are kind of mature. So you would get some feedback, regarding some specifics of the frameworks. For sure you would learn a bit. On the other hand they are kind of "done" software, so you would not really learn how to build something new from scratch. Not sure about the other points.

You learn so much by looking at how mature succesful software looks under the hood, which you will have to do as a condition for writing a good PR.

But, sure, don't send PR's for things that don't matter just to send PR's, that's just annoying.

But if you send a 3-line PR to fix a bug, that required 15 hours of study of the code to diagnose and figure out the right 3-lines, that is HUGELY educational.

Working on immature or even poorly written software can be super educational too, nothing wrong with that too.

But if you only ever look at hacky not-yet-mature not-yet-proven software, how would you ever learn to write high-quality software, or even know the difference? You have to study known good code. The way programmers study something with a natural goal instead of just artificially, is in the course of trying to alter it "correctly", the study you must do to figure that out.

(I know some programmers who have literally never worked on anything but over-engineered architecture-switched-every-month-for-years barely-holding-together technical debt bankrupt software... and I think sometimes some of them literally don't know anything else is possible! Looking at mature respected code is crucial, if you don't even know what it looks like how could you possibly try to get there?)

Re: Ask HN: How can I grow as an engineer without good seniors to learn from?

#216
Haven’t read all of the comments, so I don’t know if this has been pointed out yet, but it’s important to know that you’re going to make a lot of mistakes, both technically and professionally. Try to stick around long enough to feel the pain of the bad decisions you’ve made in the past, because nothing will help you learn better what is and isn’t important to focus on. Get in the habit of revisiting your past work and thinking about what you would do differently today. Pay close attention to the business and how you and your team interact with it. Don’t neglect making connections with the non-technical parts of the business.

Remember the point of industry software isn’t the software, it’s solving business problems. “Right” technically and “right” for the business are sometimes not the same thing. The only way you can learn to tell the difference is by keeping a good pulse on the rest of the company, and looking at your past decisions in the light of whether or not they enabled its success.

Re: Ask HN: How can I grow as an engineer without good seniors to learn from?

#217
post #108

so many red flags here > fresh graduate data engineer to the company, they see this as "cheap labor" > hired 6 months ago as a freelance basically, they put you through the ringer without having to pay out benefits > essentially functioning as a tech lead a fresh out of college graduate is far from being qualified as "tech lead", you are out of depth here > with full responsibility and ownership of designing, impleme…

I think this comment is being too dismissive/negative/bitter.

There is truth here -- yes, OP is likely out of his depth a bit. Yes, he's likely to be seen as a "cost center" rather than an asset. Yes there's internal pressure to deliver at a level higher than experience.

But none of those are reasons to flee.

OP: I think you would be wiser to enjoy this situation, learn as much as possible, deliver as best you can, BUT be fully aware that you could be nixed at any moment and do NOT take it personally if/when that happens.

Another thing to do, on the other end of the spectrum, is not get "stuck" at this company. You might find yourself extremely successful there! But there is a natural limit to how much you'll be able to learn/grow as a solo operator at a non-tech company.

Use the time you have to learn as best you can and pivot to a role at a proper eng-focused org where you can get the mentorship you want (assuming you want that!). Find another gig before you have time to learn bad habits or get too stuck in your ways.

2 years at this company will likely be great for you and be an asset to your overall career. 10 years will likely not.

Re: Ask HN: How can I grow as an engineer without good seniors to learn from?

#218
post #202

Earlier quoted context omitted.

This is terrible advice. OP is profoundly lucky. He's working in a hard-to-break-into niche in our industry with super close access to someone that will dramatically level up his niche-industry knowledge. This positions OP for long-term success. I'm late in my career and can tell you that engineering skill only really matters in a few places and that what and who you know, as well as how you treat people/circumstance…

"This positions OP for long-term success. I'm late in my career and can tell you that engineering skill only really matters in a few places and that what and who you know, as well as how you treat people/circumstances, is 99% of the job." Correct, if they're just looking to catapult themselves to the upper echelons of "leadership" and "executive" careers. But that has nothing to do with engineering which is what they…

"leadership" is arguably the most important engineering skill. Every engineering role I've ever had required leading people or organizations to make the correct technical choices.

Re: Ask HN: How can I grow as an engineer without good seniors to learn from?

#219
post #191
post #144

Earlier quoted context omitted.

There is a big difference between articulating "code" clearly and articulating clearly when you speak / write to other humans.

I can see some differences, but none of them seem "big". In code you don't have all the extra communication avenues that we have when speaking, like body language, intonation, sarcasm and so on. On the other hand, when writing code we are not speaking in real time. We can think about a problem for a while, consider the best possible way to solve a problem and how to explain it. What do you see as a big difference?

1) Coding clearing in the moment vs (2) coding clearly for future selves is two different mindsets/contexts right there.

(3) Communicating clearly is an orthogonal skill to coding clearly. I think this skill is barely acknowledged in engineering cultures in comparison to the above.

I feel you have to have an engineering culture that values institutional knowledge retention, team education and growth — and not treating engineers as fungible — to get to level (2). Level (3) would be a great place to work.

Re: Ask HN: How can I grow as an engineer without good seniors to learn from?

#220

Couple of important lessons that will keep you in good stead for a long time: 1. Learn how to learn well, continuously, and sustainably. Tech changes rapidly. And you will want to hop from one domain to another, just for keeping things interesting and to move with markets. This is both a blessing and a curse. It is a blessing because you can start late and still be in the top percentile if you have the brains and wor…

For 2, I'll single out the skill of tailoring technical explanations to your counterparty's level of understanding and technical knowledge. The ability to explain to less technical people what your new project/feature does without going into too many unnecessary details and without being too high-level is invaluable. It builds confidence in your work for them (I know what this thing is doing - maybe not all nuts and bolts, but enough to operate with confidence) and in you as a professional (this guy clearly understands what he's working on and does not try to bury me in jargon or oversimplify things).
Post reply on HN