Live data from Hacker News

Senior engineers are living in the future

zerobanana.com

161–170 of 241 posts

Re: Senior engineers are living in the future

#161
post #107

Being a senior engineer is weird when looking retrospectively. I remember being a junior and experiencing what the author is talking about with respect to puzzlingly staring at my seniors when they could answer obscure questions. Now I do it and do the same things they did with me: facilitate my thought and troubleshooting process rather than give me answers. I think the people that are successful in Senior+ engineer…

> Not everyone makes it to senior

As a someone who isn't a junior, having two years of game development (in-house game engine dev) and five years of enterprise (mostly web-based internal tools & some data engineering with big data) development under my belt, but hardly a senior either, what do you think as the alternative to not "making it to senior"? Asking out of curiosity.

Re: Senior engineers are living in the future

#162
post #42

Earlier quoted context omitted.

I find that egos can be really fragile when people are just starting to learn things. Pointing out the mistakes so quickly can seem like a great help (and it is!) but some people react like they're staring at the sun. Instead, I find it better (except for how long it takes) to walk them through finding the problem as if it's really hard and just nudging them to the steps they'd need to take to find it themselves. The…

Some people are lucky enough that the things they focused on early in life are things they were good at. Unfortunately, I think some subset of those people also develop an aversion to things that they don't appear to reach competence in as quickly as prior endeavors. That's a shame, because often I think people that have competence in a subject come naturally to them end up at a disadvantage later, because their foun…

I find the opposite. If you know how it feels like to learn something you have a natural talent for, and you know what it feels like to be struggling, then you can choose to focus on the things that are most "efficient use of your time". Especially considering that life is short.

Of course, you can always choose to learn something you aren't best at, but at least you know the trade offs (i.e. needing to spend relatively more time to reach the same level of competence as more talented person).

Re: Senior engineers are living in the future

#163

Earlier quoted context omitted.

> Surprising your manager unpleasantly never leads to good outcomes for you... Not quite 'my' manager directly, but a client's PM. They had a ... PM/PO type person who was quite insistent that we had to have feature X by date Y. Slightly aggressive, but... sure. Between that insistence (over weeks) and the date Y... that person left and a new person started. 4 days before a walk through (where new items were demonstr…

Well, yes. Shitty management still exists. And the power imbalance is always there. I'm not saying not surprising your manager guarantees good outcomes, I'm just saying surprising them guarantees bad outcomes. The lesson I've drawn for myself from similar incidents is "know all the stakeholders, and talk to them". Consulting/client work makes it extra hard, because stakeholders just keep coming out of the woodwork :(

The power imbalance fascinates me - why should it exist at all?

Do as I say or else? Why not, credible mission, great story telling, compelling vision, a well argued rationale.

I mean. If we paid everyone UBI, then every compmay would look a lot like the Linux Kernel (insert preferred less shouty FOSS project here)

Re: Senior engineers are living in the future

#164
post #107

Being a senior engineer is weird when looking retrospectively. I remember being a junior and experiencing what the author is talking about with respect to puzzlingly staring at my seniors when they could answer obscure questions. Now I do it and do the same things they did with me: facilitate my thought and troubleshooting process rather than give me answers. I think the people that are successful in Senior+ engineer…

> Not everyone makes it to senior As a someone who isn't a junior, having two years of game development (in-house game engine dev) and five years of enterprise (mostly web-based internal tools & some data engineering with big data) development under my belt, but hardly a senior either, what do you think as the alternative to not "making it to senior"? Asking out of curiosity.

Staying mid level. Although the "senior" title of yesteryear is closer to the "staff" title of today, even at the top tech firms.

Re: Senior engineers are living in the future

#165

Earlier quoted context omitted.

Code quality is very real, but the bounds you have to exceed before lack of quality start to bog down development are pretty large. As a senior I can pretty quickly tell in the languages I write in often, when something is a smell, and if you keep repeating some code smells for a like a year you'll start seeing compounding effects on development speed. Understanding when to allow those with good reason and when to co…

Eh, I've seen a number of startups sunk (as in went-out-of-business sunk) because of code quality issues. Eventually you hit a wall where every bug you fix introduces more bugs, and the product does not converge to a state where you can launch it. Then the VCs start getting impatient and you run out of money. The point where this happens depends a lot on problem domain. If you're doing well-understood CRUD-screen dat…

Oh sure, I didn't mean to suggest code quality can't kill a business. I however think like you said it's very domain dependent on how quickly that happens. I think taking on no debt wrt to code quality is impossible though and knowing how to take on that debt and pay it down to effectively meet the broader business goals without doing irreparable harm is something everyone has to contend with while being a dev.

That said, I can really only speak to web api dev, data engineering and search. I'd say out of all of those search was the tightest area with regards to quality and even then I was lucky to be working with another very talented dev. Him and I didn't run into very many issues we were unable to solve with scaling the technology even after hitting 100m pages or so and we could have kept going on scale but we were cost constrained, navigating the business side was far more challenging for us.

I'll admit as well I've been pretty lucky so far to work in situations where code quality is considered and managed and haven't yet worked somewhere where the concerns were entirely ignored or the team didn't care.

Re: Senior engineers are living in the future

#166

