Réussir un projet web n'est pas une mince affaire. Le web est un média qui s'est complexifié au fil du temps nécessitant des compétences de plus en plus spécifiques.
Vous allez devoir définir le périmètre de votre projet, le designer, le développer, vous assurer que le livrable est conforme à vos attentes et à celles de vos clients, le déployer en production en vous assurant que la performance et la sécurité sont au rendez vous.
Ne faites pas demi-tour et prenez une grande bouffée d'oxygène. Nous ne sommes pas là pour vous mentir en vous faisant croire que ce type de projet relève d'une grande simplicité. Nous allons faire mieux, en vous disant ce qui d'après notre expérience, permet de maximiser les chances de succès de votre projet.
Vous n'êtes pas condamnés à répéter les erreurs que d'autres ont commises. Appuyez-vous sur leur expérience et expertise.
Les personnes en charge de vous conseiller n'ont d'ailleurs pas nécessairement besoin d'être les mêmes que celles qui réalisent.
Bien souvent, nous menons des missions d'audit et de conseil pour des sociétés qui ont des équipes internes.
L'intérêt pour nos clients est de bénéficier de notre expérience construite au travers de différents projets et au fil des années.
Comme tout le monde, nous avons fait des erreurs. Alors autant que cela profite à d'autres.
Qu'il s'agisse de contenus gratuits comme celui-ci, ou de missions d'expertise de quelques jours, recueillir très tôt le conseil et l'avis d'un partenaire vous fera certainement gagner plus de temps et d'argent, que l'inverse. Un simple conseil peut vous faire économiser plusieurs milliers d'euros.
C'est avant tout s'éviter le fardeau de vouloir tout anticiper.
Dans un projet qui réussit, le projet vous porte tout autant que l'inverse. Il devient vivant grâce aux retours que vous collectez.
C'est vrai également pour vos clients. Ne leur demandez pas ce qu'ils veulent, mesurez ce qu'ils font. Vous en tirerez beaucoup plus d'enseignements. Car client ou pas, nous sommes des êtres irrationnels et avons du mal à analyser ce qui est important.
Commencez en utilisant des prototypes, mettez en place des fonctionnalités désactivées pour mesurer l'attente suscitée.
Rappelez vous que pendant 3 ans, Gmail n'a été accessible que sur invitation ! Et nous n'étions alors qu'en 2004, Google n'était pas encore ce géant d'aujourd'hui.
Il n'est pas rare que des équipes ré-inventent la roue, à grand coup de semaines de développement pour implémenter des solutions qui existent déjà et sont disponibles sur étagère.
C'est le cas par exemple pour les interfaces de statistiques. Généralement, dans le cas d'une application, il est fréquent de vouloir disposer de tableaux de bord de pilotage. Le coût de développement de ces tableaux de bord peut vite devenir pharaonique. Un filtre sur les données à ajouter, une représentation en pie chart plutôt qu'en bar chart. Vous voilà embarqué sans vous en rendre compte dans un sous-projet colossal avec une valeur métier toute relative.
Qui plus est, un beau jour, on vous demandera de recouper les données de votre application avec celles d'une autre afin d'obtenir des statistiques consolidées... et là c'est le drame : vous pouvez jeter tous ces efforts à la poubelle.
Dommage d'en arriver là quand on sait qu'il existe des outils de BI puissants, dont certains gratuits et open source.
Ce n'est qu'un exemple parmi d'autres. Prenez le temps de regarder ce qui se fait autour de vous plutôt que de vous jeter tête baissée dans une série de développements sur-mesure.
La seule chose sur laquelle vous ne pouvez pas vous permettre de faire l'impasse, c'est la connaissance de votre propre métier.
Ça peut sembler évident mais on ne met pas toujours le bon interlocuteur pour piloter le projet : celui qui disposera du bon niveau d'information / de capacité de décision.
Dans ce cas, on se met à implémenter des logiques métiers erronées voire bancales, et c'est rapidement tout le château de cartes qui s'écroule.
Assurez-vous de maitriser les fondements de votre projet, votre vision cible, en privilégiant une bonne maitrise sur un petit périmètre, plutôt que l'inverse.
L'histoire est un éternel recommencement. Modèle distribué vs centralisé, modèle objet vs fonctionnel, etc.
Trop souvent, on se tourne vers la tendance du moment, sans savoir si elle se calque réellement sur nos besoins.
Le problème tient au fait que ceux qui disposent d'une caisse de résonance importante ont des problématiques d'une portée sans doute bien différente des vôtres.
Ce n'est pas parce que Facebook utilise GraphQL que vous devez en faire de même.
Ce n'est pas parce que Airbnb n'utilise plus React Native que vous ne devez pas considérer cette option.
Ce n'est pas parce que Netflix utilise des micro-services que vous devez refondre tout votre SI pour passer vous-même aux micro-services.
Si vous ne savez pas juger de ce qui est nécessaire et adapté à votre projet, reportez-vous au conseil numéro 1 : allez chercher le conseil, sollicitez de l'aide auprès d'experts.
Méfiez-vous également des belles illusions et des discours trop policés. Bien mener un projet n'est simple pour personne. Restez éloigné de ceux qui vous offriront des retours d'expérience sans accrocs, « on est les meilleurs, on a tout réussi ».
Si vous développez un produit, vous devez autant que possible l'utiliser pour vos propres besoins.
Ressentir les irritants que vivent vos utilisateurs ou vos clients, c'est la meilleure façon de faire progresser votre produit.
En étant trop loin du produit, vous risquez de perdre contact avec la réalité. Le développement de projet est une expérience de terrain !
Vous n'êtes pas seuls, ou du moins vous n'avez pas à l'être.
Vous l'avez compris, la clé est d'être bien entouré, surtout dans les phases clés d'un projet, notamment l'amorçage.
Essayez également de prendre du recul si vous sentez venir l'effet tunnel.
Comme toujours, nous sommes là pour vous aider, alors n'hésitez pas à nous solliciter pour nous soumettre vos questions et échanger autour de votre projet.