Coding has become a very accessible commodity. In software engineering, code has become the cheapest output. This is due to LLMs being very good at producing structured text. And code is structured text. It s very well structured in fact. It follows type definitions, grouping, clear hierarchies. But does that mean we don’t need software engineers? Well we do. Firstly, coding and programming are different. I’ve briefly explained this in my previous post. Secondly, frontier models are very expensive to run in terms of energy. The models we use are largely subsidised. So, it will gradually become infeasible to access such models current prices and at current volumes if they raise the prices.
So one of two things may happen.
Scenario 1. The price of compute remains the same, and we will have to use smaller and locally run models. But the locally run models are orders of magnitude smaller than the frontier models. You could say they are short stories compared to a fable(pun intended). When people are forced to use locally run models, the picture will be different compared to what we see today. Software engineers will be needed more than ever. But that is a discussion for a another time. I’ll create a writeup about this later.
Scenario 2. Compute will become cheaper. If thats the case, then we will keep using such powerful models and the coding will remain accessible.
I’ll share my opinion on what to do if scenario 1 plays out at another time. For now let us think about scenario 2, which is more or less the same as the current state of the world in terms of AI usage. Software is cheap and easy to make right now. So, what should we do? How does a fresh graduate stand out in the market? People don’t hire freshers now(which is a very bad idea). Until the organisations get a reality check and start hiring again what can the aspiring engineers do?
I think in this age, sadly, being a software engineer is not enough. You have to be a “Software Influencer”.
What do I mean by that? I mean that you shouldn’t just create toy projects anymore. You have to influence, you have to make impact. More simply, you have to create things that are useful to people. You have to make sure they are usable(can’t emphasise this enough). To do this, you need to look for problems to solve, no matter how trivial or simple they seem. Building a solution that helps people will help you be in the limelight. This ensures exposure that is critical for an aspiring engineer. I’ll be more specific. Lets think of a simple use case, making notes to remember different things. I am giving this example because I tend to forget things. You can create a note taking tool/reminder tool that is easy and intuitive to use. If it is good people will use it. That is impact. You can also solve your own problems and just publish the solutions. Statistically, those solutions will be used by other people who have the same preferences/problems you have. This will result in you getting more exposure. And your solution may even become a product that generates revenue.
So, lets start software influencing everybody.