Les difficultés des startups : comment bien développer l’infrastructure informatique

Si tu crois des statistiques, seulement 1% des startups survivent. Nous n’aborderons pas les raisons de ce niveau de mortalité, ce n’est pas notre affaire. Nous préférons vous expliquer comment augmenter les chances de survie grâce à une gestion compétente de l’infrastructure informatique.

Les difficultés des startups : comment bien développer l’infrastructure informatique

Dans l'article:

  • erreurs typiques des startups en informatique ;
  • comme approche informatique gérée aide à éviter ces erreurs ;
  • exemples instructifs tirés de la pratique.

Quel est le problème avec l'informatique pour les startups ?

Il convient de préciser que par startup, nous n’entendons pas un café ou un insectarium dans un centre commercial. Nous parlons de startups technologiques - de celles qui sont hantées par le succès de GitHub, Uber, Slack, Miro, etc.

Les startups ont toujours beaucoup de problèmes qui les empêchent de décoller : des investissements insuffisants à un modèle économique sous-développé. Dans le même ordre d’idées, curieusement, se pose le problème des premiers succès.

Les premiers succès sont mauvais pour les startups qui surestiment leurs capacités, notamment financières et humaines. Après avoir clôturé les premiers dossiers réussis, ces optimistes souhaitent se développer immédiatement : louer un autre bureau, recruter de nouveaux vendeurs et développeurs dans l'équipe, et en même temps faire évoluer le backend (et avec une marge). C'est là que le problème n°1 apparaît immédiatement.

Les gens dans une startup font des choses qu’ils ne savent pas faire.

Et ils ne font pas ce qu’il faut pour développer une startup. Laisse-moi expliquer.

Chaque startup doit avoir au moins trois rôles :

  • Spécialiste informatique (ou technologue);
  • vendeur (ou marketeur) ;
  • un visionnaire (ou un entrepreneur qui est aussi souvent un investisseur).

Ces rôles sont souvent mixtes. Par exemple, une startup est un informaticien qui, en plus, est obligé de vendre. Il n'a jamais vendu et le fait du mieux qu'il peut. Une telle startup est une sorte d’équipe interfonctionnelle maligne.

Mais disons que la startup a de la chance : il y a quelqu'un à qui vendre et l'informaticien s'occupe de ses affaires. Il est cependant rare qu’un informaticien cumule différentes qualifications : développeur, testeur, administrateur, ingénieur en architecture. Et même si cela se combine, il est peu probable que ce soit aussi bon. Il comprend peut-être les middlewares, mais pas vraiment les services cloud et les logiciels de virtualisation.

Les difficultés des startups : comment bien développer l’infrastructure informatique

Lorsque le backend se développe, la charge du spécialiste informatique augmente. Quelque chose commence à « s’affaisser ». Le pire, c'est s'il s'agit d'un domaine critique pour la startup, comme le développement de produits. Et maintenant, une personne doit faire des heures supplémentaires, et parfois XNUMX heures sur XNUMX.

La surcharge due au manque de personnel et de qualifications est une caractéristique de la plupart des startups, conséquence du fait que les gens font la mauvaise chose.

Tous les services sont déployés sur une seule machine virtuelle

Souvent, les startups, en fonction de leurs propres idées en matière d'économies, placent des environnements de développement, des bases de données, un serveur Web, une surveillance, etc. sur une seule VM. Au début, toute cette affaire fonctionne plus ou moins convenablement. Les problèmes commencent lorsque vous devez évoluer.

Les startups évoluent généralement verticalement. Autrement dit, ils augmentent simplement le nombre de processeurs, la quantité de RAM, les disques, etc. - il s'agit d'une approche monolithique classique dont l'effet négatif devient irréversible à un moment donné. Si une jeune entreprise se développe, à un certain stade, le prix à payer pour augmenter les ressources atteint un niveau inabordable. Dans ce cas, il n’y a qu’une seule façon d’optimiser l’infrastructure : la remonter.

Comment l’informatique gérée aide-t-elle

Pour ce type de projet, nous disposons d'un service de classe services gérés - DevOps géré.

Le client reçoit immédiatement :

  • préparer les environnements nécessaires au travail : dev, test, prod ;
  • processus CI/CD configurés ;
  • outils préparés pour le travail en équipe : trackers de tâches, systèmes de contrôle de versions, déploiement, tests, etc.

