> <i>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</i><p>What I'm getting from this is that Microsoft is a terrible place to work.<p>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: <a href="https://faculty.washington.edu/ajko/papers/Li2015GreatEngineers.pdf" rel="nofollow">https://faculty.washington.edu/ajko/papers/Li2015GreatEngine...</a><p>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.<p>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.
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".
This is an appendix to a PhD dissertation of interview of Microsoft software engineers: <a href="https://digital.lib.washington.edu/researchworks/bitstream/handle/1773/37160/Li_washington_0250E_16239.pdf" rel="nofollow">https://digital.lib.washington.edu/researchworks/bitstream/h...</a>
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.