Hard skills run the tech, soft skills scale it up

jean-baptiste pringuey
Teads Engineering
Published in
4 min readNov 4, 2020

TL;DR building great software requires software craftsmanship skills, over the years I have learned that successful software companies have something in common on top of that : software engineers with great soft skills. This article describes soft skills that I believe are important for software engineers.

At Teads, we work in the competitive landscape of online advertising where fast and solid technological innovation is a keystone of our growth.

Here is some context:

  • Our mission at Teads is to combine the strength of
    quality media, data, and creative to deliver sustainable business outcomes.
  • We are competing for advertising budgets against big companies like Google, Facebook and lots of startups.

The advertising ecosystem is changing in major ways every year:

  • Legally with privacy regulations such as GDPR in Europe, CCPA in the US , LGPD in brazil etc…
  • Technologically with Apple (IOS and Safari) and Google enforcing more strict privacy technologies.
  • We receive about 200K ad request per second that we handle under 150ms. We ingest more than 100 billions of events per day, run 50 machine learning models in production making 5 millions of predictions per second. We also build SaaS web applications to connect our advertisers to our publishers. We have lots of technical challenges.

Given our challenges and scale, software craftsmanship skills are important. They are the fondations of the engineering organization. It establishes trust within the engineering team. Everyone knows how to do their job however I have learned that hard skills are not the only criterion.

I believe that soft skills of our engineers are critical skills for our growth.

Teads culture is built on innovation. It means working on projects that often require everyone to go above and beyond their comfort zone. Everyone in the company has the technical skills to do their job well, add to that some soft skills and the magic happens.

Here is in my opinion the list of the most important soft skills for software engineers:

Drive

All engineers at Teads contribute to our growth and are responsible to drive the success of their projects. From intern to senior engineers, the ability to drive ideas, projects, user stories, and tasks to completion with great quality regardless of the technical challenges and roadblocks is key. Having a strong drive is a pillar of organic organizational growth.

Pragmatism

Because the work we have to do is sometimes quite big, it is fundamental for our engineers to approach projects with pragmatism. We believe that building great software is a marathon, not a sprint. As a result, we do not want to jump on the latest shiny technology or the latest architecture without real technical and business needs. When we have to do it, we go with the most pragmatic and incremental way to do it. We avoid big bang approaches and favor incremental frequent changes with frequent releases to production.

Humility

We respect, listen and learn from each other. We sometimes make impactful technical decisions that not everyone agrees with. The ability for engineers and managers to “Disagree and commit” is essential in order for the team to move forward as a group efficiently. This skill often comes with maturity and is very important for group cohesion. We focus on the positive things and build on top of it.

Communication

Giving a clear context at the beginning of a written document, a presentation, a meeting or a discussion is important to save everyone’s time. It is also particularly useful for writing pull request comments, naming a variable, an API, or writing documentation.

Empathy

It helps engineers to understand coworkers, teammates, users, customers, or managers. It helps to improve the culture, the organization, the team well-being, to understand contraints from other engineers, requirements, business needs or how to communicate informations to others. It applies to web application development as well as programming API. Keeping a “beginner's mind” in all development and communication will help engineers build intuitive and simple software.

Out of comfort zone

Software engineers are most comfortable developing with programming language and framework they are experts on. The ability to contribute to code outside of the expertise domain , talk to teammates on subjects they are not necessarily expert on when needed or to present their projects to the business is important.

That’s why at Teads, we pay a lot of attention to both technical skills and soft skills during the interview. We have learned to improve our evaluation of soft skills over time. We also invest in training our software engineers to improve their soft skills.

Teads is hiring a lot right now, so if you want to join us in Paris or the sunny Montpellier, please let us know!

--

--