Earlier quoted context omitted.

What purpose does it serve though? I think being able to read and understand a Go program is a better example. That does seem like a reasonable and useful ask in 3 days for a veteran PHP/Java dev, and something that is more likely to come up in practice. What is the context of the former? "Welcome to our team. I know we didn't hire you as a Go dev. You have 3 days to "be able to write Go". I have long subscribed to "…

If you hire someone in a language they don’t know, you expect them to learn on the job. It’s reasonable by day 3 to expect them to show some code - even if terrible.

At some companies you’re still in onboarding hell on day 3.

Re: Senior engineers are living in the future

#167

Earlier quoted context omitted.

I would bet hard money that even an experienced developer wouldn't learn C in a year (e.g. avoid or recognize most UB and security issues) without prior exposure. I'll grant that C is pathological in that respect though.

Maybe we have different bars for what it means to learn something, but if I worked with an experienced dev who took a year to learn C (and there was an actual need for them to learn it) I'd question their claimed experience. It shouldn't take more than a few weeks to be capable of using C if you have a decent background with other procedural languages and already know the difference between heap and stack storage (so…

There's a lot of baggage that comes with each language. I could probably learn any language at that point, but it also takes time to learn whole ecosystem, mostly used libraries and tools. You typically can't do this in week or two, because you need to actually write something and see how it feels, if there are any surprises.

You would probably not want someone with little experience in given language, to touch production codebase without review, because there are always traps that you might've not encountered in other languages.

I typically don't touch low-level programming languages, but once I had to use C to write some small adapter to communicate with some Oracle product. I did it, it worked as expected, but I would not be able to use it efficiently for complex solutions without more experience with creating and managing solutions in C.

I can also write in Go with some basic proficiency, I felt confident at one point in my abilities, but when my code got reviewed by someone specialized in Go, he would propose several improvements that did not cross my mind, because I had less experience in Go.

Re: Senior engineers are living in the future

#168
post #20

One of my classmates in college couldn't handle this. I'd glance at some awful Visual Studio compiler error and then point out a missing semicolon. He ended up feeling stupid, but I was trying to be encouraging because his code was pretty good aside from some missing punctuation, which will come with practice. He ended up switching majors.

I find it really weird that this isn't a universal experience. I've been coding for 15 years and could not imagine myself in your classmate's place - but I feel exactly the same while learning to draw. I try to draw a somewhat straight line or something at least resembling a circle, fail, and feel like it's completely impossible to me, be close to tears, and everyone who can do it might as well be a wizard.

I think it is a universal experience. That's why you're (presumably) a programmer and not an illustrator.

Most people naturally choose to focus on things they are relatively good at, instead of keep banging their heads on something they struggle at.

GP's comment seems to imply it was a negative experience for the newbie, but in all probability given the daily frustrations and chaos of software development in the real world, switching majors might actually be the "right" decision for that person.

Re: Senior engineers are living in the future

#169
The article's perspective is that the superiority of senior engineers lies mainly in the access they have to other people. I.e., they're not better, and it's not because of their experience; it's because of their position.

I.e., the politics of resentment have reached even here. Do junior engineers prioritize avoiding embarrassment over learning?

This is a really, really tough nut to crack. And let's not always hand-wave about safe cultures.

When in senior roles, I try to model learning from failure and sharing everything, from short script tips and fantastic books to leads and gossip. Also sit together.

But still: juniors have literally complained that it doesn't matter when I fail, because I'm already "made". Their sense that they have to prove themselves, and advance on some ladder, hangs over them always. Even, or especially, at leading companies, where everyone there is good.

Part of it may be style: if after a while you drop all the "please" and "maybe", you risk people confusing assertiveness with authority (triggers).

Feed them achievable projects where they can hide failures and show success. And give them their say. Doing this adds a new dimension of complexity to meetings and work factoring, but they eventually chill.

If it's better to teach someone to fish, think of it as producing fishermen instead of fish.

Re: Senior engineers are living in the future

#170
post #168

Earlier quoted context omitted.

I find it really weird that this isn't a universal experience. I've been coding for 15 years and could not imagine myself in your classmate's place - but I feel exactly the same while learning to draw. I try to draw a somewhat straight line or something at least resembling a circle, fail, and feel like it's completely impossible to me, be close to tears, and everyone who can do it might as well be a wizard.

I think it is a universal experience. That's why you're (presumably) a programmer and not an illustrator. Most people naturally choose to focus on things they are relatively good at, instead of keep banging their heads on something they struggle at. GP's comment seems to imply it was a negative experience for the newbie, but in all probability given the daily frustrations and chaos of software development in the real…

> I think it is a universal experience. That's why you're (presumably) a programmer and not an illustrator.

> Most people naturally choose to focus on things they are relatively good at, instead of keep banging their heads on something they struggle at.

My parents told me I had to get a degree - they had very little appreciation for art, and some appreciation for engineering, but 0 understanding of computers. So I enrolled in CS so they would get off my back. Before college I had written maybe 50 lines of C.

I was never particularly good at CS - I just did OK enough under the pressure of having a clear goal (a degree) and there being no alternative to success (definitely not moving back in with my parents. I would have preferred joining the foreign legion).

Post reply on HN