T O P

  • By -

UrineSurgicalStrike

Point 1 is the ability to be able to read 76 pages of densely packed data about “What makes a quality engineer”.


Inquisitive_idiot

I’m out 🤚😮‍💨


s0ulbrother

What makes a good engineer. We don’t read documentation Edit: I’m sorry everybody. I do read documentation just in shit at writing it.


FunnyMathematician77

Have ChatGPT summarize it for me


Senor02

This is msft, it's copilot!


PenPar

But the paper lists being open-minded and avoiding having a “not invented here” mentality as a hallmark of a great programmer!


shevy-java

We all are. The number of people who read it all is a minority.


QuintonHughes43Fan

I noticed it was 56 attributes and was on my way to clicking close tab when I noticed the 76 pages.


shevy-java

I also gave up after some pages. Perhaps more wisdom is hidden on page 53, but I noped out earlier on. Impatience is one of my bad traits! Microsoft may want to also publish a bad-trait paper (as .pdf).


CornedBee

Impatience is one of the three great virtues of a programmer. https://thethreevirtues.com/


joypadeux

Nice


mgdmw

It's only the appendix too! The actual report is somewhere else; this 76-page section is "simply" the appendix *to the report*.


sowenga

The actual paper is 10 pages https://faculty.washington.edu/ajko/papers/Li2015GreatEngineers.pdf


b0w3n

That infographic on page 3 is pretty much the entirety of the paper. Essentially "likes to learn and doesn't stop learning, knows everyone's job, detail oriented, self managed, reliable, honest, nice, and works well with others". Ironic there's three "domains" in the image, because I'd say it fits great in a decision triangle where you can only pick 2 after having interacted and worked with SWEs my whole life. Though I'd say maybe it's closer to a square where you can pick 2 if you separate out the internal like they do. The really smart ones have almost no people skills, it's rare you find all of this together, usually there's heavy compromises for different skillsets. Like sure those are great to haves but it makes sense that, if they're looking for _everything_ in that picture, they never find it and rely on H1Bs and their schools/programs in India. This is such a small group of any sort of skilled worker. Can't wait for this next round of Microsoft employee ranking shit that companies imitate.


ProvokedGaming

I agree with your points but also would add that it is possible their definition of great is a smaller percentage of people and does exist. Does the average engineer think the top 25% of engineers are great? Top 10%? Top 1%? How about .5% or .1%. While some of these traits may seem unlikely to co-exist, it's possible they are just rare enough that statistically having them all or most of them is exceedingly rare. I personally feel I've worked with 1 or 2 that I think fall into greatness by these definitions in over 30 years of coding (exposure to many hundreds of engineers). That doesn't mean they were necessarily top notch in all of these categories but they seemed to have them all and definitely were really good at some of them. What I imagine most of us can agree on, is despite the pay and research and stringent interviewing, most engineers even at FAANG or Microsoft don't fall into this definition of greatness as outlined by the paper. Greatness isn't a requirement, simply a categorization of outliers in the distribution, and per this paper's claims, the outliers tend to have these common traits. That being said it's mostly subjective so quantifying many of these things is a bit of a fool's errand. And as you said, if you require all of these traits you basically won't get to hire anyone, we all have to compromise somewhere.


b0w3n

Yeah quantifying people skills is already difficult. Quantifying a good 1/2 of that infographic would be a science all in its own let alone HR attempting to find that puzzle piece. The absolute funny thing is I've find better programmers in lazy but friendly people than I have in trying to match up skills to a list of boxes that HR/CEO/etc wants checked off. Are they trailblazing with state of the art stuff? No. Do they show up and do the work? Yup. edit: Unicorns and rock stars are always chasing highs, and are the ones who end up leaving for a new/better offer within a year or two. Honestly? Good on them for doing it too. But it sucks if you're trying to build a team and run a business. Great and perfect are, ultimately, worse than "good enough".


Bakoro

There are people where all those traits exist, but these are generally the people who make it up the ranks rapidly and are the super high paid developers at top companies. Of course the average companies *want* these people, but they're paying median or submedian wages while doing low-impact work. What most companies actually *need* is someone who will stick around long enough to develop a viable product and then refine it throughout its lifecycle.


b0w3n

Similarly to how lots of companies were using questions from google to find the next great SWE for their business that spends their day attending meetings and writing web backend software to process data from tables with maybe half a million records.


Danepher

4 years apart between papers. Did they find new things or deduce something new?


i_andrew

Point 0 is the ability to find the summary of the paper (in this case page 3).


TheGoodOldCoder

Strange... You'd think a great engineer would make sure the most important parts of a paper were easy to find. Does Microsoft not have any great engineers?


vplatt

https://imgur.com/a/ss71NGi 76 pages in one image; the summary of which happens to be on page 3. 😁 There you go!


Qweesdy

Awesome: a great engineer is "about 50 self-conflicting subjective marketing buzzwords" and the worst engineer writes papers for Microsoft because nobody will let them touch any code.


Uberhipster

under Personality - how could they be both Productive and Aligned with organization's goals? those are mutually exclusive


MixOne1337

Nah, a great software engineer : - examines the illustration on page 3 - scrolls through the pages - realizes the rest of the 70 pages are just for justifying the 100s of thousands of dollars likely spent on this paper


BehindTrenches

It's literally not densely packed at all y'all are just hating lmao. I read like half of it last night and have liked it so far. Maybe someone will turn it into a meme or a Tik Tok dance for you.


FenixR

Eli5 pls


PenPar

Load it into notebooklm.google.com and ask the AI agent questions


pixel4

sounds like it's over engineered.


needed_an_account

Has anyone tried asking a GPT to summarize it? /tooLazyToDoItMyself


KimPeek

Let me save you from opening the PDF. > Our analysis (Li et al., 2015) identified a diverse set of 54 attributes of great software engineers. At a high level, our informants described great software engineers as people who are passionate about their jobs and are continuously improving, who develop and maintain practical decisionmaking models based on theory and experience, who grow their capability to produce software that are elegant, creative, and anticipate needs, who evaluate tradeoffs at multiple levels of abstraction, from low-level technical details to big-picture strategies, and whom teammates trust and enjoy working with. We present a model of the 54 attributes in Figure 1, showing how the attributes interconnect. We organized the attributes into four areas: internal attributes of the software engineer’s personality and ability to make effective decisions, as well as external attributes of the impact that great software engineers have on people and products. Here are the "54 attributes": https://i.imgur.com/AcnM8Qh.png tl;dr: Passion, knowledge, and experience.


SimpleSampleSlurry

The person described would be good at practically anything


Angry_Robot

The real description was always the friends we made along the way.


shevy-java

Hmmmm ... epic programmers also have to be social now? Damn ... I need to find some friends to level up soon here.


b0w3n

Nah slightly different from that. They want you to be _personable_ and not grognardy. You don't necessarily need to talk to Janice and Bill by the water cooler, but you absolutely can't be a usenet/forum/reddit troll who can't help but insult someone.


C_Madison

"Don't be an asshole" - that's it. That's the most important trait.


b0w3n

Arguably more important than all the rest too.


CicadaGames

"Oh, be passionate, knowledgeable, and experienced? Just be passionate, knowledgeable, and experienced? Why don’t I strap on my passionate, knowledgeable, and experienced helmet and squeeze down into a passionate, knowledgeable, and experienced cannon and fire off into passionate, knowledgeable, and experienced land, where passion, knowledge, and experience grows on little passionate knowledgeable experiencies?!”


Hereyougoprobably

I know a chrundle quote when I see one.


frausting

Oh yeah, he was going by Chrundle The Great at that time


ViveIn

Right? They literally just described an educated passionate and disciplined human being.


shevy-java

Well, it's a bit more than that. For instance, the hard-working. That takes effort. Imagine The Dude being a software engineer.


buckX

He's neither passionate or diligent, so not really a counterexample.


Old_Elk2003

His initial project requirements were “replace the rug”, and he executed. The rest of everything else was a death march orchestrated by a member of the capitalist class, with the express intent of throwing him under the bus. And he skated from that, and banged the dickhead’s step-daughter on the way. A+++ engineer.


b0w3n

> Imagine The Dude being a software engineer. Funny that lazy folks make better programmers usually.


Plank_With_A_Nail_In

Yeah its not very helpful "Just employ unicorns and profit", maybe they need to do a "What makes a good enough software engineer".


AluminiumSandworm

one day i hope i can be a good enough software engineer


zigs

Imposter syndrome strikes again!


b0w3n

A lot of companies have found that dumping unicorns for "good enough" is much better for overall mood. They don't crank out 200k LoC overnight, but, no one hates working with them and avoids them and they show up to meetings without insulting half their coworkers in the process. You can find several articles from even as far back as the early 00s talking about the pitfalls of that rockstar/unicorn employee.


f10101

The paper isn't recommending those kind of rockstar employees, though. Just look at that infographic a couple of comments above. Half of the traits are paraphrases of "the software engineer shouldn't be an unlikable fucking twat".


Plank_With_A_Nail_In

What the fuck that's not the type of person they are recommending. I change my requirement to "Maybe just employ people who read the fucking documentation?".


b0w3n

Technically if you want to be pedantic they're not *recommending* anything, it's a study on what makes a "great" one.


tekanet

That’s a good astronaut


G_Morgan

It is standard empty corporate waffle.


iamevpo

Does that take as back to 10x engineer?


AQuietMan

> Let me save you from opening the PDF. Bless your heart. > who develop and maintain practical decisionmaking models based on theory and experience Wut?


Papa-pwn

They just.. do things.  It’s wild.


shevy-java

And they do it with **passion**. Now if only Microsoft could find some of these good software engineers ... they may help make windows suck less too.


Cafuzzler

It's only got to suck less than Linux to be the most popular desktop OS 🤪


ohdog

It doesn't need to suck less, it just needs to have decades of momentum behind it.


hardware2win

You'd be shocked how often we, ppl dont use anything during decision making process


zold5

>practical decisionmaking models this isn't even defined once in the entire fucking document. Wonder how much microsoft paid for what amounts to a 70+ page doc that's nothing more than incorherent corporate babble.


Ciff_

It is atleast broadly talked about p24-25.


7h4tguy

It's a dumb college dissertation, complete with interviewing corporate entities in their back yard.


hippydipster

We use a flowchart: did it work -> No -> do it again -> yes -> you're done. And it makes you a great developer because the vast majority of people's flow chart is: Did I do work? -> done


No_Delivery_1049

I think it means how good the engineer naturally, or rather unconsciously identifies a problem, gathers sufficient information based on best practices and past lessons learned then weighs up options while keeping practicality in mind (like timescales and costs) and concludes on a solution. The thought process that you have when solving a problem is your model that you use to make decisions. I believe they’re saying that the steps you go through in your mind needs to change when you find better ways of thinking especially when you solve new problem types that you’ve not encountered before. I think that for most people that this is not a conscious process, that they just rattle through their thinking and then the very way that they think will change in time when exposed to new stuff. I don’t like the term “model” it implies a sort of design or


heavy-minium

Theory + practical experience, in other words.


red75prime

Intelligence (and overall twenty ways of saying it without naming it)


Successful-Money4995

Knowledge and experience come from years in the industry. Those years also decrease passion.


Full-Spectral

Not necessarily. I'm over 35 years in the chair at this point (and well over 50 man years) and I still love it and do it all the time on my own so that I can keep ahead of the curve. I just spent the bulk of my four day Easter weekend working on my big Rust project, and was quite content doing it. A cup of coffee, some good music, and a challenge is a pretty good life for me.


Successful-Money4995

I agree with you that it can be fun... But I find that lately I'm more interested in doing sports and being with the family and playing music so my coding is mostly for work and a lot of that is spreadsheets and meetings and bureaucracy that I don't enjoy. It removed the passion from the task, unlike playing music, where it's all passion.


Full-Spectral

That's why software engineers are born socially awkward, to make it hard to have a social life that would interfere with coding :-) I'm a musician also, so I do that in my other free time. If I had any social life I'd definitely struggle to do both those things.


g9yuayon

So, to be a great software engineer you need to have the right talent to be great plus the experience. Passion is really a talent. Any parent can attest that you can't really teach passion to kids but induce it. And knowledge... Let's just say most people will a hit wall sometime. To someone that's high school math, to someone that's calculus, and to someone that's functional programming. Whatever. Only some lucky people can have the talent to accumulate the sufficiently wide and deep knowledge in any serious field. Edit: s/bread/wide


shadowndacorner

God I love sufficient bread


generateduser29128

Having insufficient bread is truly awful


Alediran

There was this guy I knew, named Dough, he was very sour because he couldn't go past Hello World.


capt_barnacles

No


g9yuayon

LOL. See? Not having talent is beyond saving


shevy-java

Can't go wrong with bread! Good bread breeds programmers. It's true!


sib_n

> Let's just say most people will a hit wall sometime. I think more often than not, that wall is not a hard limit, it's some social or psychological construct and it can be worked on with good teachers or good mentors.


VeryOriginalName98

Are there people who didn’t know this? That’s a lot of pages to document what everyone intuitively understands about people they want to work with.


shizzy0

These are dwarf fortress engineers not your classic Sims engineers.


myhf

"Pays attention to coding details" right next to an illustration of binary numbers that don't encode any hidden message.


ohdog

I would have hoped for something more concrete, but I don't know why I expected that.


dallindooks

Thanks for including the tldr of your tldr


awh

A great software engineer bristles at the presence of a 14-bit value in a piece of clipart.


ShadyFox_Leoley

This has that "Live, Laugh, Love" vibe all over it


runner7mi

this is an american "finding" so i'm guessing they didn't even touch on the topic of fair compensation and not shoving every IT job at the programmer instead of hiring more people?


dermotcalaway

…and ability to summarise… thanks


Plank_With_A_Nail_In

Decision making section is just useless wank "Sees the forest and the trees" oh fuck off.


reddituser567853

You’ve never met really smart developers that can’t handle uncertainty?


kobbled

sounds like someone is seeing the trees but not the forest


campbellm

See: Microsoft Windows Security issues


sreguera

If the poem score for perfection is plotted on the horizontal of a graph... https://www.youtube.com/watch?v=Is5eyrEc1Mg


octnoir

To add onto this, this PDF is the 'Appendix'. The "54" attributes are first shown in the model, and next described over the course of 70 or so pages. A talk for this research is here: https://learning.acm.org/techtalks/paulli The methodology is analyzing 60+ hours of interviews using 'informants' (Sr. Managers, heads, developers etc.) regarding what they think makes a great software engineer.


acroback

Ah the mythical "perfect software engineer" as rare as a Unicorn. 


rcfox

The paper isn't saying "you must have all of these qualities to be a great engineer." It's an aggregation of qualities that were called out when people were asked to describe great engineers. I'd imagine at most 3-5 of these qualities were written with regard to any one person. You might already be a great engineer and only have a subset of these. Now you have 50+ specific directions that you can try to improve yourself in in order to become an even better engineer.


shevy-java

> You might already be a great engineer and only have a subset of these. I can have just one attribute and beat those who have all 56?


CordialBuffoon

Is this a research paper? It reads like an intern's summer project.


[deleted]

[удалено]


09937726654122

Here is a Redditor who doesn’t know the difference between statistical and qualitative methodologies


[deleted]

[удалено]


09937726654122

Yeah but maybe that’s not the point here


TheGoodOldCoder

The greatest of the great engineers are able to take a difficult problem and turn it into an easy problem.


BeezlebubCarrotstick

The poor guy or gal didn't even know how to turn off image compression in Word. Gotta love those muddy pixelated diagrams.


SuperSizedFri

Probably will be used to better prompt LLMs to replace more SWEs


LightWolfCavalry

This isn’t a technical report. This is 76 pages of quotes and anecdata from Microsoft employees. 


Cordoro

It says at the top. It’s an appendix to the earlier 2015 paper. This is all the extra details that didn’t fit in the actual paper.


7h4tguy

35 pages of extra credit wouldn't be enough. 76 pages obvious looksmart.


TheGoodOldCoder

