CodeGym /Cours Java /Frontend SELF FR /Création de produits

Création de produits

Frontend SELF FR
Niveau 48 , Leçon 0
Disponible

10.1 « Les gens ne naissent plus, ils sont cultivés »

Eh bien, puisque tu es toujours là, continuons. « Et je vais te montrer à quel point le terrier du lapin est profond » (c)

Laisse-moi te raconter comment se déroule le processus de développement d'un produit. Nous allons parcourir les étapes du niveau le plus haut, global, jusqu'au niveau le plus bas — l'écriture du code. Je pense que tu découvriras quelques surprises intéressantes…

Les produits IT modernes ne sont plus écrits : ils sont créés. Ils sont assemblés à partir de bibliothèques, frameworks, programmes et produits tiers, ou alors on utilise des services internet distants payants ou gratuits.

Un produit moderne — c'est tout un zoo de technologies, services, solutions et processus. Une partie du travail est faite par des gens, une partie est automatisée, et les 90% restants sont réalisés par des services cloud dans des data centers. Le monde n'est plus le même.

Mais la première chose que tu remarqueras — ce sont les changements constants. Tu n'écris plus de programmes : tu y apportes des modifications.

10.2 Changements constants

Tu vas commencer à travailler et rejoindre une équipe de 20 personnes, qui travaille déjà depuis 5 ans sur le produit. Actuellement, la septième version est disponible pour les utilisateurs. Et ta tâche sera d'apporter des modifications à ce produit. De petites modifications, pour ne pas effrayer les utilisateurs actifs actuels.

Et ça ne sera pas facile, car le produit fonctionne déjà. Il a des clients, et ils payent de l'argent. Donc, il ne faut rien casser. Apporter des modifications à un produit existant est plusieurs fois plus difficile que de le faire sur un produit nouveau. Pour cela, il y a des normes spéciales, des protocoles, des migrations et des utilitaires. Cela me rappelle une blague :

Deux vieux amis se rencontrent : l'un est devenu mécanicien, l'autre chirurgien... chacun a sa vie, ses préoccupations, ses joies... Ils se racontent tout et tout d'un coup, ils parlent des salaires. Le mécanicien dit "Eh bien, je gagne 30K par mois et j'en suis très content, et toi combien ?", le chirurgien dit : "Eh bien, environ 100K par opération"... Là, le mécanicien est intrigué "Bizarre, pourquoi une si grande différence, on dirait qu'on fait la même chose — on change des pièces détachées", et le chirurgien lui dit : "Allons à la voiture, démarre"... le mécanicien démarre la voiture, le chirurgien ouvre le capot et dit au mécanicien "Tu vois le moteur tourne ? Change-le ! :)"

Même si un miracle s'est produit, et que ton équipe a écrit le produit à partir de zéro pendant toute une année avant de le lancer, tu sais ce qui va se passer ensuite ?

Si ton produit devient un succès, le propriétaire voudra le développer. Lancer une nouvelle version, ajouter certaines fonctionnalités. Ou au moins mener quelques expériences. Et tu sais ce qui en résultera ? Des changements.

10.3 La valeur du produit

Du point de vue du développement moderne de produits, seul le code qui a déjà été lancé, et la fonctionnalité que les utilisateurs utilisent, ont de la valeur. Si tu as écrit du code, qu'il est stocké quelque part, qu'il fonctionne, mais que personne ne l'utilise, alors sa valeur est proche de zéro. C'est pourquoi tout le code doit être déployé en production aussi tôt que possible.

Ton code doit passer par ces étapes :

  • Tu l'as écrit et tu t'es assuré qu'il fonctionne
  • Ton TeamLead l'a revu et ajouté à la branche principale dans Git
  • Les tests lors de la construction du programme ont montré que tu n'as rien cassé d'important
  • Les tests d'intégration ont montré que le produit fonctionne correctement
  • Le testeur a vérifié ce code et donné le feu vert pour le lancement
  • Ensuite, il faut assembler la nouvelle version du produit et la déployer sur le serveur
  • La nouvelle version du produit doit être emballée dans des Docker Images et déployée
  • Il faudra peut-être lancer des scripts de migration et apporter des modifications à la base de données et/ou à d'autres solutions tierces
  • Ensuite, il faut collecter les journaux sur le serveur pour s'assurer que tout fonctionne correctement
  • En cas de situation d'urgence, si tu as cassé quelque chose, tu dois revenir à la compilation précédente, restaurer l'état précédent de la base de données et ne pas perdre les actions que les utilisateurs ont effectuées pendant qu'ils utilisaient la version instable du produit

Dans la plupart des entreprises, ces tâches sont maintenant résolues : de nouveaux processus sont mis en place, des personnes spécialisées sont embauchées, des protocoles de sécurité spéciaux et des normes de contrôle de qualité sont introduits.

Plus l'entreprise est grande, moins il y a de temps entre l'écriture du code et le moment où il est mis en production et devient une valeur — commence à être utile aux gens.

Dans la plupart des entreprises, le code passe par ce chemin en deux semaines, mais il y a des entreprises qui font des lancements chaque semaine, ou même chaque jour. Certains sont même uniques — plusieurs fois par jour.

Le code écrit ne vaut rien. Seul le code fonctionnant en production apporte de la valeur.

Commentaires
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION