Blog

The need for a "big picture" understanding of technology in the age of AI assisted development

5 minute read

Since the release of ChatGPT in 2022, the question of which tasks can be assisted with or even automated by Large Language Models (LLMs) has been the subject of a lot of debate and controversy. The rapid rise of various LLMs over the past couple of years has actually been a source of anxiety for lots of people – ‘Will AI take my job?’ has been one worry in the back of a lot of people’s minds.

Whilst it’s probable that some of this fear has been fuelled by the the alarmist marketing efforts of AI companies who are ultimately trying to promote their product, there’s no doubt that the use of AI based tools has already significantly shifted the way many people work and has the potential to cause more major industry shifts in the future.

One such industry is of course, software development. For many developers, the use of LLM based tools is now a mainstay of their daily workflow, being used for tasks such as quickly summarising trade-offs between technologies, or finding specific information about programming languages or frameworks to avoid hours of trawling through documentation. In many cases, developers even use these tools to directly generate code – often ‘boilerplate’ code and other code with a low degree of logical complexity.

Over time the junior engineer will refine their own problem solving skills and overall understanding of the tech landscape

Traditionally, writing small units of code with a well defined scope and low complexity would be a task delegated to a junior developer – somebody who is relatively new in their career and is still building their confidence with writing robust software and making good technical decisions by themselves. The expectation is that by writing high quality software under the supervision of a more senior engineer and learning from the general exposure to working with technology, over time the junior engineer will refine their own problem solving skills and overall understanding of the tech landscape. The hope is that with this skill set, the junior engineer will become increasingly able to tackle complex problems, make more impactful design decisions and eventually glide into a more senior development position themselves.

The ‘circle of life’ for software devs probably looks something like this:

Career progression in software development
Typical career progression in software development

Here’s where the problem could lie: If more senior software developers increasingly rely on LLMs to churn out routine code rather than junior developers (which would be the far more expensive option) this could reduce the overall demand for junior developers and thus reduce the amount of junior developers being hired.

This would cause two problems:

  1. 1. For the individuals hoping to break into a software development career, it will make finding a job as a junior far more difficult with the greatly increased competition
  2. 2. For the software industry as a whole, fewer junior developers now = fewer senior developers five or ten years down the road. As current senior developers retire there would be a considerable technical skill shortage in the future.
  3. it’s likely that quickly cultivating a solid ‘big picture’ understanding of the tech landscape will become more and more important for those hoping to break into technology

As we all know, modern problems require modern solutions. Without the opportunity to slowly develop the professional and technical maturity to make the big decisions, it’s likely that quickly cultivating a solid ‘big picture’ understanding of the tech landscape will become more and more important for those hoping to break into technology. There needs to be a way to ‘bridge the gap’ so that people coming into tech are rapidly able to make design decisions in a larger problem space than before – something that LLM based tools are known to struggle with. As well as learning specific programming languages and frameworks, by deliberately including the development of a broad understanding of the tech landscape and system design in their learning strategy, a tech-hopeful will give themselves the edge when starting out in their career.

How can HighLowFlow help those starting out in a software development career?

At HighLowFlow we know that understanding the broader technological landscape is essential for building robust systems with code. With our interactive simulations and more, you'll build a true understanding of how technology works, giving you that crucial edge when starting your software development career. Learn more about the upcoming platform here.

Written by Michael Cleary

Share this post
FacebookXLinkedIn