72
Comment s’adapter à la croissance d’une startup ?

Comment s'adapter à la croissance d'une startup ? (ConFoo 2017 Montréal)

Embed Size (px)

Citation preview

Comment sadapter la croissance dune startup ?

@lboixLucien Boix31 ansDveloppeur Rails / Java & DevOpsJe viens de Lyon (France)Je vis depuis 4 ans Montral (Qubec, Canada)

90% des startups chouent(Forbes, Fortune)

Cest un mytheDure de vie non dfinie clairementDfinition dchouer ?

En fait66% survivent jusqu la 2me anne (Small Business Administration, USA)50% survivent jusqu la 5me anne (US Bureau of Labor Statistic)

Quelles sont les raisons principales dchec dune startup ??

CB InsightsLexplique dans cette tude101 interviews post-mortemMultiples raisons regroupes en 20 catgories

ProcessusLe top 3 des raisons lies

13%Navaient pas le bon focus8%Des investisseurs ntaient pas intresss : performance 8%Les fondateurs ont fini en burnout : efficacit

Nous en dduisons une mauvaise gestion de la croissance

Suivons nos 3 mots-cls et dfinissons un plan

Comment sadapter la croissance dune startup ?

Focus : quest-ce quon fait ?Efficacit : comment bien le faire ?Performance : comment lamliorer ?Faire mieuxFaire plus

Une startup qui a relev le dfiSolutions Mdias 360278 clients762 websites

Fonde en 2010 avec 4 employsJtais le 51me en septembre 2013Nous sommes un peu plus de 140 en mars 2017

FocusTracking des features / demandes1

QuantifierVous devez tre capable de mettre des chiffres sur la sant de lquipe

1 - Focus Tracking des features / demandes

En mode projetUn sprint de X pointsUne release contenant Y volutionsCest direEn mode supportUn nombre de tickets ouvertsUn nombre de tickets ferms1 - Focus Tracking des features / demandes

Mode projet en dtailObjectif : grer des releasesContenuDate de livraisonSuivi de l'avancement

Outils possiblesJira (Atlassian)Youtrack (Jetbrains)Issue tracker de GitHub ou GitLab1 - Focus Tracking des features / demandes

Mode support en dtailObjectif : mettre lnergie chaque instant sur le bon sujet1 situation = 1 ticketChaque ticket a le bon SLAService Level Agreement

Outils possiblesJira Service Desk (Atlassian)ZenDesk1 - Focus Tracking des features / demandes

On ne veut pas entendrea va bien en ce momentOn est dans le rushQuest-ce que cela veut dire ?

Dveloppons et on verra bienOn reoit trop de courriels dans [email protected] ide de notre performance

1 - Focus Tracking des features / demandes

Mais plutt pour le projetOn na russi livrer que 35 points sur les 45 promisTechnique de pointage revoir ?Tches bien dcoupes ?

On a termin le sprint 2 jours en avanceFlicitons-nous!Performance peut-tre sous-estime1 - Focus Tracking des features / demandes

Et pour le supportOn a 30% de tickets supplmentaires cette semaineBesoin de renfortsRgressions dans le dernier dploiement ?

On ferme 80% de nos tickets en respectant le SLAFlicitons-nous!Comment viser le 85% ?1 - Focus Tracking des features / demandes

La finalitBase pour amliorer lefficacit et la performance futureAnticiper & adapter lquipe

Viser lamlioration continueProjet : + dvolutions livresSupport : tickets ferms plus vite (niveau 1)Moins de tickets rentrants (niveau 2)1 - Focus Tracking des features / demandes

EfficacitInfra & outils de travail2.1

RentabiliserNe perdez pas de temps en gestion dinfra

2.1 - Efficacit Infra & outils de travail

Minimiser la maintenanceConsidrezHerokuAmazon Web ServicesGoogle Cloud PlatformPlutt que de grer vos propres serveurs

Attention : vos applications devront tre cloud ready2.1 - Efficacit Infra & outils de travail

Ce quon redouteOn a des backups de la prod ?Il ny a plus despace disque sur le serveurUne faille de scurit doit tre corrige au plus viteNotre serveur sest fait hackIl faut mettre jour JIRA2.1 - Efficacit Infra & outils de travail

