Last week, I shared how I ended up in a management role after studying computer science at university. This was mainly due to my perception of development and developers. My goal for this article is to explain why this was the case.
I used to have a pretty low view of software development (and thus developers). For me, the real value was added by business people and managers, who were giving the direction a product or service would take. I thought that actually writing code was something quite easy and not much valued on the market. At the time I joined the computer science department at my university, there was a wave of outsourcing and offshoring going on in the major companies in France and abroad. To make things simple, these companies started to see their IT and software division as a cost center instead of a profit center. And as many management experts were teaching, cost centers had to be outsourced to other companies so that the business could focus on its key competences.
Now, outsourcing in France is expensive, and since development was being seen as a commodity, these experts pushed even further: why not outsource offshore, where the costs are incredibly low compared to wealthy countries? If a developer in Tunisia or China can be paid 5 times less than a developer in France for the same job, why think twice about using their services instead? So this is what happened: many internal IT services in these companies were closed and replaced by service centers in low-wage countries.
As I was witnessing this, I thought to myself that the wisest career move would be for me to aim for roles such as international project manager, where I would work for these big companies helping them pilot these projects and centers abroad. Since I would be telling these developers what to do, what would be the point of mastering development myself? It was akin, so I thought, to being a civil engineer overseeing a major construction project, and feeling the need to learn plumbing or carpentry!
Sadly, my 3 internships simply confirmed this feeling. I’ve had the chance to see 3 very different work context and companies: a small software company called Akuiteo, a major international IT service provider called Worldline, and one of the biggest non-IT companies in France called SNCF. Each time, it was very clear to me that developers were not valued. There were almost at the bottom of the career ladder. To get better jobs and have a higher salary, it was obvious to me that I quickly needed to work in sales or management. Many people told me that it may be useful to do some kind of technical work at the beginning of my career, but that I had to quickly move to non-technical work if I had any ambition.
Sure, a handful of passionate developers became technical experts and seemed to be valued for that, but the amount of effort required to get there was amazingly high compared to what people in non-tech roles had to give to be similarly rewarded.
I was actually scared of putting so much effort into becoming a good developer while I could get similar career results by simply being a good enough manager. There was an imbalance in the market that I simply couldn’t miss: “rock-star” developers got the same rewards as “good-enough” managers or sales people.
So why bother being excellent in a trade when being good-enough in another would do?
Upon graduation, at the same time I joined my current company in a non-developer role, some of my passionate friends from university got jobs at companies such as Google, Microsoft or Facebook. And at these companies, they were truly valued. They got 6-figure salaries (i.e. more than 100,000$ a year) and amazing work conditions.
Hmm… this started to make me reconsider my perception of value, and made me wonder whether I didn’t have it all wrong after all.
Why would these companies pay so much for these skills that seemed to be so undervalued in all the companies I worked for?
Surely, there was something I was missing.
Code must be more than a commodity. And good code must not be that simple to write after all.
And so began my journey to completely reconsider what was really adding value to a company and the true value of good software and software developers.