The Most Important Skill for a Senior Engineer
Frontend, backend, dev ops or something more?
We live in the era of constantly new and emerging technologies. It feels like every other week there's a new, hot Javascript framework that is definitely gonna be the next big thing.
Personally, I've gone from jQuery to vanilla JS to Angular to Vue.js and now to React and React Native, hopefully for good. I don't particularly enjoy hopping from one to the other and RN allows me to build powerful mobile apps and React, along with its new, favorite baby, Next.js, allows you to build amazing web apps with very little busy work.
(If it's not clear, I highly recommend getting into Next.js)
But after a few years, the tech stuff becomes more-or-less expected from a senior engineer. You expect them to be up to date with the latest, established tech or, at the very least, be able to learn it rather quickly. I've hopped onto projects and frameworks with little prior knowledge, but the fact that I have more than a decade of experience allowed me to get up to speed pretty fast.
So, beyond that, what is actually the best skill a senior engineer could have?
Communication
This might seem boring or cliche but it is 100% true. Ask any good manager and they'll confirm that. An engineer being able to articulate complex tasks to other engineers and non-engineers and break them down to easily digestible chunks is worth their weight in gold. In fact, it's been the one consistent praise I've gotten in my performance reviews. Being easy to work with and likeable will take you much farther than knowing all the ins and outs of Javascript, Python, React etc. And it all comes down to communication skills.
Now, communication, on its own, is hard to pin down as a concept and skill. So, I'd break it down like so:
- Mastery of the language - If you are a non-native English speaker, improving that as much as possible will pay dividends
- Nuance - Able to convey in text subtlety and emotion, so you don't appear cold and detached
- Positive attitude - Do not transfer your frustration to the other person and always try to have a positive spin on things
- Asynchronous communication - Able to transfer as much useful information in as few back-and-forths as possible. I will expand on that at a later post
Beyond communication, overall soft skills are what separate engineers from upper level management. So, if that's your career goal, I'd focus on those, along with your hard skills. I will go into that as well at a later date.
Until next time, peace!