Valable aussi pour vos outilsExternaliserSauf contraintes particulires

Courriels & suite bureautiqueG Suite (Google Apps)Office 365 Business (Microsoft)Serveurs FTP (ex. ExaVault)Mass mailing (ex. MailChimp)

Gestion de parc informatique ?

2.1 - Efficacit Infra & outils de travail

La finalitCot financier plus important maisMoins de stressFocusTemps conomis Rinvesti sur le produit

Gain moyen-long terme indniable2.1 - Efficacit Infra & outils de travail

Ne jamais sous-estimer une migration

2.1 - Efficacit Infra & outils de travail

EfficacitQualit projets2.2

DfinirEn quipe, le plus tt, comment amener le code en production

2.2 - Efficacit Qualit projets

CodeLa qualit de lapplication commence ici

Dfinissez vos propres rgles pour lassurerMerge requestsGit HooksPair review2.2 - Efficacit Qualit projets

TestsStratgie mettre en place ds le lancement du projetOn les fera plus tard2.2 - Efficacit Qualit projets

TestsSarrte-t-on au niveau de lAPI ?Point dentre du backend

On inclut les tests de navigation Web ?Selenium, Phantom.jsDe rputation lourds maintenirCela change (ex : Screenster)

Cest votre choix2.2 - Efficacit Qualit projets

Intgration continuepush to prod

Concept de pipelinesHeroku, GitLab, BitBucketOu votre plan customPrend une quipe mature

2.2 - Efficacit Qualit projets

Outils de dploiementssh / ftp

Jenkins, Bamboo, Travis CI, TeamCityPlus derreur humaine possibleTODO auto-documente dans loutil (tasks)Rollback rapide

Migration de version critiqueBackup obligatoiretre capable de rollbackcomme si rien ne stait pass2.2 - Efficacit Qualit projets

Une vraie stagingMme environnement

Donnes de productionNettoyes

Routines dsactives

Comptes de type sandbox APIs externes2.2 - Efficacit Qualit projets

Tirs de performanceTester votre application face une charge inhabituelleApache JMeter ou alternative

Il vaut mieux dcouvrir son point de contention lavanceQue trop tard

Deadlock au djeuner2.2 - Efficacit Qualit projets

La finalitDtecter un problme avant quil ne se rende en production

2.2 - Efficacit Qualit projets

EfficacitMonitoring2.3

Anticipertre au courant le premier dun problme

2.3 - Efficacit Monitoring

DisponibilitAllo ? Mon site est down ?!

Noubliez pas : vous tes une jeune entreprise!Il est primordial de montrer que vous tre en contrleCrdibilitValider votre expertise

Exemples doutilsUptimeRobotPingdom2.3 - Efficacit Monitoring

Erreurs applicativesNe les ignorez pas

Plusieurs techniquesCourriel (1 par erreur)Outil les agrgeant : ex. Raygun, Sentry

Stratgie adapter selon votre ralitVolumtrieTemps rel ou un check quotidien2.3 - Efficacit Monitoring

RoutinesOn na pas le rflexe de les monitorer

Pourtant traitements essentielsImport de donnes (stocks)Export de donnes (commandes)Calcul de points (fidlit)etc.2.3 - Efficacit Monitoring

RoutinesVous devez savoir si une routinene tourne plus lheure prvuedure trop longtempsou ne sarrte plus

OutilsCronitorDead Man's Snitch2.3 - Efficacit Monitoring

PerformanceEst-ce quelle se dgrade au fil du temps ?Si oui quel niveau ?

Temps de rponse, load, % derreurs, etc.

OutilsNewRelicNetuitiv2.3 - Efficacit Monitoring

Comment tout centraliser ?Des outils existentPagerDuty, VictorOpsIntgrations par dizaines

PagerDutyNiveaux dalertesPlages horaires on callBonne application mobile

Une seule place surveillerCommunication centralise en cas dincident2.3 - Efficacit Monitoring

La finalitUne place unique surveiller

Plaisir dtre en contrle

Srnit pour travailler

