État Du Code 2019: Résultats du sondage sur les développeurs de Côte d’Ivoire

Abou Kone
Code d'Ivoire
Published in
14 min readDec 30, 2019

Code d’Ivoire est une communauté de developers (nous utilisons le mot anglais exprès pour faire référence aux hommes et aux femmes du métier) et de passionnés du code fondée en Mars 2018. Elle existe primairement à travers notre organisation Slack, ou nos membres peuvent interagir tous les jours et garder une ligne de communication constante. La mission de la communauté elle-même à travers ses membres comporte les objectifs suivants :

  • Être une « maison » pour les passionnés du développement, ou les membres reconnaissent des esprits frères et sœurs
  • Partager les bonnes pratiques, le savoir-faire et les techniques afin de contribuer à une montée en niveau générale (« Une marée qui monte soulève tous les bateaux »).
  • Promouvoir l’industrie et le métier du développement en Côte d’Ivoire et contribuer à faire de la Cote d’Ivoire une vitrine africaine et mondiale en matière de compétences dev.

Les activités initiales de la communauté s’alignant dans cette vision pour le moment consistent principalement à:

Le sondage Annuel État du Code

Après l’édition 2018, nous avons jugé nécessaire de séparer les sondages entre 2 audiences, les développeurs de profession d’un côté, et les étudiants/apprenants en développement de logiciel de l’autre. Pour les developers en profession, nous voulions faire un constat sur l’état du code en Côte d’Ivoire, à savoir plus précisément:

  • Qui sont les developers de Cote d’Ivoire ?
  • Quelles sont les technologies, processus et pratiques qu’ils utilisent?
  • Comment ont-ils été formé(e)s ?
  • Quelles sont leurs réussites et difficultés ?
  • Combien gagnent-ils ?
  • Comment se sentent ils à propos de leur métier et de leurs compétences?
  • Comment se sentent ils à propos de l’écosystème des developers ivoiriens

Le sondage s’est tenu sur 4 mois (Septembre à Décembre 2019), grâce à un questionnaire de 104 questions disponible en ligne qui a été partagé sur les réseaux sociaux de la communauté et par les membres de la communauté afin d’amasser le maximum de réponses possibles, en finissant avec 178 répondants en total. Nous tenons à remercier particulièrement nos partenaires qui ont facilité cette année la préparation et la diffusion du sondage et nous ont permis de maximiser le nombre de répondants.

Journee Du Code

Journee Du Code

Simplon CI

Simplon CI

GDG Cocody

GDG Cocody

AKIL Technologies

AKIL Technologies

Résultats du Sondage

Étant donné la longueur du sondage, nous vous proposons le résumé suivant et vous pourrez aller en profondeur dans les données après. Toutes les questions et du sondage sont disponibles sur ce lien.

Basé sur les résultats obtenus en 2019 nous pouvons dire que les développeurs ivoiriens sont en majorité des hommes (95% vs 5%), entre 25 et 34 ans (60%), avec moins de 5 ans d’expérience professionnelle (60%) et qui font pour la plupart (54.5%) du développement d’applications web en utilisant des frameworks MVC comme Laravel ou Symfony (“full stack ivoirien”). La moitié des développeurs travaillent aussi sur des applications mobile et les spécialisations d’avenir comme la Data Science, le Machine Learning et les IOT occupent seulement en général 5 à 10% des développeurs. Windows est l’OS de choix (53%), et le PHP, HTML, CSS et SQL sont les langages de formation majoritaire.

Langages de programmation

En termes d’utilisation, Javascript est le langage le plus utilisé en 2019 (82%), suivi de PHP (74%) et de HTML/CSS (70%). Comme en 2018, PHP retient son trône avec 70% des développeurs qui décrivent ce langage comme leur premier choix de langage de programmation sur 3 possibles, devant Javascript a 63%. Cet avantage est confirmé quand il s’agit de ne retenir qu’un seul langage et la PHP s’impose clairement a 44% des répondants contre 17% pour Javascript en seconde position. En terme d’interet, le langage qui excite le plus les développeurs en terme d’apprentissage est Python a 31% suivi par Javascript a 12%.

Frontend

84% des développeurs déclarent faire du frontend mais ce résultat est a prendre avec prudence car comme nous l’avons noté plus haut, le frontend moderne par SPA n’est pas encore une spécialisation répandue et comprise en Côte d’Ivoire. Ce chiffre comprend surement les développeurs “full stack” qui produisent des applications multi pages ( .jsp, .asp, .html , .php) rendues côté serveur grâce à l’aide de frameworks from Laravel, Symfony etc. Ce n’est pas donc étonnant qu’en terme d’utilisation, JQuery est la framework la plus utilisee (55%) suivie du coté SPA par Angular (40%), Vue (27%), React (26%), et AngularJS (25%). A noter ici la popularite relative de VueJS due a son integration avec Laravel, qui nous verrons dans le côté Backend est la framework backend la plus populaire.

