nicolás vázquez

nicolás vázquez is a software engineer from buenos aires, argentina. he writes notes about systems, engineering, and the work itself.

senior software engineer. i write here about engineering and anything that comes to my mind.

the creative engineer

some thoughts on the skills every engineer should have today.

tl;dr: be creative. think critically. that's what will set you apart from most engineers.

for some time now, there's been some uncertainty and discussion about what constitutes a good software engineer today.

in the past, the answer was simpler: if you knew how to build an API, design patterns, and maybe a few other things, you were already considered a good engineer. what happens when we remove the technical aspects? what's left? well, nowadays, with the advancement of AI, almost anyone could build an API.

anyone can build an API, yes, but not everyone understands trade-offs or software architecture. how do you make a product scale? dow do you reduce latency while sacrificing something else? these are things where good software engineers stand out from the rest. but it's not just that.

I remember when I was taking my first steps in programming. I took a course where the professor assigned us weekly projects to complete asynchronously and submit after a certain period, and he would correct them live in front of the rest of the class. in my case, not content with just achieving the goals of the assignments, I always liked to go further. I remember when one assignment was to create an e-commerce site; my mind wanted to take a creative approach, and I decided to do it with a Simpsons theme with animations and more from this tv show. I used to do that with the rest of the deliverables.

what I'm trying to say is that engineers "proofed for the uncertain future" have to go beyond simply being satisfied with the technical aspects, since nowadays that's not enough. a good engineer, in addition to understanding how to use the tools that AI offers us, must know system design, software architecture, and must also have critical thinking skills and be CREATIVE.

remember that an engineer's primary task is to solve problems, and code was merely a means to that end. in fact, thinking out loud, I believe code used to be the biggest bottleneck when it came to solving a problem. AI now makes all of that easier, so an engineer who stands out from the rest is the one who pays attention to what ai is doing, engages with it, goes beyond the initial problem, and approaches it with fresh eyes.

this is the perfect time to build things, and those who also focus on UX, understanding the client, and ensuring attention to detail are the ones who will stand out today and tomorrow.

if code itself is no longer a problem, why not invest effort in going beyond the norm and creating something aesthetically pleasing and enjoyable for the user? something different? software engineering is also an art, and we should treat it as such.

if you have an idea in mind or something you want to implement, take the initiative and propose it, and if possible, make it happen. now is the best time to take ownership of the things we implement. be creative, think critically.