2.3 - Efficacit Monitoring

EfficacitRles2.4

DistribuerLes responsabilits sont donnes un rle, et non une personne

2.4 - Efficacit Rles

Ces rles se transmettent chaque semaine ou mois, dpend du contexte

ExemplesGestion des erreurs applicativesAlertes en heures non ouvresRception des appelsEtc.

La mission de chaque rle est documente2.4 - Efficacit Rles

La finalitPeu dimpact en cas de cong ou dimprvuLe rle tenu sera attribu un autre

La business va tournerMme lgrement au ralenti2.4 - Efficacit Rles

PerformanceDocumentation3

CapitaliserVous ne devez pas chercher plus dune fois la mme chose

3 - Performance Documentation

Garder une trace 1/2TODO de configurationNouveau client, magasin, feed, etc.Il faut utiliser un setup particulier pour ce profil

DploiementsTODO auto-documente normalement (on la vu)Sinon lcrire quelque part

PannesWorkaround connuIl faut redmarrer les services dans cet ordre3 - Performance Documentation

Accs & mots de [email protected]

Contacts-cls chez les prestataires

Snippets de code intressantsPeut aider un autre projet3 - Performance DocumentationGarder une trace 2/2

Rien dans la tte des gensOu leurs notes personnellesOn veut le partager

Le gars qui sait toutScalabilit : zroAttention : plus on en garde, plus on en prendPlus de stress pour lui et lquipe3 - Performance Documentation

Transmettre le savoirJe le faisJe le documenteJe le diffuse3 - Performance Documentation

Stratgie pour documenterOutil simple et convivialAller plus loin que le wiki de baseNotes de runions, tches, liens vers tickets. etc.

Exemples doutilConfluence (Atlassian), NuclinoVoir Google Drive3 - Performance Documentation

Stratgie pour documenterUn processus dcid en quipeSi pas dadhsion, cela ne sert rien

On se met daccord surQuoi commenterEt o

Rflexe de chercher si un sujet nexiste pas dj3 - Performance Documentation

La finalitScale up efficacementInutile de rajouter du mondeSi chacun cherche dans son coin la mme info

Gagner du tempsFocus et nergie sur le produit comme on la ditPas sur la recherche dun cas dj arrivOn ne tourne pas en rond3 - Performance Documentation

Atteindre le niveau 2Moins de tickets en entreComment ?En crant une base de connaissancesAvec les questions / rponses rcurrentes

Client satisfaitRenforce sa confianceLes agents peuvent consacrer leur temps des cas plus compliqusLa finalit (mode support)3 - Performance Documentation

Partage dexprienceCration dune quipe dOprations au sein de Solutions Mdias 360

Branche OPS de DevOpsRemplit lespace entre les dveloppeurs et les chargs de compte1re ligne de lquipe projetUne des rponses la croissance

MissionsMaintenanceDes projets important / exportant des donnes quotidiennementCommunicationEn interne (maintenance, pannes) ou avec les prestataires externesFiltrerBug, feature ou mauvaise connaissance de loutil ?

ConfigurerPrparer et coordonner larrive dun client ou son dpartGestion noms de domaineEt certificats SSLChallengerLes processus, lever les flags

volutionJai commenc seul avec un dveloppeur en rotationOctobre 2014

Premire recrue printemps 2015

4 employs actuellement

9,928Tickets traits

81%De tickets ferms en respectant le SLA annonc

Cela prend une quipe soude car...

Benjamin Purgason (LinkedIn) : ici

Pour connatre le vrai succs, posez vous ces 4 questions : pourquoi ? pourquoi pas ? pourquoi pas moi ? pourquoi pas maintenant ?(James Allen)

Prenons le tempsDe se poser les bonnes questions dans notre journe de travail :

Pourquoi fait-on comme cela ?Pourquoi ne pas essayer cela ?Pourquoi ne pas essayer cela maintenant ?

Merci!Nhsitez pas partager votre exprience : @lboix #confoo

Des questions?

CrditsMerci galement toutes les personnes qui ont ralis et offert gratuitement les lments utiliss dans cette prsentation :Template par SlidesCarnivalPhotographies par Pixabay