What is a good software engineer?

And why core skills matters even more than technical ones.

Arnaud LEMAIRE
sunday

--

In the sunday tech team, we like to talk about core skills instead of soft skills. Those very skills are at the heart of what makes us want to work with certain developers. Considering this, hard skills are secondary. A candidate may be really good technically but if they lacks core skills it may make working with them in the long run challenging. On the other hand a candidate may lack some technical skills but if they have the right mindset, it is easy to close their knowledge gap in just a few weeks (and remember we hire people for years).

This is why degrees don’t matter, as I love to point out: a developer’s worth isn’t measured by their degree. You’ll still need developers with solid foundations, but a degree gives little guarantee on these foundations and gives no indication about the core skills of an individual.

Next time we will explain why we don’t believe in the whiteboard coding interview format — Jeswin Thomas

Before explaining what are the core skills we are searching for, let’s talk about what we want to avoid at all cost: having expert beginner (and they are more common than you might think). This kind of developer has the confidence given by years of practice but because they are stuck in their learning they lack the experience to make informed decisions. This is often explained with the sentence “10 times 1 year of experience is not 10 years of experience”.

The first thing we want to check is “do I want to work with this person ?”. Firstly, do you trust this person as a colleague, meaning: are you comfortable with this person pushing their work into production without having to review it? Then there is ease of working — can you have open discussions without confrontations? Essentially, does working with this person give you or drain energy from you?

The second thing we are looking for is, whether this person is aware of being in its unknown unknowns zone ? (a lot of people cannot detect when they are in this zone and this is where somebody can be the most dangerous because they can do tremendous damages without realizing it), this skill requires humility. You need to ask for help when you don’t know something, not try and hide your ignorance.

Thirdly, we ask ourselves: is the candidate able to leverage their experience, identify drawbacks in their current solution, and look to better themselves. Or do they throw a lot of buzzwords without any real experience, without really understanding the concrete implication/implementation of them. Do they try to hide behind a smoke screen of buzzwords about their experiences ?

And last but not least, we search for people who can give their team comfort and reassurance. Those are people who help others grow. They do not try to put others down just to further their own career. We have a strong no asshole policy regarding this kind of behavior. We want to hire people that can provide psychological safety to others.

If you want to join us, you can check our job board.

--

--