Faut-il (encore) faire des études de développeur ?
A l’heure de la mondialisation effrénée, de la main d’œuvre pas chère, et de l’outsourcing dans des pays à bas coûts, nous – les développeurs – sommes très nombreux aujourd’hui sur le marché du travail. Et pourtant, je n’arrête pas d’entendre dans mon entourage la difficulté rencontrée par mes amis & confrères de recruter du personnel de qualité.
Les termes génériques sont aussi très nombreux pour désigner les profils techniques en informatique : ingénieur informaticien, webmaster, codeur, programmateur… Ces désignations d’un autre temps sous-entendent qu’un développeur peut développer tout et n’importe quoi. Faux ! Le développement informatique s’est professionnalisé depuis l’an 2000. Aujourd’hui, développer, c’est un vrai métier.
L’outsourcing au Maroc, une bonne idée ? 1/2
En ce début de mois de Novembre 2018, j’ai eu la chance d’être invité par la CCI de Haute-Savoie pour parler d’entrepreneuriat dans le Maghreb. Et plus précisément, au Maroc. En effet, entre 2009 et 2012 – durant 3/4 ans, j’ai monté une équipe délocalisée au Maroc. Situé à Tanger, mon souhait était de développer une régie outsourcée spécialisée dans les métiers du web/digital. Notre métier consistait à vendre de la sous-traitance technique pour les agences web/SEO/360° de Lille & Paris – là où se situait l’ensemble de mon carnet d’adresses. Et cette entreprise n’a pas été une mince affaire…
Le Maroc possède de nombreux attraits, sur le plan culturel et touristique. Mais sur le plan entrepreneurial, j’ai davantage le souvenir d’avoir passé mon temps à résoudre des problèmes. Quand ce n’était pas Maroc Telecom qui coupait ma ligne internet – sans raison apparente, ou une subite coupure électrique au bureau, je faisais face aux lacunes de mon personnel. Malheureusement régulières, et trop nombreuses.
Ainsi sur le plan technique, j’ai constaté 2 problèmes majeurs au Maroc.
- Problème n°1 : les développeurs juniors marocains ne font que de la théorie / aucune pratique
D’abord, une grande partie des étudiants en informatique rencontrés sur place subissent les contraintes du système scolaire marocain. Les formations sont dispensées par des professeurs académiques, très bons dans la théorie. Mais dès qu’il s’agit de la pratique, j’ai pu constater qu’on était loin du compte. Avant de recruter mon équipe, nous avions reçu un grand nombre de candidats. Tous arrivaient avec un CV à rallonge, et une liste gigantesque de langages informatiques connus (et méconnus). Et c’est là le problème… Moi aussi, j’ai entendu parler de Python, C#, Swift, Java, AS400 ou XSLT. Mais ce n’est pas parce que j’ai écrit un Hello World un jour avec un de ces outils, que je peux m’estimer expert ! C’est pourtant l’approche globale de ces candidats ; ils ont entendu parlé un jour de Java EE ou d’Angular, alors ils s’affichent avec. Par conséquent, ces CVs sur-gonflés cachaient en réalité d’énormes disparités. Et pour le recruteur, les tests techniques deviennent alors indispensables ! - Problème n°2 : les étudiants dev marocains apprennent – selon moi – des langages inutiles
Comme Ruby on Rails. Certes, on a vendu Ruby comme le remplaçant de PHP il y a quelques années. Mais vous connaissez beaucoup d’outils conçus sous Ruby aujourd’hui ? A part Forgeos… et encore ! Par conséquent, le sur-apprentissage que j’ai pu constater à Tanger autour de Ruby me semble avoir été un pari risqué et perdu.
Nos besoins se résumaient en 2 catégories : du développement back-end orienté open-source (PHP avancé, Magento 1.9.x + Zend, SF3, WordPress, etc.). Sans oublier l’utilisation régulière d’XML, de JSON, de Web-Services, etc. Et du développement front-end (HTML avancée orienté SEO, Vanilla JS/Framework JS, Handlebars, LESS/Keyframes, etc.). Et là, c’était une catastrophe… les développeurs ont souvent une mauvaise image de la partie front-end, qu’ils considèrent trop simple, et peu technique. Et par conséquent, ils ont tendance à délaisser cette couche métier. Ce à quoi je réponds toujours : un client ne voit pas le code derrière ton bouton. Il veut pouvoir accéder à ton outil, l’interface est donc toute aussi primordiale : temps de chargement, responsivité du contenu, crossbrowser, etc. Le front-end, c’est important et c’est un métier ! D’ailleurs, si Google d’amuse à sortir régulièrement des outils d’amélioration front-end avec une vision Mobile First, ce n’est pas par hasard. Avec Lighthouse, l’AMP, et les problématiques liées au SEO technique, on comprend vite que le front est primordial.
L’outsourcing au Maroc, une bonne idée ? 2/2
Je résumerais les problèmes rencontrés au Maroc en 1 mot principal : la qualité. En effet, les problèmes de qualité étaient systématiques. L’occidental français que je suis associera ces problèmes de qualité à un problème culturel plus profond au Maroc. En effet, chaque jour j’étais confronté à des situations symptomatiques d’une société qui semblait fonctionner sur l’à-peu-près. Maroc Telecom, Enedis, La Poste Marocaine, et les différents services auxquels j’ai fait appel (Assurance Panafricaine, Sécurité Sociale, Comptable, ma banque – BMCI, mon agence Immo etc.) perdaient mes dossiers, se trompaient dans mes cotisations… Ou m’indiquaient des montants erronés sur mes relevés bancaires ! Le double-checking devient alors systématique.
Malgré tout, j’ai envie de croire que tout cela va évoluer. J’ai constaté sur place – à Tanger – les investissements immobiliers pharaoniques, l’arrivée des usines Renault, le développement de l’activité portuaire. Et récemment – l’arrivée du TGV entre Tanger et Casablanca. Ces investissements me poussent à croire que le Maroc se renforce. Et que j’ai tenté cette aventure au bon endroit. Mais pas forcément au bon moment.
Casablanca, the place to be ?
Par ailleurs, j’ai constaté que de nombreux développeurs locaux voient en Casablanca une sorte de Nirvana marocain. Un peu comme la Silicon Valley du Maroc. Alors, oui : CapGemini, Atos, Sopra… toutes ces grandes SSII se sont installées à Casablanca, près de la grande mosquée Hassan II. Oui, un salarié marocain coute moins cher qu’un salarié français. Mais, franchement… le TCO Total Cost of Ownership n’est-il pas supérieur finalement ? Ce qu’on gagne d’un côté – avec les salaires inférieurs à ceux pratiqués en France, je le perdais de l’autre côté avec des tâches chronophages et des délais à rallonge dans les livraisons clients. Alors, la présence de ces enseignes au Maroc n’est-elle pas surtout une forme de « The place to be » pour décrocher quelques contrats juteux avec quelques grandes filiales marocaines ? Et pas – ou plus – des solutions dédiées à l’outsourcing ?
Autre chose : j’ai souvent constaté que la plupart de ces ingénieurs finissent comme responsables dans des call-centers. Alors oui, pour travailler dans un call-center, on a besoin de suivre une formation technique, qui permette – au minimum – de tenir le discours face aux exigences des clients. Mais admettez tout de même qu’un ingénieur sorti d’une Université réputée semble mériter mieux sur le papier qu’un rôle de « simple » technicien.
La passion, avant tout !
Fort heureusement, j’avais recruté quelques salariés qui m’ont fait comprendre qu’un bon développeur – marocain ou non – c’est d’abord quelqu’un de passionné. La passion crée l’investissement. Il en résulte de la qualité.
J’ai également pu constater le sérieux – à 1 exception près – des jeunes marocaines pour le développement informatique. Je pense deviner que la situation sociale de certaines filles marocaines – sous le joug paternaliste du père ou du mari – leur font prendre conscience que, pour s’émanciper, il leur faut s’accrocher à leurs études. Et du coup, j’ai pu collaborer avec quelques jeunes femmes au sein de mon équipe bien meilleures en moyenne par rapport aux garçons.
L’outsourcing en Europe de l’Est
Du fait de mes origines russes – et malgré mes contacts sur Tanger, j’ai souvent pensé quitter le Maroc au profit d’une équipe située en Ukraine. L’Ukraine me semblait être un compromis intéressant, selon différents aspects purement subjectifs (pratique de la langue, esprit stakhanoviste, hors de l’UE, etc.). Certes, l’emplacement géographique fait moins rêver que le Maroc. Mais force est de constater que les très bons développeurs y sont extrêmement nombreux.
En France, de nombreux sites & applis web nés en Europe de l’Est sont régulièrement consultés :
- Vinted, spécialiste des vêtements de seconde main : Vilnius, Lithuanie
- Skype, développée par 3 estoniens : la célèbre application est maintenue au Luxembourg, et à Tallinn, Estonie.
- Bored Panda, un site dédié au contenu viral et humoristique, à l’instar de l’américain BuzzFeed : Vilnius, Lithuanie.
- En tant que développeur Magento, à chaque fois que je cherche de la documentation technique, j’atterris sur le site de Inchoo, une équipe situé à Osijek, Croatie.
- Drivy, le site français de partage de voiture entre particulier, a été développé – à l’origine – par des développeurs de Bucarest, Roumanie.
- Meet Magento – une série de meetup autour de notre CMS préféré – se déroule partout en Europe de l’Est, comme à Prague d’après cet article paru sur Medium.com
- UpWork.com, site US mondialement connu pour rechercher des développeurs freelance ; faites un test en recherchant « Magento » ou « WordPress ». Les premiers développeurs à apparaitre – à des coûts très bas – parmi les 10 premiers résultats : 4 x Ukraine, 1 x Slovénie, 1 x Russie. Puis l’Inde et les Etats-Unis.
Et si on tire jusque la Russie, c’est pareil :
- Vk.com – THE Facebook d’Europe de l’Est. Utilisé par mes cousins arméniens, on y trouve essentiellement des russes, biélorusses, ukrainiens, géorgiens… Développé à Saint-Petersbourg, ce site est classé 10e du monde en volume de trafic – source : SimilarWeb, Oct. 2018.
- Yandex.com Le Google / Amazon russe qui domine son marché. Et qui fait tout pareil : Moteur de recherche, Web analytique, Enceintes connectées, Application VTC, etc.
Déjà en 2003, l’Estonie se rêvait en Silicon Valley de la Baltique – comme le précise cet article paru dans les Echos. Pionnier en la matière, le wifi est accessible partout dans les rues de Tallinn, la capitale estonienne. Et ce, depuis plus de 10 ans ! L’accès à Internet y est considéré comme un droit, au même titre que les besoins fondamentaux d’accès à l’eau et à l’électricité.
Faut-il être absolument développeur Symfony pour réussir ?
Dans mon entourage, je dénombre beaucoup de développeurs PHP Symfony (SF). Qui se veulent tous être les uns meilleurs que les autres. Mais au final, SF… ça sert à quoi ? Coder des applis web, des sites web, etc. Mais avec un tarif à 700€/jh en France… comment faire le poids avec un développeur externalisé en Europe de l’Est 10 fois moins cher – et très bon ?
Aujourd’hui, les métiers techniques sont démultipliés en développement informatique. Un développeur Laravel sera incapable de coder correctement sous Magento, et inversement. La diversité et la gratuité de tous ces outils a permis de favoriser la mondialisation. Et par conséquent, la concurrence déloyale entre les tarifs des uns et des autres s’accentue. Un site web qui coute 10k€ en France en passant par une petite agence web, risque de coûter 500€ via un freelance estonien, recruté sur UpWork. Du coup… ma conviction, c’est que les développeurs doivent se remettre en question, et développer des compétences nouvelles pour rester au taquet sur le marché. Je dis souvent qu’un développeur ce n’est pas un boucher : un boucher pratique le même métier depuis 20 ou 30 ans. Un développeur doit sans cesse apprendre, et son métier peut changer du tout au tout d’une année à l’autre.
Parmi les compétences clés, j’en dénombre quelques-unes :
- Il n’existe pratiquement pas de développeur Blockchain. La blockchain est utilisée aujourd’hui essentiellement pour les cryptomonnaies. Mais de nombreuses industries s’y intéressent de près. Notamment les assureurs. Pour ma part, j’adore la promesse disruptive faite par la blockchain. Mais suis clairement très refroidi quand je vois le coût énergétique que cela impose – malgré cet article qui prône l’inverse, en changeant d’angle de vue.
- Le développement Cloud. Avec l’avènement des voitures électriques connectées, des drones connectés, des maisons connectées, le smartphone est au centre de tout. Et le stockage massif de datas me fait dire que les développeurs Cloud ont encore de beaux jours devant eux. Même si le stockage sans limite de données a – lui aussi – un poids CO2 non négligeable.
- Les développeurs mobiles vont disparaitre dans les prochaines années. Je partage le même point de vue que Lance qui en parle sur Medium. En effet, les PWA Progressive Web Apps – comme le démontre le site web indien Flipkart.com transforment les sites mobiles en véritables applis. Tout en facilitant leur maintenance, et leur interopérabilité. Du coup… Swift ou Android ne font clairement pas partie de mes objectifs de montée en compétences. Mais ce sont plutôt les frameworks PWA qui m’attirent.
- Les développeurs spécialisés sur des technos bien spécifiques : Power BI, Sharepoint, SalesForce, Oracle… ceux-là devront rester vigileants pour ne pas voir le vent tourner. Mais à court/moyen terme, ces compétences devraient les mettre à l’abri.
Hard Skill vs Soft Skill
Durant mes années d’étude en développement informatique, je formule un reproche principal : les formations dispensées sont – parfois – trop et purement techniques. Trop souvent le nez dans le guidon, on ne code pas pour un besoin, mais pour réaliser le meilleur code. Du coup, le travail perd de son sens. Et un faux esprit de compétition règne entre certains développeurs.
Personnellement, je trouve cela ridicule aujourd’hui – même si j’ai aussi eu ma phase de « je veux être le meilleur possible ». L’école 42 de Xavier Niel ou Epitech produisent des développeurs de qualité et parfaitement autonomes. Mais pour lesquels de nombreuses lacunes sont souvent montrées du doigt. La compétence sociale me semble être la plus fréquente. On a tous cette caricature du gros geek, mangeur de pizza, coca, seul devant son écran, tard le soir. Rarement, l’association « développeur » et « capable d’avoir des relations humaines » nous vient en tête.
J’en viens à me dire que les développeurs ont rarement des cours de management, ou de marketing. Leur permettant de dé-zoomer ce qu’ils font. Et de re-contextualiser leur métier. Si la tendance de fond consiste à recruter des profils techniques à l’étranger, en France on a besoin de Product Owner, et de profils à la double compétence technique/marketing. Être capable de gérer un Kanban, lister des backlogs, définir une stratégie et encadrer du staff technique devrait être enseigné au même titre que le développement front & back.
Très intéressant article.
Pour ma part, je pense effectivement qu’il faut éviter tant que possible de se limiter à une pure expertise technique mais pas uniquement dans le cadre de la mondialisation.
Je pense par exemple qu’un développeur front / un intégrateur gagnerait à avoir des compétences en ergonomie / ux pour mieux comprendre l’impact potentiel du non respect de la maquette initiale.