I try not to cook if more than a fork and a microwave are required, and even then I don’t have a 100% success ratio…Thankfully this article isn’t about food recipes but rather about the ingredients that make great software engineers and developers.

I admit upfront that I’m not a great engineer and that I’m not fully stocked up on all of these ingredients. These are qualities and disciplines that I’ve witnessed in the people that I aspire to be more like. Qualities that I’ve seen in the transformations of people that I look up to.

These are the qualities I score people on when interviewing them for a position. Rarely am I looking for the person that has the most programming chops.

Number One: Being Humble

The first ingredient that I think really changes an engineer’s development and career success is how humble they are. Being humble doesn’t mean that you’re a pushover or that you don’t speak up in meetings. Those are actually poor qualities, or bad ingredients. When I say that an engineer is humble, I mean that they respect their coworkers and listen to their ideas, even if they don’t agree with them.

Another example is your attachment to your code/ideas. Would you be willing to erase 200, 500, 1000 lines of code that you wrote if a coworker presented an idea that was clearly better? Or would you hang on to the many hours of work that you put into the problem? If you do hang on to it then you’re associating your code with who you are as an engineer.

While I believe there is some correlation, it speaks volumes to me when I see an engineer say, “Oh wow, you’re right, that looks like a much better approach.”…”I’ll redo this right now.”

Source: Pexels.com

Number Two: Sharing

Ok, we’re all on the internet pretty much all day, searching for answers and trying to solve problems, right? It’s important to share the knowledge that you gain throughout the week with the team. This gives so much opportunity to improve the project you’re working on, while at the same time adding value to an entire team/company!

The best case scenario is when you read an article and share it and then discussions take place around the shared information. You will learn more in those scenarios than you do at school!

Everyone is at different levels of experience and sharing what we learn is the best way to really raise the bar in your team.

Number Three: Fearlessness

I think that this ingredient sometimes overpowers the first ingredient, humility. We should be fearless in sharing our ideas and trying new things and we should try not to be tied down by our insecurities. This doesn’t mean that you should bully your way through things though. It also doesn’t mean you should attach personal self worth to an idea. When I see someone be fearless, they say the unpopular idea that others want to say but don’t for reasons X, Y and Z.

“We should really stop development of new features until we can add test coverage to these specific areas, because we spend so much time fixing bugs there. Once the test coverage is up we can better focus on new features and priorities.”

You have to be fearless in order to take criticism and feedback as well. Humility combined with fearlessness is a huge asset in both receiving feedback and giving it.

When looking for feedback, be fearless in asking and humble in responding and listening.

When giving feedback be humble and kind but be fearless in the areas you address.

There are many more ingredients but these are some of the ones that I’ve found to be game changers on teams. In the world of technology things change extremely fast and we all need to work together to keep up. Adopting some of these ideals will help build cohesive relationships with your co-workers and peers.

What other ingredients do you think are important? Leave a response below!