top of page

Are you a coder? Be an engineer instead!

  • Writer: Zsolt
    Zsolt
  • Apr 12
  • 3 min read

My friend used to tease me:

“once, you were a software engineer, then you decided to become an Angular monkey🐵”

I don’t think frontend development is inferior to backend. Specialising for either is a legit choice, as there is value in depth of knowledge. Some say it’s best if one’s knowledge is T shaped, has a solid foundation and has an area of depth to it.


Fullstack?

Some believe in unicorns, of course, and it is their right to do so. But let’s not kid ourselves, fullstack engineers are an advertisement for managers who don’t want to spend two to N times the headcount to hire. They’d need a frontend, backend, devops and security specialist at the bare minimum. But instead, they hire a unicorn.

How full is your stack?

I could ask, if I were even more cynical than I am anyway. But I won’t.


Why not Angular?

I have no beef with Angular. I have been working with it for more years than I can remember. Even with AngularJS and hybrid applications. But I never considered myself an Angular developer and I wouldn’t recommend you do either. Naturally, my T has a depth in Angular, and so Angular opportunities find me. If a non-Angular opportunity finds me? I’ll take it thank you very much. As long as it’s not a one-way street like a company specific framework, I don’t mind learning it.

Be an engineer first and foremost!

Having an open mind for learning new things and adapting to the changing environment is the characteristic of a great engineer. We must aspire to be like that. Solving complex problems with the tools you are handed is another equally important one.


Coders vs engineers

Writing code is easy. Writing perfect code is impossible.

Coders have a knowledge that’s “I” shaped and often times not too long, not too wide. They learn to use 1 tool (Angular), which they learned how to use exactly from a tutorial, and don’t care to experiment outside of that initial material.


Common problems require common solutions, that’s why we have design patterns. Coders apply the same solution for every problem.


arr.filter(item => item.prop1 > 1)

.filter(item => !!item.prop2)

.filter(item => item.prop3 !== SOME_CONST)

...


When people say AI will take developer jobs, this is what they think of.

As for engineers? They use the tools, design, solve and develop, especially themselves. For engineers AI is yet another tool.


Copilot for example

GitHub Copilot for example is very hyped, and sure enough I use it as well. It made me about 5% faster in my coding, barely noticeable, but it is a great companion for lifting the most boring weights for me when I code. It guesses mock objects very well, it generates basic functions I have implemented already in a dozen languages a trillion times.


“Yes, I have just implemented a function dear Copilot, you guessed it well, I am going to use it, with those variables that happen to match the function’s param types and all this inside a try-catch. Thank you for saving me from 5 seconds!”


Writing solutions is always the worst part, at least after you’ve coded for a few years already. Coming up with the solution is where the curious mind thrives! GHC helps to reduce the time spent on one so we can concentrate on the other.


It’s like using cruise control on the highway. Doesn’t make you a more efficient driver, but boy does it make the driver’s life easier!


And when they’ll have full autonomous driving? What will happen to the professional drivers? Then they will command a dozen cars where to go instead of driving one. If they are engineers. What a metaphor, right? It makes just enough sense to use it, but not really a lot.


Have you ever wondered whether your Angular app leaks memory?

Here’s the simplest way to check, and find the culprit as well.

 
 
 

Comments


SIGN UP AND STAY UPDATED!

Thanks for submitting!

© 2019 ZD Engineering. Proudly created with Wix.com

bottom of page