De 0 à 10 millions de visiteurs uniques avec les moyens d'une startup

Preview:

DESCRIPTION

Le développement web est guidé par deux axes : les besoins fonctionnels et les contraintes techniques. Les aspects techniques deviennent de plus en plus importants au fur et à mesure de l'augmentation du trafic d'un site. Fine Media est éditeur des sites ComprendreChoisir et CommentFaitOn. À la lumière de cette expérience, nous allons voir les étapes d'un développement web au cours de la vie d'une startup, depuis sa création jusqu'à l'exploitation de sites à fort trafic, avec tous les impacts que cela engendre : Techniques (quelle techno pour accompagner chaque stade de développement), fonctionnels (qu'est-il possible de faire et pourquoi) et organisationnels (quels sont les changements d'organisation d'équipes et de gestion des projets nécessaires au fil du temps).

Citation preview

De 0 à 10 millionsde visiteurs uniques

avec les moyens d'une startup

ComprendreChoisir.com

Organisation & méthodes

IT & administration

Développement web

De 0 à 10 MVU

ComprendreChoisir.com

427 sites de niche + 1 portail

Trafic de longue traîne

Monétisation : génération de devis, bannières publicitaires

ComprendreChoisir

« seed content »

Contenu “froid”

Articles MECE mutuellement exclusif collectivement exhaustif

Guide pratique

Communauté de pros

> 3 000 questions / mois

> 89 % questions répondues

Avis conso

Questions - réponses

Focus sur des sujets précis

Contenu “tiède”

Évolution constante

Exportalisable

Conseils & astuces

Écrites par des experts

Didacticiels illustrés

Réalisations pas-à-pas

Fiches pratiques

Téléchargement gratuit

Ebooks, fiches pratiques, lettres et contrats types

Source de notoriété

E-bibliothèque

Produits

Vidéos

Avis de pros

Annuaires PagesJaunes et AnnoncesJaunes

...

Autres fonctionnalités

2007 / 2008

Évolution du design

2008 / 2009

Évolution du design

2009 / 2010

Évolution du design

2011

Évolution du design

2012 / 2013

Évolution du design

Évolution du trafic

Pages vues

Visites

Visiteurs uniques

Organisation& méthodes

1. Webdesign

2. Administrateur système

Se séparer rapidement des gens qui ne conviennent pas

Embaucher les bonnes personnesau bon moment

Pas de recrutement hâtif

Faire avant de déléguer

Un bon recrutement fait gagner beaucoup de temps

Dépenser l'argent intelligemment

Évolution des besoins

Complexité des projets

Évolution des besoins

Recrutements

Évolution des besoins

Réactivité

Évolution des besoins

Difficultés de maintenance

Évolution des besoins

Les méthodessont desmodèles théoriques

Inventez celles dont vous avez besoin

Les 3 problèmesdes spécifications

Organisation & méthodes

Pas de spécification

Moi, tant qu'on ne me dit rien,Moi, tant qu'on ne me dit rien,je fais du mur...je fais du mur...

Spécifications qui changent en cours de développement

Pour les fenêtres ?Pour les fenêtres ?Ah oui, à force de changer d'avis...Ah oui, à force de changer d'avis...

Spécifications qui arrivent après les développements

La refaire ? Eh, fallait pas direLa refaire ? Eh, fallait pas dire« les pieds dans l'eau »« les pieds dans l'eau »

IT & administration

La haute-dispo coûte cher

Sans rire : très cher

Et c'est chiant contraignant

Et vous n'en avez pas besoin

Accepter les risques

Valorisation :Valorisation :22 milliards de 22 milliards de dollarsdollars

Nous acceptons 4 heures max. d'interruption de service

Psychopathes des sauvegardes

Investir sur les machines critiques

Faire des choix

Serveurs front-endSLA 4 heures

Serveurs back-endSLA 2 heures

Sauvegarde + double archivage

Inutilement cher si votre trafic est prévisible

Génialement flexible si vous avez des pics de trafic

Faites de l'hybridation

Cloud Computing ?

Développementweb

Deux ennemis

Dette technique

Maintenance

Je suis un développeur PHPJe ne suis pas un développeur ZF, Symfony ou CakePHPJe pense que PHP est déjà suffisamment compliqué

J'aime créer des choses simplesJ'aime créer des choses simples avec des objectifs simplesJ'aime créer des choses qui résolvent des problèmesJ'aime créer des choses simples qui, mises ensembles, résolvent des problèmes complexes

Je veux moins de code, pas plusJe veux écrire moins de code, pas plusJe veux gérer moins de code, pas plusJe veux maintenir moins de code, pas plusChaque morceau de code que j'ajoute à un projet doit être justifié

J'aime le code simple et lisibleJe veux écrire du code qui se comprend facilementJe veux du code qui se teste facilement

Manifeste Micro-PHP

microphp.org

Tout tout tout mettre en cache

Données brutes, données agrégées, sessions, HTML généré

Penser au temps de chauffe

Memcache saves lives

SQL seul au début

NoSQL seul

SQL + noSQL

SQL + indexation full-text

SQL + noSQL + indexation full-text

Hybridation de base

Sortez de vos frontaux tous les traitements qui peuvent l'être

Commencez avec une crontab

ZeroMQ/nanomsg, RabbitMQ, ActiveMQ, Gearman, ...

Traitements asynchrones

À chaque problème sa solution

Équipe Q/A

Tests unitaires

Tests d'intégration

Selenium

Behat

Choisissez vos testeurs

geek-directeur-technique.com

amaury@amaury.net

@geekcto

Recommended