CodeGym /Cours /Python SELF FR /Développement de Produits

Développement de Produits

Python SELF FR
Niveau 63 , Leçon 3
Disponible

5.1 Un peu d'histoire

Quand la révolution Internet a commencé dans les années 90, personne ne savait comment développer correctement des services en ligne. Toutes leurs fonctionnalités devenaient immédiatement disponibles aux utilisateurs, ce qui était très différent de l'approche classique du développement de logiciels.

Le plus grand moteur de recherche de l'époque, Yahoo, a décidé de suivre une nouvelle voie et d'adopter une approche hollywoodienne – leurs managers étaient appelés producteurs :) Pas étonnant qu'ils n'aient rien réussi.

C'est intéressant. Yahoo est le plus grand perdant en termes d'achat d'autres entreprises. À l'époque, on leur a proposé plusieurs fois d'acheter Google et Facebook. Finalement, Microsoft a tenté de les racheter pour 40 milliards à la fin de leur carrière, mais ils ont refusé à nouveau. Quelques années plus tard, ils ont été acquis pour seulement 3 milliards. Dans les années 90, au sommet de leur popularité, Yahoo était évalué à 200 milliards de dollars, et s'ils avaient acheté Google, leur valeur aujourd'hui pourrait atteindre plusieurs trillions. Ne sois pas comme Yahoo.

Depuis la révolution Internet, des dizaines de méthodes de développement logiciel ont été testées, et la situation s'est stabilisée. Il existe aujourd'hui des rôles standards avec des responsabilités standard, des processus et des logiciels standard.

Au cours de votre formation, vous découvrirez tout ce que vous devez savoir pour travailler dans des entreprises IT modernes, avec des outils de développement modernes.

5.2 Équipe Produit

Une équipe de développement typique se compose de :

  • Des personnes qui décident quelles fonctionnalités et caractéristiques le produit devrait avoir
    • Product Owner
    • Business Analyst
  • Des personnes qui décident à quoi le produit va ressembler
    • UI Designer
    • UX Designer
  • Des développeurs qui réalisent tout ça
    • Software Architect
    • Backend Developer
    • Frontend Developer
    • Mobile Developer
  • Des personnes qui garantissent la qualité du produit
    • QA Automation
    • DevOps

Product Owner joue un rôle clé dans le développement de logiciels, en gérant le produit et en s'assurant que l'équipe de développement se concentre sur les tâches les plus importantes. Il définit la vision du produit, établit et priorise la liste des tâches (backlog), ce qui aide à garantir que chaque étape du développement répond au mieux aux objectifs commerciaux et aux besoins des utilisateurs.

UX Designer se concentre sur la création d'une interface produit conviviale et efficace, ce qui inclut la recherche des besoins des utilisateurs, le développement de prototypes, et le test des interfaces. Ce travail vise à améliorer l'interaction de l'utilisateur avec le produit, pour le rendre le plus clair et le plus pratique possible.

DevOps-les spécialistes optimisent les processus de développement logiciel et sa gestion opérationnelle, accélérant et simplifiant ainsi le déploiement des mises à jour. Leur travail inclut l'automatisation des tests, le déploiement et la surveillance des systèmes, ainsi que la configuration de l'infrastructure et l'assurance de l'intégration et de la livraison continues (CI/CD).

5.3 Équipe de Développement

Le développement lui-même est réalisé par les programmeurs. Ils peuvent être grossièrement divisés en 5 catégories :

  • Software Architect
  • Backend Developer
  • Frontend Developer
  • Mobile Developer
  • DBA

Les rôles et leurs contenus peuvent changer en fonction de la taille de l'équipe et de la spécificité du produit, mais la situation est à peu près la suivante :

Software Architect est responsable de la conception de l'architecture complexe des systèmes logiciels. L'Architect développe l'infrastructure technique, définit la structure et les méthodes d'interaction entre les différents composants d'un produit logiciel, garantissant leur évolutivité, leur performance et leur sécurité.

Backend Developer se spécialise dans le développement de la partie serveur des applications. Les tâches du Backend Developer incluent la mise en œuvre de la logique, l'intégration des bases de données et des systèmes de gestion des données, le traitement des requêtes des utilisateurs et le maintien de l'interaction avec la partie frontend.

Frontend Developer développe l'interface utilisateur des applications web. Ce rôle nécessite une connaissance de HTML, CSS et JavaScript, ainsi que des frameworks et bibliothèques pour créer des interfaces interactives et réactives, assurant une bonne interaction utilisateur avec le produit.

Mobile Developer est responsable du développement d'applications pour appareils mobiles. Le Mobile Developer crée des applications pour différents systèmes d'exploitation (comme iOS et Android), en tenant compte des spécificités de la plateforme, des performances des appareils, et de l'expérience utilisateur.

DBA (Database Administrator) est chargé de la gestion des bases de données, assurant leur disponibilité, leur sécurité, et leur optimisation. Le DBA accomplit des tâches de configuration, de surveillance, et de maintenance des bases de données, ainsi que le développement de stratégies de sauvegarde et de récupération des données.

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