Are today’s Developers over loaded with too many tasks?!
In 90s and till late 2000s there were many different job positions in an IT team that only do certain task. There was no Frontend engineers and backend engineers as most of the applications were thin clients in the browser side as the internet band width was very slow. There were jobs like Database Admins, Server Admins, Site Admins and so on to deal with one specific task.
Ever since the Startup culture took off again after the dotcom boom in the mid 2000s , in many cases the founder(s) had to do all tasks. Every single thing involved in the complete SDLC are done by one or two founders and hence there is more in their plate to get funding , business development etc.
And as the World internet infrastructure moved from dialup to DSL to Broadband, the browser apps became THICK CLIENTS. The corporate companies now started adopting Startup cultures into their companies IT strategy and thus Agile SDLC became the norm of the IT industry. This change also made big impact in the Developers’ scope of work. Here is an example of the evolution of what a developer was doing in 90s, 2000s, and what he must have to work on today.
Today, these tasks apply for the most average software engineer, working in at least 70% of small businesses and in 100% of the startups.
Front end + Database Code + Build + Deploy
Front end + Back end + Database Code + Build + Deploy
Front end + Back end + Database Code + Version Control + Build + Deploy
Front end + Back end + Database Code + Version Control + Unit Test + Build + Deploy
Front end + Back end + Database Code + Version Control + Build + Test Automation + Deploy
Front end + Back end + Database Code + Version Control + Build + Test Automation + Deploy
Front end + Back end + Database Code + Version Control + Build + Security Tests + Test Automation + Deployment
Front end + Back end + Database Code + Version Control + Build + Security Tests + Test Automation + IaC + Deployment
Front end + Back end + Database Code + Version Control + Build + Security Tests + Test Automation + IaC + Deployment + Observability
Front end + Back end + Database + Integration Code + Version Control + Build + Security Tests + Test Automation + IaC + Deployment + Observability + Site Reliability
Generalist + Front end + Back end + Database + Integration Code + Version Control + Build + Security Tests + Test Automation + IaC + Deployment + Observability + Site Reliability
Apart from multi tasking , because of the rapid evolution of software and hardware tools, a software engineer has to be a generalist who can work with a software that was released yesterday.
the cost of human resource will be sky high and thus it will demand multiple skills and multitasking with all the below reasons.
- As the World will be filled with ROBOTS for most repeated works in couple of decades
- Increasing adoption of technology in every industry
- Increasing competition and demand for tech workers
May be the average salary of an average software engineer will easily hit $1 million by year 2030.
Comments
Post a Comment