88% des développeurs utilisent une approche CSS pour les feuilles de styles, et 75% utilisent Bootstrap comme framework. SCSS est utilisé par 36% des répondants. En termes de systemes de build, Webpack domine clairement a 44% suivi par la customisation angular-ci (24%). Il faut noter quand même le 24% des répondants qui n’utilisent toujours pas de systèmes de build ce qui veut sans doute dire que nous avons des applications en production qui ne sont pas basées sur des artefacts web (HTML, JS, CSS, images) non optimisés.

La majorité 52% des répondants ne font pas de test unitaires, et pour ceux qui le font, Jest a 18% est la framework de choix. 56% des devs utilisent Typescript, et seulement 13% utilisent GraphQL. En termes de IDE, pas de surprise, VS Code est l’éditeur de choix, utilise par 54%, compare au 14% d’Atom, l’éditeur en seconde position.

En resume du cote frontend, on constate une evolution, lente mais sûre vers la spécialisation frontend SPA utilisée dans les stacks modernes, et cette spécialisation se produit en parallèle bien sur avec celle qui doit forcement s’operer du cote backend, comme nous allons le constater.

Backend

Du cote backend, 92% des répondants affirment avoir fait du développement backend en 2019. De ce chiffre, 66% ont fait du backend principalement en PHP, 15% en Java, 10% en NodeJS et 7% en Python.

PHP

92% des développeurs PHP ivoiriens utilisent la version 7.x du langage et 95% utilisent une approche programmation orientée objet. 69% developpent leurs backends avec Laravel, qui confirme par la framework sa place en tant que framework PHP de reference en Cote d’ivoire. Derriere Laravel, le CMS Wordpress vient en deuxième place a 34%, et Symfony en troisième a 29%. 15% des devs font toujours du développement en PHP pur sans aucune framework. En terms de bonnes pratiques comme les tests unitaires, PHPUnit est utilise par 54% des devs (contre 44% qui ne font pas de tests unitaires). Cependant, une majorité n’utilise aucun outil de vérification de qualité de code (47% contre 28% pour CodeSniffer), ou de systeme de build (76% n’utilisent aucun systeme de build et deploy comme Phing ou Deployer). En termes de gestions de dependences, Composer sans surprise domine a 88%. Ici aussi, comme nous l’avons vu avec le frontend VS Code est l’IDE de choix a 47.5% d’utilisation contre PHPStorm a 21.25%.

NodeJS

Pour le cote backend Javascript avec NodeJS, qui on le rappelle n’est utilisé que par 10% des developpeurs backend, la version 10.x est la plus utilisée (75%) et ExpressJS (83%) est la framework NodeJS de choix. React est le moteur de template de choix. PM2 est le process manager le plus populaire. Pour les bonnes pratique, 90% utilisent Jest, 72% utilisent ESLint et NPM (81%) est prefere a Webpack (72%)pour les builds, mais Webpack est bien le bundler de préférence (80%). Les développeurs NodeJS ivoiriens préfèrent NPM (64%) a Yarn (36%). En terme d’IDE, ici aussi pas de surprise, VS Code domine absolument a 82%.

Java

Avec 16% des développeurs backend qui utilisent Java, c’est la version 8 du langage qui est la plus utilisée (75%) et pour la version EE, cest Java EE 8 qui est majoritaire. Les framework Spring (Boot, MVC) sont clairement dominatrices (72% et 68% respectivement)et JHipster, le générateur de code est utilisé par près d’un tiers des programmeurs. Maven a 80% est le gestionnaire de dépendances et de build standard bien devant Gradle. Dans le cadre des IDES, ici on retrouve IntelliJ IDEA en tête pour le developpement J2EE à 35% devant Eclipse a 30%.

Python

En 2019 Python est le langage qui suscite le plus d’intérêt des développeurs et des étudiants en logiciel ivoiriens mais dont l’usage en pratique n’est pas répandu (7% des developpeurs backend). Dans ce sondage nous avons trouvé que 85.7% de ces devs utilisent Python pour le développement Web, suivi par 57% pour l’analyse de données et 42% pour du machine learning. La version 3 du langage est utilisée par 71% des devs et Django est la framework la plus populaire (71%). En terme de data science, Numpy et Tensorflow sont les frameworks Python les plus utilisées (33% chacun). Pipenv est l’outil de gestion des dépendances le plus populaire. VSCode et SublimeText sont ex aequo comme IDE de choix.

