As a software engineer, I’ve learned that success in this field is not just about technical skills, but also about possessing certain qualities that enable you to work effectively with others, solve complex problems, and adapt to changing circumstances. Recently, while doing some housekeeping, I stumbled upon a list that was given to me as feedback after a failed technical interview when I was applying to jobs for the first time. The list outlined qualities that a successful engineer should possess. I saved it because I found it to be an excellent resource, and since then, I’ve made a conscious effort to practice these qualities in my everyday work.
I believe that this feedback is valuable not only for those starting out in the industry but also for experienced engineers as well. In this blog post, I want to share this list of qualities with you. Hopefully, it will inspire you to take your engineering skills to the next level! Here’s the feedback list:
Need to build trust with other engineers
- Start with small things and do them well (make sure to finish them)
- Gradually increase responsibilities and continue doing them well
- Don’t confidently say stuff that’s wrong (it’s great to vocalize opinions/concerns and many engineers have trouble doing this, but you should accurately express your level of confidence)
Do them well means
- Scope to the minimum amount
- Know what you’re doing before you start coding
- Write unit tests, not integration tests
- Review your own code before asking someone else to review it
- Never make a reviewer comment on the same problem twice
- Reviews should feel like a design/style discussion, not like we’re trying to catch your bugs
Finish them means
- Meets the feature requirements
- Has tests
- Is reviewed
- Checked In
- Tested in staging
- Deployed to prod
- Tested in prod
Don’t say stuff that’s wrong means
- Don’t say stuff that’s wrong
- If you have an opinion, communicate how strong/weak that opinion is
- Communicate if you’re unsure
- Be able to back up your statements
- If asked “why?” make sure you have an answer
- If asked “how do you know?” make sure you have an answer
Other:
- Work on just one thing and make sure it’s finished before working on another
- If blocked ask people for reviews more aggressively (but nicely)