Hacker News new | past | comments | ask | show | jobs | submit login
What makes a great software engineer [pdf] (microsoft.com)
9 points by willhslade 8 months ago | hide | past | favorite | 15 comments



> Several informants described great software engineers as hardworking: willing to work more than 8 hours days to deliver the product. This typically meant working longer days, during weekends, and/or during other free time in order to accomplish goals. Informants believed that, at a minimum, software engineers needed to be willing to work beyond normal hours immediately prior to ship dates in order for the team to successfully deliver the product

What I'm getting from this is that Microsoft is a terrible place to work.

Schedule failure is a management fuckup. Expecting the line engineers to fix it is completely backwards.


Here’s the paper this appendix is referring to: https://faculty.washington.edu/ajko/papers/Li2015GreatEngine...

The study is based on interviewing 59 experienced Microsoft engineers. It’s very interesting and the traits listed all make sense and seem like they would be helpful. Of course, what people say and what people do sometimes have gaps, so I’m curious how much these traits matter when it comes to objective metrics. Which ones lead to safer code, or more shipped products? Which ones lead to happier or longer careers, or stronger career growth? Are there traits that correlate with higher salary? Stuff like that.

It would also be interesting to see if some traits do better at some companies than others. Maybe MS is an environment where the culture is such that certain traits help more than others, while at Google it’s a slightly different set? It’s certainly true that there’s a gap between large orgs and small ones, and between established companies and startups.


First, someone who is smart and doesn't mind sweating the small stuff. Second, even more importantly, someone who wants to change the world, but isn't honest enough with themselves to realize that they're not really going to change the world; they're just going to make rich people richer. Either that, or they just don't care and just want a paycheck.


Or someone who wants to change the world, for the worse.


The problem is for upper management there is usually a much shorter list of expectations, consisting of things like "propensity to work as much as needed to meet deadlines".


Can you leetcode? Can you design stuff on a whiteboard to scale to 18 billion users? Can you do it very fast? You're hired.


I'd expect that somebody that can do that is doing the hiring, possibly as a founder?


Founders never put themselves through the hoop jumping they put their employees through. Most wouldn't even meet the bar at their own companies.


It's been brought up that people who do the hiring or serve on the hiring committee would not be hired themselves based on their own hiring criteria and bar.


Possibly why As hire Bs and Bs hire Cs. If the interviewers aren't good enough to be hired, they certainly aren't good enough to interview.


Everyone has a price. If you want upward of 60 - 70 hours a week from me at any given point, great. We're gonna double that comp package right? There will still be some boundaries, but we'll get that in the contract.

Believe me, I understand as well as anyone how being a salaried employee can turn into abuse, but it shouldn't be a crime for someone to need the unicorn, rockstar, 10x leetcode ninja to really crank for months on end.... so long as they're appropriately compensated! That said, I'll never, ever do that again UNLESS it's my company.


This is an appendix to a PhD dissertation of interview of Microsoft software engineers: https://digital.lib.washington.edu/researchworks/bitstream/h...


This reads like the result of a team bonding exercise and doesn't contain much material content.


Many of these things (E.G. "hardworking") apply to almost any career, or can be trained, but to me curiosity and patience/persistence are the things I think have an outsized effect on whether someone is a great software engineer.


Would be more interesting and "real-word" seeing what - across the industry - are the usual trade-offs taken on the BAD traits of a SWE, and how they are related to the good ones.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: