“Karl Marx failed to consider software.”
Billionaire Tom Steyer said this in 2019, in the run-up to his failed bid for the US presidency.
He was arguing that placing limits on income was immoral; that the low costs of internet distribution could create billionaires like Beyonce without the need to exploit workers.
Although he might be interested to read about Beyonce’s fashion line Ivy Park, Steyer has clearly noticed that services like the internet can be a huge public good, creating value from nothing or nearly-nothing, with a low cost to entry for anyone with a computer. And with programmes like ARPANET, or hardware like modern touchscreens, it’s no secret that a huge chunk of this internet is entirely dependent on government research and development.
But on a smaller scale, I think he’s right to say that Marx failed to consider software as an industry.
Marx’s philosophy saw society as two opposing forces: the workers and the owners.
Workers make their money from creating, producing; owners make their money with something called “rent-seeking”. This isn’t just rent in the sense of money for temporary housing: it’s a broader idea where having money up-front puts you at an economic advantage, and leveraging that economic advantage keeps you “on top”.
When Marx was writing, and arguably today, the most obvious sign of this is when people can no longer afford to live in their neighbourhoods, let alone buy property there. If you can’t buy property, that money’s still going somewhere. And that somewhere tends to be the pocket of someone who’s already well-off enough to buy a property.
Today, though, the low costs of the internet have created a huge new industry. And it’s the industry everyone seems to want to get into. Not least because of how well-compensated software engineers are.
I mean, It’s so well-known that it’s become almost a meme – you hate your job? Just learn to code!
So, who are these software engineers? Are they owners, or workers? Are they going to be the first against the wall when the revolution comes?
Well, yes and no.
Software engineers are really well off. Almost immediately on going into the field, coders can get paid incomes in the top 5 percent for the UK. This is even even more exaggerated in the US.
This leads prominent software engineers (turned CEOs) to write things like “software engineers shouldn’t be in unions” or whatever – because overwhelmingly, people in software are pretty well-off.
It’s important to remember throughout this that intersectionality plays a part here.
You have to look at someone’s life as a whole to get a picture of their experience.
Sure, you could get a lot of money in software. But you might still be discriminated against in the hiring process as a person of colour. Your experience with office banter might be horrible as a gay person, pushing you out of the industry. These problems don’t vanish.
The thing about software engineering is that lots of people seem quite unhappy with their job. Everyone wants to get into it as a field, but almost the core tenet of being a software engineer is to moan about your job.
Unrealistic deadlines, demanding clients, PMs being a bit of a pushover, all this is super common.
And people struggle with a huge lack of motivation to work, despite on the face of it doing their dream job.
Why could that be?
Assuming we’re just talking about a regular software engineer, or engineering manager, we can assume that they’re paid a salary. That salary might be very high, but crucially it is a salary. It’s paid by the company. And companies don’t employ people out of the goodness of their hearts – they employ people because it’s a good deal for them.
What does a “good deal” mean here, specifically?
Well, it means that the engineer is creating value through their work. And it means that the value they create is strictly greater than what they’re paid in salary.
Why does this have to be true? Because when it’s not true, that’s when you get made redundant. You’ve performed your job adequately, but the company is no longer able to make a profit based on the value that your work creates.
Marx called this “exploiting labour”. The word “exploiting” here isn’t always an emotive statement, it’s one of numbers. The difference between the amount of value created by people’s work, and what they’re paid – along with any other costs – is called, simply, “profit”.
Now, where does that profit go? It doesn’t often go back to the employees, except when they’re given bonuses, or stock options, which we’ll talk about later. It’s, by and large, taken out of the company as a dividend paid to the owners of the company.
So where should it go?
Generally, leftists think that this profit should go to the people who created the product. And that does include the people that managed the projects, that designed the adverts, the people that cleaned the office, even — not just the coders. Everyone that was necessary to bring the project from zero to completion.
There’s a popular argument that people who put money down at the start should take this profit though. All of it. Because they risked their capital up-front.
Ultimately, though, it’s not only, or even mostly, the risk which creates the software — it’s labour. (Which I’ll admit is a funny way to describe copy-pasting from StackOverflow.) But you can throw as much money as you like at a computer screen — it won’t build you an app. Trust me, I’ve seen people try.
And we should remember that this risk is limited.
It’s limited by the structure of companies today. Limited Companies are called that because the risk that the company owners take is limited by law. This is to shield owners from being personally liable for company failures. Company failures for which they might be personally responsible.
And even if the investor has chosen not to be protected by a limited company, which is rare, they are nonetheless shielded by bankruptcy. And thank goodness, we’ve long since abolished the horrors of debtors’ prisons. But remember that investors will generally only invest what they’re comfortable losing.
Even if they go against all advice, don’t use a limited company, and invest far more than they can afford to lose, the very worst that can happen is that their risk doesn’t pay off: their corporation fails, and they’re forced to enter the workforce. And…who knows. Maybe they’ll learn to code?
Marx talked about the Alienation of Labour. In software, as with most industries, the people creating the product don’t directly gain from the success of their companies. Although of course there’s some career benefit to working at a well-regarded company.
More often than not, only the very earliest investors get a slice of the company — or a share.
Shares are liquid assets, they can be bought and sold. They have a value — and that value is determined largely by what the employees are producing.
What most employees in software companies get these days — if anything — is not a share. It’s a share option.
A share option gives you the right to buy a share of the company at some point in the future. Importantly, though, the price is fixed. If shares of the company today are going for £10, and shares next year are going for £15, next year you’d be able to make a £5 profit per share option by buying for your fixed price of £10, and immediately selling it on the market for £15.
So these share options are clearly not worthless. Some people have got very, very rich from share options. Some people have not, and have found out the hard way that the right to buy shares at £10 is not very useful when the company is trading at £2.50.
Share options are a bet on whether the company’s value goes up or down. In a small startup, clearly this can be an incentive to help grow the company. But this is growth, not profit. Especially in larger companies, the profits can be huge, and owners of the company can take those profits in dividends, even when the growth of the company is zero.
Unlike company owners, share options don’t give you the right to vote on what happens at the company. More often than not, the shares which you can buy when you exercise your options don’t even have voting rights.
Why should employees have voting rights? Shouldn’t entrepreneurs have the right to choose what their company does?
Well, sure. And especially if they’re involved in the day-to-day business of the company, it makes sense for them to have a say in what the company does.
But it also makes sense for employees. Aside from any moral question, it’s demotivating to work on something you have no say in.
Bonuses, the other way in which profits are sometimes paid back, tend to be wholly at the discretion of the employer. Some are paid. But the theory there isn’t to share in the wealth being created — it’s to give a relatively minor incentive for that employee to keep creating company profits which they’ll never see. To convince them that although their labour is being exploited, at least it’s appreciated.
We value our society as one of free speech and democracy. These are often described as core values. But we seem to only apply this standard to our government. Many people would say that their employer has a far bigger impact on their life than their government does.
For one thing, it’s their only stream of income: it’s the way they afford a place to live; to put food on the table.
People say they’re not interested in politics.
But no-one can escape office politics.
In the workplace, is your speech really free? In the sense that the government can’t punish you, yes. But your employer can.
Do you live in a democracy? Well, in the sense that you elect your government, yes. But do you choose what projects you work on? What tools you use? How your company deals with a crisis, even?
To some extent in software engineering, it’s understood that autonomy for coders is a good thing. Allowing them to set their own pace of work, and taking on tasks as they’re able to do so, with their equipment and tools of choice.
This generally isn’t understood as a political issue, just one of good or bad management, and I think that’s a mistake: decision making and power in the workplace affects all of us, often more than governmental politics.