Developing Software in 2020

It's interesting to see the evolution of programming strategies over the past 25 years. It accelerated with VB6 and MS Access provided RAD and Java guys saying slow down to SAP saying you need to explain the problem correctly to realize the value you are providing as a developer. Now we have complex models in the name of process and developers are expected to be told "exactly" what to do. 

Today software development teams in "daily stand-up"  explaining things in complex English how a comma that the other developer put int he wrong place is effecting his ability to complete his task for about 10 min without realizing it takes 10 seconds to fix that and tell other developer in another 20s. Project managers use big words which are completely irrelevant without realizing actual work. We are essentially losing focus on the purpose of software development by focusing on processes over outcome, and adding cost.

Software development is key driver of economic growth, either directly or indirectly, for the past 25 years and it is almost reaching it's peak.
Software development industry is at it's height of transformation in 2020 - transforming from mostly T&M augmented workforce driven teams to value driven delivery of services.

Key drivers of this transformation:

  1. COVID-19 Pandemic is a transformation trigger for most IT teams.I will be providing a detailed article on this topic soon. 
  2. Cloud computing - PaaS is finally picking up as cloud data centers are reaching their capacity.
  3. Low Code platforms - cutting down cost and accelerating roll-out of new tools and software during this critical transformative times became essential.
  4. Economic Downturn - every economic downturn force businesses to lower their costs and software developers and IT staff is generally the highest paid in companies and will be subject to lot of pressure to lower cost and improve productivity.
  5. Citizen developer automation capability - technologies like RPA, new automation technologies are making some traditional programming obsolete.
  6. AI/ML - machine learning technologies are now usable eliminating the need for a lot of programming otherwise needed to achieve certain tasks. 
I will try to elaborate these in detail soon. for now these are food for thought.