| | If you were in the industry in the 1990s and 2000s, you'll know all about the outsourcing hullabaloo. | | |
|
| | Companies realized that developers outside the US and Western Europe were typically paid less. And, because developers were just resources, these companies could ship development work overseas and save a bunch of money. | | |
|
| | For a while, US and European developers panicked: I'm going to lose my job to some coder making $1.50/day in Upper Hopistan. | | |
|
| | And, indeed, for a while, some developers did lose their jobs. | | |
|
| | But it fairly soon became obvious that you couldn't just ship work 8 time zones away and then sit back and wait for finished projects to appear. The remote workers weren't bad developers, but they were out of the loop. They were often forgotten, at least until things went wrong. | | |
|
| | So companies moderated their ideas. They worked to integrate remote teams into their overall development process. We no longer outsource: we co-source. And developers were still employed, both home and abroad. | | |
|
| | There was a disruption, a correction, and things continued to grow. | | |
|
| | Meanwhile, 25 Years Later… | | |
|
| | If you were a developer in the second half of the 2020s, you'll know all about the AI panic. Companies discovered that AI could churn out more lines of code per dollar than human developers. We'll all be fired, cried the developers. | | |
|
| | And, indeed, many developers lost their jobs. | | |
|
| | The companies who fired them were remarkably short-sighted, because people soon learned that writing code was not what defines a developer. | | |
|
| | A good developer acts as an ambassador; mediating the communication between the real, messy world and the artificial, mechanical one. It is a skill that is based on having a certain type of personality combined with a whole lot of experience. The measure of a developer is not the number of lines written, but rather the number of lines that needn't be written. | | |
|
| | So, for a while, it sucked to be a developer. You were anxious about your job, exhausted trying to keep up, uncertain whether you were doing the right thing, and seriously tired at reading thousands of lines of regurgitated PRs. | | |
|
| | But the world slowly learned the truth. You can't put power tools in the hands of novices and expect them to build cathedrals. In fact, you'll be lucky of you don't spend most of your time collecting the fingers that they've managed to amputate. | | |
|
| | So these companies sheepishly reached out to the devs they fired. Please come back, they said, and help us get control of this monstrous code base we created. Help us create more unified architectures. And help us make proper use of these AI tools. And the developers came back, at a premium. | | |
|
| | There was a disruption, a correction, and things continued to grow. | | |
|
| | The Moral of Our Stories | | |
|
| | When things seem to be going crazy, stop and wind the clock.ᵃ Yes, right now it can suck to be a software developer, but the role is not going away. It's just changing. | | |
|
| | The AI hype cycle will pass, and it will become just another tool. Admittedly it will be a tool you'll likely have to use, but it's still a tool. But as a developer, your value will be as a guide and mentor. You'll no longer be saying "why does this loop exit early?" Instead you'll be telling your AI, "You need to decouple that using pubsub" or "for the 100th time, stop testing in the shell and start using unit tests." | | |
|
| | You will be writing less code. That's OK. Your value was never writing code. Your value is delivering value, appropriately and sustainably. And AI will help you do that. | | |
|
| | Just don't stop learning. | | |
|