The need to code
I was discussing the growth of some of our junior engineers with my managers today, it occurred to me that as companies grow and systems become more complex, the cost of making code changes is also getting higher. The result is junior engineers often get less chance to code. Since the risk of making mistakes in code is higher, we tend to rely on more senior engineers for non trivial changes. So this creates a vicious circle, junior engineers code less.
But for every junior engineer out there starting their journey in the tech world, the need to dive into code is non-negotiable. It's all about the thrill of integrating your logic and reasoning into a system that's going to serve customers, and human society at large, better.
Coding in professional environments isn't just about slapping some lines of code together to form software; it's an art and a science. It's a process that takes you from identifying problems, designing solutions, reviewing code, making plans, all the way to deploying and maintaining the software. This cycle not only embeds the coder's logic into the system but also keeps them learning and growing.
Operational tasks like being on-call or bug fixing have their place, they are healthy feedbacks to software development; but they shouldn't overshadow the good stuff - coding meaningful software. Our junior engineers need the chance to put their logical reasoning to work, to integrate it into software that genuinely impacts customers.
Now, what about AI? Isn't that going to take over coding? Well, yes and no. Tools like AI co-pilots are becoming more commonplace, and they're making our coding process more productive. But here's the thing: AI isn't replacing human reasoning, not by a long shot. What it is doing is making the process of integrating human reasoning into machine systems more efficient. It takes away the boring stuff in coding so you can pass your reasoning to machine more efficiently.
Just like playing an instrument or learning a sport, coding takes practice. And not just any practice, but meaningful, deliberate practice where you actually get to make a difference. It's not enough for a junior engineers to tune the instruments; they need to play the full symphony!
So, to all the managers and team leads out there: let's get our junior devs coding more. Have those conversations, make those plans, and ensure they're getting their hands dirty with code. Not just for their growth, but for the future of the industry. After all, it's about building a future where humans and machines work together seamlessly, serving our society better than ever before.
Last updated
Was this helpful?