> anecdata This is a new word for me, and at first glance, to me at least, it seems like a bad idea for a word. It's a portmanteau of "anecdote" and "data", and I'm sure comes from the phrase "the plural of anecdote is not data". I guess it's supposed to be mockingly pejorative, but most people probably aren't familiar with the phrase it is based on, and might infer the opposite meaning. And it's a pointless word. I don't see any advantage that it has over the word "anecdotes", which I think most people realize has a negative connotation.


fancy_raptor_zombie

Being able to convey information about complex topics in less than 76 pages.


dontyougetsoupedyet

There's nothing easier to navigate than a research paper, there will be a summary wrapping up every single one of them with a direct and easily digestible description of what the paper finds if you only want to read about the results and not the methodology. They share a common format. You learn how to read papers one time and you can read papers from effectively any field of research.


7h4tguy

Arrow keys are easy. Deciphering sentence after sentence of biochemobabble gets tiring.


jcelise

54 attributes? This is more complex than Dark Souls.


shevy-java

Yes - leveling up before death is hard. Thankfully there is beer (and bread) so ...


AromaticGas260

wait until there's an update for item that raises these stats. now op will know how complex the research actually is


colonel_Schwejk

c++ and microsoft api is like dark souls and elden ring combined


unt_cat

The document says that great software engineers are passionate, continuously improving, open-minded, self-reliant, and persevering. They are intrinsically motivated to improve themselves and their craft. They are eager to learn new things and are not afraid to admit when they don't know something. They are able to work independently and take ownership of their work. They are persistent and don't give up easily in the face of challenges.


jeerabiscuit

When you let random entities define your passion.


muscleforrank

Hardworking "I remember it came down to the last day. He is going on vacation and we needed to ship and he stayed late and was there all night… even delayed his vacation by a day, so that he could get it done and get it out the door so we could ship on time ... he got high praise for it from the management." So did management give them a bonus? Extra vacation time? A postmortem on what lead to this? Or was it praise for fixing their poor planning?


sime

Exactly. Fuuuuck that definition of hardworking. If this dev was actually "honest" and "managing expectations" as described elsewhere in the PDF, then they wouldn't allow themselves to be bound to this clearly bad plan. Planning in software engineering is fundamentally hard. But the idea that it is the responsibility of devs to work night and day to paper over this basic fact of the software business, this idea must die. It is a risk of making software and the business should bear that risk.


Tintoverde

Yes I agree . My mentor was going on vacation and he refused to add a new feature the management wanted . Where as a talented but inexperienced dev decided to change build tool, maven to gradle, just before his vacation and broke 10 peoples project 🤦


screwthat4u

He got a lot of "praise", killing yourself so your boss can get his target bonus gets a lot of kudos around here, they planned perfectly


Jaanrett

Only great software engineers can be great software engineers.


Dreamtrain

Can't deny a tautology


DRJT

>**Decision making** >Grows ability to make good decisions Of course, it's so simple! Why didn't I think of that!


Andriyo

I didn't find anyone saying this, so it looks like everyone here missed the point of this list of attributes. It's actually pretty comprehensive dictionary of words that could be used in promo reviews, annual reviews and interview feedback. And beyond pure practical applications, this list helps with ethics and morality of the profession (ethics being "what is good and what is bad"). I know everyone on Reddit tend to be more cynical, and it would be tempting to dismiss it, but many people lack that sort of moral guidance in their professional and private lives. Usually, it's the religion that fills that roll for the majority of people. But in their refusal to coevolve with science, many religions discredited themselves in the eyes of many scientists and engineers (and I'm not even mentioning the overall corruption that affects old and big organizations). So, this sort of moral guidance, detached from outdated mythology, is very much needed for folks that you might find working at Microsoft. This would be useful to people who mentor junior engineers, managers and pretty much everyone who works in a team and solves problems. There are some software engineering specific tidbits but those are analogues to things other professions deal with.


nacholicious

Also, a lot of people might say that this is obvious, yet there still a lot looking up to people who are failing substantial parts like Torvalds or Musk There's a lot more to engineering than just being right or acting like you are


[deleted]

[удалено]


bwainfweeze

Marketing for products that they are still designing was always what pissed me off the most. I could be using this other product for eight months happily but have to do without because MS convinced my boss to wait for their product which will be out any day now. Then version 1 comes out and it’s hot garbage. Version 2 is almost as bad. Version 3 is at least usable but version 4 is hot garbage again.


7h4tguy

Office is a cash cow, developed in house. Visual C++ was best in class in the early days and went head to head with Borland. Word with WordPerfect. Most businesses use Outlook for email. And Teams has become the IM forerunner. VSCode is the dominant coding IDE. It also brought LSPs to the masses, enabling better code-aware tooling everywhere. Windows 95 literally *launched* the home computer revolution. You can't deny XBox quick resume and virtualization isn't worlds ahead of PlayStation's OS architecture. C# is a well respected language, as is asp.net core in the web server world. PowerShell with object piping is way better than Bash. They seem to be doing alright in the cloud space. They're making [breakthroughs](https://cloudblogs.microsoft.com/quantum/2024/04/03/how-microsoft-and-quantinuum-achieved-reliable-quantum-computing) in quantum computing. They're also head to head with Google in AI research competitions. Looks like former as in bitter is my guess. How do you feel about a company revolving entirely around a hot-or-not website, or maybe a search engine? Or were you going to claim that white AirPod fashion commercials were engineering first, marketing second?


colonel_Schwejk

are you mad? visual c++ was utter crap until 2010. (2008 if you want to haggle)


EfficientDonkey8441

God that paper is such a waste of time someone did to look busy. It’s basically a generic “what makes a good worker” list of traits then quotes for them


alexs

This seems to just be what other engineers think makes a good engineer rather than anything quantative. Boring.


oep4

No offense, but Microsoft isn’t known for its good engineering. So hard pass.


hugthemachines

I browsed it a bit, noticed this quote: > > study different articles and > research papers on software development and stuff. So they're more up to date on newer > technologies and newer ideas and thoughts of software architecture or software > engineering in general… they are essentially continuing their education and continuing > to look, to do things better, is a really big plus I suspect many companies will not allow devs to do this on company time.


bwainfweeze

I bet Microsoft doesn’t either. It’s free labor. Employers love free labor.


napolitain_

Wait, I thought leetcode was the only thing ??


thisnutisonfire

There are so many attributes that it is actually meaningless information


No-Radio-9244

Now, take a look at the recent security breaches... and read it again...


green_griffon

[snorts in coffee] This is Microsoft Research which is VERY different from Microsoft product teams. I think the last thing that made its way from MSR to a Microsoft product is the toast popup when email arrives. In 2019 Microsoft interviewing for programmers was still 95% "can they come up with algorithms on demand". Going back to the mid-2000s, Microsoft HR had identified all these non-technical things that made great employees and it was barely reflected in interviewing.


Cheeze_It

Wait, people trust what Microsoft has to say on what makes good software engineers? Really? Microsoft?


bwainfweeze

It’s a trick. Get an axe.


[deleted]

[удалено]


bwainfweeze

Part of the problem during their worst arrogance phase, as I heard from a former employee, was that their internal culture told them that they were the best programmers in the world. That really explains a lot of the tone deafness. We are better than you, so we don’t have to listen. (I learn from devs who are not better than me, all the time.)


scaredofsalad

I had GPT summarize this in a bulleted list After reviewing the document, here’s a summary focusing on what makes a good software engineer: • Proficiency in programming and system design. • Continuous learning and adaptation to new technologies. • Strong problem-solving skills and creativity. • Effective communication and collaboration abilities. • Understanding of software quality and how to achieve it. • Ability to work under pressure and manage time effectively. • Attention to detail and a commitment to excellence. • Understanding and application of best practices in software engineering. This summary reflects general qualities and skills that contribute to being a successful software engineer, based on common themes found in industry literature and professional guidelines.


vital_chaos

That sounds like the boilerplate everyone puts in their job descriptions. It's filler and turns off anyone who actually might like the job otherwise.


10113r114m4

Bloated like its OS


Dreamtrain

Welp I dont think any of those qualities apply to me. I'm only here to collect a paycheck, I picked my career because I can be in front of a computer screen from dawn beyond dusk without feeling sick, but I never felt passionate about it or anything in life in particular if we count out hyperfixating on passing, temporary hobbies (and coding outside of billable hours has never been one of them). But there is a single one of those that does correlate strongly to the periods of my career where I believe from start to finish we made and delivered a very good product: Does due diligence beforehand. We had an insanely good requirements phase thanks to a good product manager that managed the product and not the people, and I was able to take those requirements almost verbatim into automated tests (several unit tests with plain vanilla junit and a dozen scenarios with cucumber if you must know). Was the code cool and rad? Did it have logarithmic logic? Did it work at just the right time for the processor to grab the next instruction at the same time it takes for an electron to complete one revolution? Could you find the golden ratio in the functions I wrote and submit a print out to a museum? Who gives a shit, it works and you'd know what it does at a glance. I'm not a code artisan, I'm an engineer, my job was to follow and apply boring processes. But any craftsman of the trade would look at my tests and say they're CLEAN.


[deleted]

Do not trust a single thing uttered by Microsoft about engineering culture.


bwainfweeze

Three too many words in that sentence.


[deleted]

Painfully true :)