Au niveau de l’infrastructure et des outils, toutes les startups ont besoin à peu près des mêmes choses. Si vous comparez le marché du capital-risque à l’exploitation aurifère, le fournisseur de services gérés (MSP) fournit de nouveaux outils de haute qualité : des pioches et des chariots qui ne cassent pas, des cartes qui ne mentent pas. Le prospecteur n’a plus qu’à choisir un endroit où creuser.

Avantages de l'informatique gérée

L'informatique gérée est un service complet qui couvre un certain nombre de besoins obligatoires.

  • Au départ, nous fournissons les ressources nécessaires et personnalisées pour le travail, la croissance et la vérification des hypothèses.
  • Nous pouvons dire exactement comment le coût augmentera lors de la mise à l’échelle, car nous savons que la mesure clé est la convergence de l’économie de la startup.
  • Nous proposons des consultations pour permettre aux startups d'économiser un nombre important d'heures de travail. Nous pouvons également vous aider avec les calculs de l’économie unitaire du projet.
  • Nous partageons les meilleures pratiques du marché. Les gens d'ITGLOBAL.COM ont travaillé avec de nombreuses startups. Beaucoup de ces startups se font sur une base mensuelle. Cela nous permet de rassembler les meilleurs (et les pires) exemples et de partager nos expériences avec nos clients.

Deux cas tirés de la pratique

Selon la NDA, nous ne pouvons pas nommer des entreprises spécifiques, mais la portée et le produit, oui.

Portée: fintech/commerce de détail

Produit: marché

Problèmes:

  • Il n’y a eu aucun test dans la chaîne CI/CD. L'ajout de testeurs distants n'a fait que rendre le processus de construction plus complexe.
  • Les développeurs travaillaient simultanément sur un serveur de développement sans environnements dédiés dans des conteneurs.
  • 70 % du temps des développeurs a été consacré aux mêmes actions d’une version à l’autre. La vitesse de développement était très lente.
  • L'infrastructure a été déployée sur une société d'hébergement à faible coût en Allemagne (c'est-à-dire pas de vitesse, pas de fiabilité).

Ceci est d'ailleurs observé dans chaque premier projet.

La solution est gérée DevOps : nous avons mis en œuvre des processus CI/CD, mis en place des tests et une surveillance corrects, sommes intervenus dans le développement au niveau des processus métier et avons transféré l'infrastructure vers des serveurs productifs dans un centre de données Tier III.

Résultat:

  • l'efficacité du développement a augmenté : les nouvelles fonctionnalités et mises à jour ont commencé à apparaître plus rapidement avec moins de travail ;
  • en conséquence, le coût du processus de développement dans son ensemble a diminué ;
  • l'infrastructure est devenue flexible : le client peut rapidement évoluer à la fois vers le haut et vers le bas ;
  • les coûts du DevOps géré, selon le client, ont été amortis en six mois.

Portée: publicité sur Internet

Produit: Plateforme d'IA pour automatiser les campagnes publicitaires

Problèmes:

  • backend sur du matériel ancien, dans un data center avec un faible niveau de tolérance aux pannes ;
  • manque de sauvegardes régulières ;
  • infrastructure monolithique.

La solution était une informatique gérée : nous avons transféré l'infrastructure vers du matériel haut de gamme, configuré le cluster Galera pour une mise à l'échelle horizontale, montré comment la charge sur la VM serait répartie, mis en place des sauvegardes et une surveillance. Désormais, en plus de la maintenance, nous consultons activement, notamment sur DevOps.

Résultat:

  • l'infrastructure est devenue un microservice : le coût d'expansion a considérablement diminué et la capacité d'évoluer, au même coût, a augmenté ;
  • la fiabilité et la sécurité de l'infrastructure ont augmenté ;
  • les développeurs sont passés d'un modèle de construction en cascade à CI/CD, ce qui a contribué à réduire les coûts ;
  • Selon le client, les avantages financiers de l'informatique gérée sont devenus immédiatement évidents.

Conclusion

La survie des startups dépend en grande partie de la chance. Une startup peut dépenser de l’argent pour des équipements coûteux et n’en tirer aucun profit. Un autre réussira même avec une infrastructure informatique médiocre - tout comme un chercheur d'or trouve une mine d'or avec une vieille pioche.

Cependant, les outils, les pratiques et le personnel professionnels modernes fournis par un fournisseur de services informatiques gérés réduisent considérablement le risque d’échec.

Source: habr.com

Ajouter un commentaire