In at most 5 years from now there will never be a better time to be a senior developer.
Shit is already cracking (just look at all the spectacularly stupid bugs and deeply flawed design choices that MS has had recently with Windows 11) and we’ve barelly started experiencing what happens when AI coded software goes through the full software life-cycle - the kind of thing where code done by junior developers almost innevitably fails is the indirect stuff like maintenability or security practices and AI is basically a junior developer which NEVER LEARNS no matter how much you explain something to it even whilst telling you it has totally understood what you mean.
Imagine that all of a sudden a large fraction of corporate software development is made entirelly by teams of junior developers who have such a high turnaround that every week the team changes (so you can’t ever help them learn to avoid certain kinds of errors and they never improve). Now fast forward this a couple of years and imagine what happens when all the software done by those devs has been on the Internet a couple of years exposed to all kinds of attackers, gone thorough a couple of cycles of bug-fixing and working new business requirements into it or they’ve been used for long enough by users that the data storages have been storing a year of two of data, all stored according to junior developer’s idea of what and how data should be stored.
Shit crashing with the most stupid bugs, hacked by script kiddies running 1990s scripts because even there is no proper defensive coding for Internet exposed software or it’s riddled with holes from mis-integration of different parts, years of use leading to systems massivelly slowing down to a crawl because databases don’t have the right indices and where the same data is stored multiple times and thus riddled with inconsistent data, pretty much instant spaghettification of the code-base and especially at the design level with each different block of code generated by AI being inconsistent in coding style and software design with every other AI generated block of code, constant and massive integration problems with systems not being at all prepared for upstream data format flaws or with erroneous assumptions and just about every software change breaking downstream systems, the entire life-cycle of software systems from greenfield project to “so unmaintainable it’s cheaper to rewrite it from scratch” running in less than a year rather than 5 or 10 years with entirelly new vibe-coded versions of the software coming out every year WITH DIFFERENT BUGS and DIFFERENT USER INTERFACES with DIFFERENT QUIRKS.
Basically every concern above junior developer level being mishandled in random ways and places even in the same code-base.
This shit is what the adoption of AI coding will deliver us.
Again, look at Windows 11 - we’re already seeing the rates of bugs and the gravity of them going back to how it was back in the 90s and the stupidity and obviousness of the errors exceeding even that early era of early professionalization of software development.
In at most 5 years from now there will never be a better time to be a senior developer.
Shit is already cracking (just look at all the spectacularly stupid bugs and deeply flawed design choices that MS has had recently with Windows 11) and we’ve barelly started experiencing what happens when AI coded software goes through the full software life-cycle - the kind of thing where code done by junior developers almost innevitably fails is the indirect stuff like maintenability or security practices and AI is basically a junior developer which NEVER LEARNS no matter how much you explain something to it even whilst telling you it has totally understood what you mean.
Imagine that all of a sudden a large fraction of corporate software development is made entirelly by teams of junior developers who have such a high turnaround that every week the team changes (so you can’t ever help them learn to avoid certain kinds of errors and they never improve). Now fast forward this a couple of years and imagine what happens when all the software done by those devs has been on the Internet a couple of years exposed to all kinds of attackers, gone thorough a couple of cycles of bug-fixing and working new business requirements into it or they’ve been used for long enough by users that the data storages have been storing a year of two of data, all stored according to junior developer’s idea of what and how data should be stored.
Shit crashing with the most stupid bugs, hacked by script kiddies running 1990s scripts because even there is no proper defensive coding for Internet exposed software or it’s riddled with holes from mis-integration of different parts, years of use leading to systems massivelly slowing down to a crawl because databases don’t have the right indices and where the same data is stored multiple times and thus riddled with inconsistent data, pretty much instant spaghettification of the code-base and especially at the design level with each different block of code generated by AI being inconsistent in coding style and software design with every other AI generated block of code, constant and massive integration problems with systems not being at all prepared for upstream data format flaws or with erroneous assumptions and just about every software change breaking downstream systems, the entire life-cycle of software systems from greenfield project to “so unmaintainable it’s cheaper to rewrite it from scratch” running in less than a year rather than 5 or 10 years with entirelly new vibe-coded versions of the software coming out every year WITH DIFFERENT BUGS and DIFFERENT USER INTERFACES with DIFFERENT QUIRKS.
Basically every concern above junior developer level being mishandled in random ways and places even in the same code-base.
This shit is what the adoption of AI coding will deliver us.
Again, look at Windows 11 - we’re already seeing the rates of bugs and the gravity of them going back to how it was back in the 90s and the stupidity and obviousness of the errors exceeding even that early era of early professionalization of software development.