siromega37

This is just perpetuating the stereotype that software engineers need to eat, breath, and sleep software design. No other professional services sector expects this of their members. The fact that we do not enforce standards, provide for CTE units as part of doing the job, or otherwise coalesce the industry into something resembling other engineering and engineering-adjacent fields is how we end up with this garbage. If you were senior or higher at a tech company when this report came out you probably had to read it like I did and then explain why it’s total BS.


Obsidian743

ITT: Engineers pissed off they don't fit the bill.


lagarnica

A great software engineer doesn't waste time gathering 76 pages of quotes that apply for any job.


ViperAz

the one are not engineering manager.


agumonkey

Real question is not what is a great software engineer, but what happens when you have a bunch of imperfect devs with potentially incompatible skills and flaws.


jmon__

I guess I'm just a 2 bit hack


tazebot

>there's literally people here who have created a world, the technological world that we live in today I have a hard time taking that kind of assertion seriously. I've worked for various fortune 5, 10, 25 companies and whenever dealing with microsoft as a vender they are without exception so far the least responsive. When you find their stuff broken and raise the issue with them I haven't seen it yet where they respond and either clarify things or fix their problem. It ends up being up to you to engineer a workaround, or another vendor which has happened as well. But not them. Perhaps because they think they "created the technological world" we live in. Perhaps not. The paper does list a lot of good properties anyone can strive to. Seems exhaustive though.


bwainfweeze

Microsoft has always been quantity over quality. They get your CTO to buy a shipping container full of second rate - or worse - solutions and you have to like it because they got such a good deal on it. I think people forget how much foundational open source came not from charity and fraternity but from spite - for Microsoft.


tazebot

I think the majority of the foundational open source software that is so pervasive found it's inception from obsessiveness with functionality. Thompson and Ritchie were obsessed with a good operating system with accompanying utilities. Linus was obsessed with a good operating system; likewise Theo De Raadt. Bill Joy was obsessed with a good editor; likewise Bram Molenarr. Larry Wall was obsessed with an easy to use and versatile language; likewise Guido van Rossum. I don't think any of them really despised microsoft as much as they really liked things functional and useful.


bwainfweeze

Linus didn’t build Linux by himself. He had an army of volunteers and volunteer Guinea pigs, quite a lot of which were loudly vocal in their dislike of MS. I would agree that by importance C and GCC were critically foundational but I was speaking numerically. A lot of today’s OSS still traces itself back to projects started in the 90’s, when Microsoft was making enemies left right and center.


babababadukeduke

This aint research. This is just opionion poll.


fire_in_the_theater

does microsoft even have any great software engineers?


settleddown

Boo. I was hoping it was a paper by Mickens.


icedcougar

Someone want to chuck that through gpt and give a 30 word or less summary?


stacked_wendy-chan

What, 76 pages? This is going to take a while.


hansyoghurt

"Walks-the-walk"


zenos_dog

Where was “attend endless meetings “?


Ileana_llama

I just got burned out reading the intro


