Hacker News new | ask | show | jobs
by jpren 5526 days ago
I once read an article that discussed these tensions in excruciating detail. Below is the general gist of it from memory.

A potential cause of the rift between (software) engineers and business people could do with how each group attempts to optimize for returns in their work.

In an ideal world, a software engineer aspires to write elegant code just once, then deploy their work on as many systems as possible (for installed software), to as many users as possible. The software engineer's dream: 1) write code once 2) profit off it indefinitely 3) scale up profits by running the program on as many computers (or for as many users) as possible.

In a "business person's" ideal world, they would come up with a magical process that prints money that is easy to rinse and repeat. A good example is the fast-food franchise model. The business person's dream: 1) come up with a repeatable money-making process 2) profit off it indefinitely 3) scale up profits by running the process with as many people as possible, in as many places as possible.

Before software became big business, business people and software engineers probably got along just fine. I'm guessing it was because most software engineers (or programmers at the time) played a mostly supporting role to the core business of these big blue chip companies. For example, they might be writing software to help cut costs or improve operations efficiency at a large manufacturing company.

Then software itself became a moneymaking business. Now software engineers were optimizing their work input to maximize profits by exploiting computer cycles. All the while, some of these "business people" in software companies came from the traditional school of thought. So they were optimizing to maximize profits by exploiting human cycles (basically employees, and this included software engineers). If anyone didn't want to be treated like a computer program, it was the software engineers. You can probably see where this is going -- this led to a point of contention, or power struggle, between the engineers and business folks.

P.S. If anyone has a link to the article I was referring to please do share!

2 comments

Indeed. That's kind of the underlying issue.

Everyone distrust business people, even other business people. It's that they (the stereotype) are so inherently driven by self-gain, so you always have to be wary that they won't use or backstab you.

Engineers on the other hand are usually more concerned with taking advantage of technology than of other people, so they're 'safer'.

"It's that they (the stereotype) are so inherently driven by self-gain, so you always have to be wary that they won't use or backstab you."

Yep, I think it is one of the flaws of "legacy" MBA courses. I bet this is to blame for the high CEO pay problem.

Oddly enough, I usually hear this the other way around - that if you work on a product that makes the company money directly (shrinkwrap software for a software company, HFT shit for a financial firm, etc) that you'll generally be treated (and compensated) better than if you're in a supporting role.
Agreed. To clarify my previous point: when technologists work in supporting roles to businesses, the business-people-first management hierarchy mostly makes sense. After all, the parent business is the end customer.

Where engineers feel most repressed is when they are the ones directly making money for the company, but are being taken advantage of by "business people" who aren't making the company money.

You're right -- the people who work on products that makes the company directly are generally treated (and compensated) better at good companies. Imagine if these same engineers weren't treated well... I doubt they'd have much respect for their business-y colleagues/bosses.

Where engineers feel most repressed is when they are the ones directly making money for the company, but are being taken advantage of by "business people" who aren't making the company money.

(Disclaimer: I am a software engineer)

I think a lot of this attitude comes from lack of awareness of how the "business guys" do - indeed - make money for the company (even when the product is software.) It's easy for us techies to get so enraptured with the pure, raw technology that we miss the "other stuff" that matters; things like the fact that software doesn't jump off the shelf and sell itself to customers, the idea of assembling a "whole product," and how important that is to selling something, the importance of demand creation activities, the extent to which "business" functions like marketing and product management serve as a bridge between the customer and engineering, etc. If more of us engineers would look up and around and pay attention to what the biz guy and gals actually DO, and not just lean on tired old stereotypes, it would help a lot.

And, of course, the converse is true as well. Business folks don't necessarily understand what engineers do, and they also fall into thinking based on stereotypes.

In the end, we probably just need more dialogue between both groups and more shared understanding of the world around us.

The quintessential (business) terms for this are "profit center" and "cost center".

Next realize that the assignment of those terms is -- "standards" aside -- essentially arbitrary. One trick of senior managers "parachuted" in to "fix" things, is to start labeling things left and right as "cost centers". They then proceed with a -- very often, short-term -- plan to starve or kill them. Remember, their pay and bonus are dependent upon the next few quarters and not on long-term prospects.

Resulting advice: When you are in a "cost center", get out.