Ask HN: What does mastery look like in software engineering?
131–140 of 290 posts
Re: Ask HN: What does mastery look like in software engineering?
#132I’ve been pondering this a lot lately, as an engineering leader. Masters in my organization have an extremely high ratio of value shipped to hours worked. This means two things. They are able to discern and avoid work that does not provide value (this is often their greatest skill), and the best ones can direct a whole team away from large swaths of work that is not valuable. And they are able to build systems such t…
I don't disagree with this, but sadly, a prerequisite for that is a position of privilege where you're able to push back against non-valuable work. I've seen many, many very good software developers that have this quality, but get overruled, and their true value goes unrealized as a result.
Re: Ask HN: What does mastery look like in software engineering?
#133Earlier quoted context omitted.
Additionally, expert engineers can better define the problem space to begin with. Some engineers can get things done and evaluate tradeoffs well, but end up solving the wrong problem. Expert engineers have the ability to think about a problem in a broader context than the engineering problem at hand.
“Talent hits a target no one else can hit. Genius hits a target no one else can see.” - Arthur Schopenhauer
- Howard Aiken
Re: Ask HN: What does mastery look like in software engineering?
#134Two words: Functional Programming
Re: Ask HN: What does mastery look like in software engineering?
#135Mastery in software engineering needs to be defined very specifically.
An example, I used to build Flash microsites, campaigns and games for an ad agency. I had a very good grasp of the tech, built projects for large clients etc. If you looked at me at that point in time you could say I had mastery, but now Flash is gone, and I didn’t switch over to React and other web based tech soon enough so my “skill” is lesser than someone who purely started in that domain.
Re: Ask HN: What does mastery look like in software engineering?
#136Earlier quoted context omitted.
How do you learn that solution curve and their tradeoffs? Swap jobs and hope you see them all in your lifetime? Read articles and hope you pick everything up correctly?
Sticking around long enough to see a big mistake bite you is sometimes better for your growth than swapping jobs.
An intelligent man learns from his own mistakes. A wise man learns from the mistakes of others.
Re: Ask HN: What does mastery look like in software engineering?
#137- High performance (in terms of efficiency in using computational resources)
- Reliable i.e does exactly what we want and doesn't crash. This also includes clear documentation.
I think to reach there, some of the things one may want do are;
a) Learn TLA+
b) Study hardware (processors, memory)
c) Study software, protocols like tcp/ip
d) Build experiments & ship
Re: Ask HN: What does mastery look like in software engineering?
#138Earlier quoted context omitted.
How do you learn that solution curve and their tradeoffs? Swap jobs and hope you see them all in your lifetime? Read articles and hope you pick everything up correctly?
Prototyping alternative solutions is a cheap way to help uncover trade-offs, and you can do this independently. Attending retrospectives after things go wrong is a good way for experts to introduce their thought processes to less experienced engineers. Asking "why?" when senior engineers deliver feedback during design review can help you learn that a trade-off existed when you did not see it.
Only, I didn’t like having two to chose from. Something told me three would be better. So we paired, I wrote mine, then hers, then just made another one up on the spot. Once we agreed they were complete and implementable, I shopped them to the team.
About 2/3rds preferred the made up one. Including me. So that’s what I implemented.
Re: Ask HN: What does mastery look like in software engineering?
#139I’ve been pondering this a lot lately, as an engineering leader. Masters in my organization have an extremely high ratio of value shipped to hours worked. This means two things. They are able to discern and avoid work that does not provide value (this is often their greatest skill), and the best ones can direct a whole team away from large swaths of work that is not valuable. And they are able to build systems such t…
I don't disagree with this, but sadly, a prerequisite for that is a position of privilege where you're able to push back against non-valuable work. I've seen many, many very good software developers that have this quality, but get overruled, and their true value goes unrealized as a result.
Re: Ask HN: What does mastery look like in software engineering?
#140Earlier quoted context omitted.
I don't disagree with this, but sadly, a prerequisite for that is a position of privilege where you're able to push back against non-valuable work. I've seen many, many very good software developers that have this quality, but get overruled, and their true value goes unrealized as a result.
Totally agree and I wish to those people to leave the place they are currently in and find a better where their skills are truly recognised.
I tend to encourage folks who come to me about quitting to explore opportunities within the team/organization/company before leaving so they can leverage all the social capital they've built up.