What makes a good developer?

  1. Home
  2. PSD Web Template
  3. Article detail
What makes a good developer?

The developer’s profession is not in crisis and the demand for programming specialists is still increasing with the digital transformation of organizations.

To meet these needs, countless training courses have been created. From now on, school courses such as BTS SIO, bachelor’s degree, master’s degree, etc., go hand in hand with professional titles and short courses that promise to teach you to code in a few months or even weeks.

The skills and quality of a developer can therefore be very variable depending on his background and profile. It becomes difficult for companies as well as for the candidates themselves to evaluate their skills and compare them to other IT experts. So, in the end, what makes a good developer?

In this article, we share with you the essential skills and qualities of programming aces! What are the qualities of a good developer? Whatever the sector of activity, soft skills are becoming as important as technical skills. According to a Monster study, 90% of recruiters are convinced that behavioral skills are essential in CVs and interviews. 5 soft skills are particularly sought after in IT.

1 – Curiosity

Curiosity is a quality that is regularly found in job offers, as it is linked to monitoring, training and continuous skills upgrading. In IT, it is even more essential, as languages, technologies, frameworks, methods, etc. are constantly evolving.

According to the latest report from Stackoverflow, ¾ of professional developers learn at least one new language or technology per year. This trend is accentuated by the fact that development is, for many of them, a passion job. Many like to code outside of their work time for personal projects.

2 – Sociability

Forget the cliché of the unsociable geek alone with his lines of code! Developers almost always work in technical teams, but also in functional teams. If they work in a service company, they are also regularly required to change teams and work environments.

Sociability is even more important in companies that practice peer programming, code reviews or that have several developers working simultaneously on the same project. Finally, it is inseparable from the DevOps approach that is becoming widespread in IT. In addition to his technical skills, the DevOps is responsible for linking the IT development teams with those in charge of operations.

3 – A good sense of communication

Sociability is directly linked to another soft skill: communication skills.

Communication skills are correlated to development skills, because a good programmer should be able to:

  • clarify user expectations or participate directly in the expression of needs;
  • ask the right questions to define the scope of the projects (and to estimate them precisely);
  • explain the technical solutions chosen by popularizing them;
  • share its code and its progress;
  • to express the points of difficulties and the blockings;
  • to train the users if necessary;
  • to report anomalies, possible vulnerabilities, etc.

4 – Laziness

Yes, you read that right. In development, being lazy is a sought-after quality!/p>

Bill Gates is even quoted as saying, “I choose a lazy person to do a difficult job. Because a lazy person will find an easy way to do it.”

Laziness is therefore a soft skill to cultivate, for these reasons.

First of all, a lazy developer does not try to reinvent the wheel. When faced with a problem or a bug, he first checks if a solution does not already exist before programming from scratch. Then, if he is confronted with repetitive tasks such as importing data, the lazy developer will create more efficient automation scripts to do the monotonous tasks for him.

Through these 2 actions, he reduces the development time and therefore the costs for his organization. Not to mention that the scripts and automation designed can be reused by his team or on other projects. Finally, a lazy developer will naturally tend to respect good IT practices:

  • DRY (Don’t Repeat Yourself): this consists in avoiding redundancy in the code to facilitate debugging, maintenance and evolutions.
  • KISS (Keep it Simple, Stupid) recommends avoiding all unnecessary complexity.

5 – Abstraction capacity

The ability to abstract is a soft skill specific to the development, engineering, or design professions. It consists in knowing how to step back from a project or a situation to consider different solutions. In programming, the ability to abstract is close to the analytical mind and helps to:

  • debug or find other more efficient techniques;
  • anticipate and think about future features;
  • propose areas for improvement;
  • create innovative solutions and tools.

What are the skills of an effective developer?

While the soft skills required are common to all developers, the skills needed to be a good programmer depend directly on their specialization. Let’s take a closer look at 3 specialties and the associated know-how.

1 – Front-end developer

The front-end developer is responsible for the interface of a website or an application. He must master the HTML, CSS, and JavaScript triptych.

But he must also have good knowledge in:

  • ergonomics and user experience (UX)
  • web design;
  • accessibility standards;
  • respect of web standards (W3C).

2 – Back-end developer

The back-end developer manages the “hidden part” of a site or an application, mainly composed of the server(s) and the DBMS (Database Management System).

He/she must master one or more programming and query languages (such as SQL). To stand out, he/she can also acquire skills in: frameworks such as CakePHP, Codeigniter, or Symphony; microservices and their service mesh the design and use of APIs.

3 – Full-stack developer

Full-stack developers work on both the back-end and front-end sides. They must therefore master the skills of these two components of a site or application. He should also have knowledge

  • in eco-design (a skill increasingly sought after in Green Tech);
  • in project management to be able to take charge of the entire life cycle of a site or software; cybersecurity (with a DevSecOps approach, for example).

A good developer, therefore, mixes technical skills with soft skills that promote exchange, collaboration, and laziness!

And for you, what is a good dev? Feel free to add to this list of qualities and skills!

Source:
The StackOverflow report  https://insights.stackoverflow.com/survey/2021

chantal.bellue@proactys.ch

Author Since: 14 April 2022

Leave Your Comment