Connaissances Générales Backend

Dans cette section du sondage, nous voulions en savoir plus sur les connaissances générales des développeurs en matière de pratiques et de connaissances backend.

En terme de concepts architecturals tel que REST et API, 82% disent connaître les principes de l’architecture REST contre 94 % pour API. En terme d’implémentation pratique 69% disent avoir développé une API en 2019. 10% des devs ont utilisé GraphQL et 36% ont utilisé Firebase. 39% affirment avoir développé des microservices en 2019, un nombre trop grand pour être crédible à notre goût étant donné les autres résultats dans ce sondage.

Mobile

Le développement mobile en terme d’engouement et de popularité vient second derrière le développement web. le top 5 des outils de développement mobile révèle comme suit:

  1. Ionic (39.32%)
  2. Android Studio/Java (36.75%)
  3. React Native (33.33%)
  4. Flutter (31.62%)
  5. Cordova (16.24%)

La popularité d’Ionic est bien sûr due au fait qu’on peut faire du développement cross plateforme avec HTML et Javascript mais il est de l’avis des membres de la communauté que cette dominance, et celle du développement natif Android avec Java est en déclin au profit de React Native et de Flutter, qui connait un engouement notoire dans la communauté. La majorite des apps mobiles developpees sont deployees sur Android (97%), iOS ne représente que 52% des cibles de déploiement.

Bases de données

Ici pas de surprise, MySQL a 92% est la reine du marché et en general, les développeurs sont satisfaits de la performance et ne cherchent pas a migrer vers de nouvelles BDs dans l’année à venir (32%) bien que 31% pensent a migrer vers MongoDB. PHPMyADmin et MySQL Workbench demeurent les outils de gestion de choix.

Gestion de Projet et Travail En Équipe

Comment travaillents les devs ivoiriens? Les réponses dans cette section nous édifient sur certains aspects et apportent des éléments de réponse. 84% affirment utiliser un outil de gestion de code source comme Github (73%), Git (53%), Gitlab (52%) et Bitbucket (29%). Github est d’ailleurs la plateforme Git la plus populaire avec 93% des répondants qui affirment avoir un compte Github, suivi par Gitlab a 65%. 62.5% disent utiliser Agile pour la gestion des projets, et 50% affirment utiliser Scrum. 20% travaillent sans technique de gestion de projet. Pour les logiciels de gestion des projets, ce n’est pas JIRA (19%) qui vient en tête mais Trello avec 51% des voix. Les emails sont la méthode de communication la plus utilisées (89%), suivi par les messageries instantanées comme Slack (65%) et le telephone a 51%.

Devops et Déploiements

La encore, compare a 2018, les chiffres confirment que l’intégration continue est une pratique toujours méconnue en Cote d’ivoire avec 46% des développeurs qui affirment n’utiliser aucun outil ou système de CI. GitlabCI a travers sa couche gratuite est quand même utilisé par 31% des développeurs. 80% des applications sont déployées manuellement ou semi manuellement et en termes de plateforme de déploiement, les hébergeurs classiques tels que OVH, GoDaddy, 1and1 continuent de dominer clairement (63%) comme en 2018. Le consensus dans la communauté Code d’Ivoire pour expliquer ce résultat est lié au fait que la plupart des applications développées en Côte d’Ivoire sont des monolithes PHP qui se prêtent bien à ce genre de fournisseurs. Les fournisseurs Cloud comme AWS ont une haute barre d’apprentissage aussi pour le niveau des développeurs locaux et les clients ne sont pas toujours suffisamment informés sur les bénéfices du cloud, mais aussi sont réticents a payer les frais qui peuvent se révéler tres cher par rapport à la moyenne locale.

Pour les fournisseurs Cloud, AWS vient en tête avec 36% des devs qui ont utilisé ses services, devant Google Cloud Platform et Heroku. Ansible, Chef et Puppet n’ont presqu’aucune traction locale et ne font pas partie du vocabulaire de l’écosystème pour le moment, de meme que Docker, Kubernetes Vagrant.

Education

82% des développeurs s’estiment auto formés, et 61% ont un diplôme d’une Ecole Supérieure de formation. 60% ont une license (3 ans) ou une maitrise (4 a 5 ans). 22% ont un BTS et 14% ont fini le cycle Ingenieur.

En terme d’interet en formations, 51% n’ont pas suivi de formations en 2019, mais en 2020, 55% sont interesses par une formation devops, 49% par une formation en développement mobile, 47% par une formation frontend et 46% par une formation backend.