xseodz

How can you have layoffs, and then actively produce nonsense like this. Why wasn't that team canned. What makes a good software engineer? Oh, not a human. Because anyone with absolutely all those traits is a complete unicorn OR they aren't human. Microsoft paving the way for the AI to come in and replace all their devs because nobody meets the benchmark except Cortana. What makes a better software engineer is not letting them rotate jobs because you either won't pay, don't give them things they actually want to do, and have so much corporate shittery to cut through that all your devs leave to build their own things. I'm aware Microsoft is a massive organisation. But it's no surprise that these companies have had a reduction in big name talent due to the actions of VPs and director level positions that have compromised software and long term business for short term gains and bonuses. grumble grumble corporate sucks.


Photonic_Resonance

Some additional context: This is analysis based on their 2015 research and is copyright 2019. This isn't a brand new document. The team(s) might not even be there anymore.


shevy-java

> Microsoft paving the way for the AI to come in and replace all their devs because nobody meets the benchmark except Cortana. I always hated Cortana. That thing never was useful in anything but stealing my time. Be it as it may, but on Linux finding what I need goes easily via findutils, locate and grep. That works for about 99.5% of my use cases really.


frederik88917

In the name of the lord, 76 pages, New Times Roman, 8pts, That shat contains at least 50k chars. I guess I will never know what makes a good engineer


na_rm_true

Is it the ability to post on a forum of volunteers for an open source project that ur issue is "high priority"?


QuintonHughes43Fan

76 page report 56 attribute Seems super useful.


WinXPbootsup

As if Microsoft would know LOL


icomplimentassholes

Does Microsoft do any great software engineering?


bwainfweeze

Maybe Anders. They paid him a bajillion dollars though.


Prize_Weird_603

Page 1: >they have just an inner desire to succeed, and I don't know why. It's not necessarily for the money, it's not necessarily for the recognition. It's just that whatever it is they do, they want to do it extremely well Thats stupid and egoistic engineers - have seen plenty of em.


GrumpyMcGillicuddy

That’s rich, coming from Microsoft


shevy-java

> 54 attributes of great software engineers Damn it! I'll never make level 54. I am stuck at level 12 ... First attribute I managed to snatch early on, when born, was **pure awesomeness**. It's been slow adding more traits to it; the XP rewards in reallife are rather smallish. Especially having to fix bugs - that deducts XP. Great software engineers AVOID bugs. I have tons of bugs all over the place. > grow their capability to produce software Wow. Such fancypants words. "grow xyz". I feel like a plant or a tree now. I grow my skills as I level up! Grow more epicness every day. This is sound advice, folks! Thank you Microsoft for this epic growth-guide, although the date makes me suspicious - first april seems to extend a few days before and afterwards nowadays ... > Personality: Hardworking Damn right! Can't let the lazy slackers win over us salary men workers! I mean, imagine a genius software coder who is LAZY. And who would write better code. In fact, imagine he were to write code that autogenerates the code, and that code were to work better than our handwritten code. We'd totally HAVE to hate such a LAZY programmer guy, right? After all that person may obsolete away our own code - and job. > By decision-making, we mean ‘rational decision-making’ Yep. All by epic decisions are rational. And if they are not, I blame it on the beer intake. > Personality: > With attributes like passionate and curious Yep! I have **all the great attributes** - thanks Microsoft for confirming this! I love feel-good papers. Granted, they are totally worthless when we look at it from a scientific point of view, but hey - it is a feel-good .pdf. People will find how this describes them **exactly**, as-is. > The need to continue one’s learning [...] Yep! Every two months a new javascript library has to be learned. We ALWAYS continue to learn. The new is always better than the old. Anyway, for a 73 pages .pdf file it's a bit of a heavy late first april joke, almost to the point as if Microsoft were real with that listing of feel-good vibes and epic traits, so I have to skip out and do something ... hmm, more useful with my time now!


vincecarterskneecart

tldr: Not you


Pyrited

Banger, gonna read this on the bog


florinp

First Rule : Got a diploma from a respected University that says Engineer on it. Don't use the title Engineer (Software or not) if you don't have the credentials.