En termes d’anglais 47% affirment avoir des notions techniques écrites en programmation mais seulement 37% disent pouvoir tenir une conversation basique.89% sont d’accord qu’une meilleur compréhension de l’anglais ferait d’eux de meilleurs développeurs. Google Translate est utilisé pour traduire le résultat des recherches et tous sont d’accord que pour l’Anglais, l’écrit est bien plus facile que l'oral. Il est notamment beaucoup plus difficile d’apprendre de nouveaux sujets en Anglais a cause de la barriere de comprehension.

Salaires et Contrats

55% des développeurs font moins de 500,000 FCFA (760 euros/US $845) par mois. 14% font moins de 100 000 FCFA (152 euros/US $168) par mois et 10% quand même travaillent sans salaire ou 8% n’ont pas de salaire fixe. Dans la communauté le constat était clair, les développeurs s’estiment sous payés et insatisfait (87%) et la réflexion s’est posée en réponse à un plus haut niveau sur le business model des SSII ivoiriennes qui ont tendances à se porter en fournisseurs de services. Etant donné la réluctance des compagnies locales à rémunérer les services de développement à leur juste prix, il est difficile pour les SSII de générer assez de revenus pour payer leur developpeur de plus hauts salaires. La question était de savoir si un pivot à un modèle produits en SAAS (qui répondent bien sur aux besoins des marchés locaux) ne serait pas plus financièrement rentable.

En terme de motivations, 66% des développeurs aimeraient être plus rémunérées mais pas loin derrière , 60% aimeraient plus de possibilités d’apprendre de nouvelles technologies et de travailler sur des projets innovants (54%). On peut le lier directement à l’insatisfaction générale à propos des salaires mais sans surprise la pour ceux qui connaissent l’écosystème local, 78% des développeurs font des projets à côté en dehors de leur travail, ce qui est localement appelé “gombo” ou “freelance”. 66% reconnaissent le faire pour les revenus additionnels engendrés mais un plus grand nombre 71% disent le faire pour les connaissances additionnelles, ce que les membres de notre communauté ont rejeté carrément, attribuant le haut pourcentage au fait de vouloir se donner bonne conscience ou il est clair que la motivation principale est financière.

Les sites d’emploi locaux (63%), les recommendations personnelles (60%) et le bouche à oreille (52%) demeurent les meilleures manières de décrocher un nouveau boulot.

61% des développeurs travaillent majoritairement au bureau, et 7% a distance. 31% alternent en mode flexible mais la majorité aimerait travailler plus à distance.

93.58% des développeurs ivoiriens sont prêts a quitter la Côte d’Ivoire pour une opportunite a l’etranger, avec le Canada qui vient en tête des destinations avec 84%, suivi par les USA a 69% et la France a 52%. Ces chiffres n’ont ni choqué ni surpris les membres de la communauté et la discussion qui s’en est ensuivie a tourné sur le fait que tous reconnaissent les difficultés de l’écosystème local (salaires trop bas ou en retard, manques de formations de qualites) qui encouragent d’une manière l’émigration, mais tous se sont accordés sur le fait que ces départs représentent un danger pour l’écosystème local car ils créent un vide en mentoring pour les juniors, et en terme de compétences le marché local ne trouvera pas de réponses locales appropriées. Pour ceux qui partent on ne peut pas les juger car tout le monde aspire à un mieux être mais un exode massif represente un probleme tres complique et profond. La question se pose donc à tous les acteurs de l’écosystème local: comment retenir les développeurs expérimentés locaux?

Résumé

Pour finir cette analyse, la dernière question demandait aux répondants de noter l’écosystème local justement sur 100. Sans surprise nous nous retrouvons avec une moyenne de 49/100, ce qui reflète bien le résultat de 2018 et où nous retrouvons toujours ces frustrations avec certaines conditions locales, les salaires en représentant une source majeure. De notre avis, nous restons optimistes sur les perspectives d’avenir bien que les réalités sur le terrain soient quelquefois brutales. Nous avons remarqué une augmentation de structures locales qui se mettent en place pour adresser certains des défaillances de l’écosystème, surtout en matière de formations de qualités, en plus des structures étrangères qui commencent à oeiller leur implantation en Côte d’Ivoire. Vu notre experience, nous pouvons affirmer que toute initiative doit se fixer sur une vision à long terme car les besoins sont réels et il ya encore beaucoup à faire en terme de renforcement des capacités. Etant donné la longueur de l’article, les données brutes du sondage sont disponibles sur ce lien. Pour toute question ou suggestion, nous sommes joignable a codeivoire.io at gmail.com.

Nous préparons déjà les éditions 2020, si vous êtes une organisation qui veut entrer en partenariat, contactez nous a codeivoire.io at gmail.com.

--

--

Abou Kone
Code d'Ivoire

Chief Mercenary @akiltechnologies. @codedivoire founder. African Tech is on my mind.