Au travers de ma carrière j’ai eu la chance d’être impliqué dans plusieurs startups et/ou petites entreprises essayant de créer un produit ou service numérique. Cependant une question se pose très rapidement :
Comment avoir des outils de travail efficaces en minimisant l’impact financier ?
Et par impact financier j’entends aussi le temps passé à les mettre en place, car c’est du temps qu’on ne passe pas sur son cœur de métier ou plus généralement à créer de la valeur.
Quels outils ?
De quels outils a-t-on besoin en startup ? C’est assez simple, les mêmes que dans les grandes entreprises :
une suite de bureautique
un système de courriels
de la téléphonie voir si possible de la messagerie instantanée et unifiée
un espace de collaboration
un contrôle de code source
une industrie logicielle (organisation, tests, déploiements,…)
Le gros problème étant qu’on ne peut pas vraiment utiliser des services publics (essayer de trouver des clients en envoyant des courriels depuis gmail ou hotmail, c’est pas gagné) et que mettre en place et maintenir tous ces systèmes représente un coût énorme pour une startup.
Quelle est la solution que je propose ?
Un trio qui répondra à la majorité de vos besoins sans vous ruiner ni perdre des heures en mise en place : Office 365 + Azure + Visual Studio online.
Avec Office 365 vous avez :
La suite Microsoft Office
SharePoint online, tout ce qu’il vous faut pour collaborer en interne et en externe atour de vos documents
Exchange online, une vraie messagerie d’entreprise
Lync online, messagerie instantanée, téléconférences, et même de la téléphonie complétement intégrés (pour la téléphonie il faudra rajouter quelques étapes de configuration)
…
https://office.microsoft.com/fr-fr/business/
Avec Visual studio online vous avez :
Visual Studio : environnement de développement plus que complet
Contrôle de code source
Planification du travail (agile, CMMI, …)
Industrie de tests
…
https://www.visualstudio.com/explore/application-development-vs
Avec Azure vous avez :
Enormément de briques applicatives, d’infrastructure etc.
Une intégration avec office 365
Une intégration avec Visual Studio Online
…
https://azure.microsoft.com/fr-fr/documentation/
Scenario : Ma startup Idéale
Planification
On est lundi matin, le CEO et le responsable marketing (on aime tous se donner des titres importants dans une startup) rentrent dans la réunion de sprint planning. Ils ont vendu une nouvelle fonctionnalité à un client important. Ils ont déjà passé le dimanche après-midi à saisir les histoires utilisateurs (les grandes lignes des fonctionnalités) et à les prioriser dans TFS (visual studio online).
En tant que CTO et avec mon équipe de développeurs je découpe tout ça en tâches en me servant des démonstrations faites au client qui se trouvent sur SharePoint online pour avoir plus de détails. Nous sommes prêts à coder. Ah j’allais oublier, en tant que startup, nous ne sommes pas souvent au bureau, toute la réunion s’est déroulée sur Lync online en visio-conférence.
Travail
Pendant la semaine nous développons dans visual studio, un des développeurs est dédié aux tests unitaires et automatisés. Pendant que je code une fonctionnalité, il va coder les tests qui permettent de vérifier qu’elle fonctionne bien. Cela va surtout nous assurer qu’un bug ne sera pas introduit pas la suite sans qu’on s’en aperçoive.
Evidement à chaque fois qu’on archive quelque chose, on le lie à la tâche sur laquelle on travaille et on met à jour son état. Notre CEO pressé d’avoir sa fonctionnalité opérationnelle peut suivre l’avancement sans avoir à nous déranger quand on code pour nous demander.
Tests
Toutes les nuits j’ai un plan de tests qui tourne, il compile le travail de la journée, le déploie dans une machine dans azure, exécute les tests et m’enregistre les résultats. En plus j’ai une vm de qualification sur laquelle est déployée la dernière version stable toutes les semaines. Le CEO peut faire des démonstrations et des tests manuels sans que j’aie à maintenir cette machine à jour.
Un bug malgré tout ça ? Pas de problème, on le rajoute et on le documente dans TFS, je l’attribue à un de mes développeurs, on le corrige et on livre.
Livraison
Bien évidemment l’infrastructure de production est sur azure aussi. S’il s’agit d’un simple site/service web, j’utilise la fonctionnalité de bascule à chaud. Ça intervertit le site de qualification avec la production. Dans tous les cas je fais en sorte d’automatiser au maximum le déploiement, si besoin au moyen de scripts. Ça permet d’éviter les erreurs et ça fait gagner du temps.
Bilan
A la fin du sprint la fonctionnalité est livrée et notre startup aura pu se concentrer sur ce qui lui importe: développer son marché et son cœur de métier. Bien entendu ce n’est qu’un cas de figure parmi d’autres et j’aurai aussi pendant la semaine envoyé quelques courriels et pris quelques contacts/rendez-vous grâce à exchange online. Mais le tout en minimisant le bruit qui me rend ainsi que mes collègues inefficaces au travail.
Je veux ça pour ma startup !
Le domaine
Ok ok, rien de plus facile. Il va falloir dans un premier temps acheter un nom de domaine. Je recommande un des grands fournisseurs comme gandi ou godaddy car office 365 pourra les configurer automatiquement pour vous. (à noter que vous n’avez pas obligatoirement besoin du domaine mais je vous le recommande pour forger votre identité)
Office 365
Seconde étape commandez un plan office 365 https://office.microsoft.com/fr-fr/business/comparer-toutes-les-offres-office-365-pour-les-professionnels-FX104051403.aspx
Si vous ne savez pas lequel prendre, le deuxième en partant de la gauche pour une startup sera plus que suffisant, il intègre la licence office pour PC. Durant la configuration, on vous demandera si vous avez un domaine. Si vous passez par un grand fournisseur, il suffit de donner vos identifiants et la configuration se fera pour vous. Sinon les étapes de configurations vous seront indiquées.
En 5 minutes vous avez déjà l’infrastructure et les outils de bureautique digne d’une multinationale pour un prix réduit.
On va passer directement à l’étape suivante, vous pourrez créer les comptes des autres membres de l’entreprise plus tard.
Azure
Maintenant connectez-vous sur manage.windowsazure.com avec votre compte office 365 et cliquez sur « inscrivez-vous à azure ». Quelques renseignements plus loin et vous voilà prêts à utiliser Azure pour bâtir de superbes applications.
Visual Studio online
Ce qui nous intéresse se trouve en bas à gauche.
Cliquez sur new
Donnez un nom à votre instance visual studio online et prenez bien soin de sélectionner votre répertoire (celui qui est en fait lié à office 365).
Si vous avez déjà une souscription Azure, cette vidéo explique comment utiliser votre domaine office 365 sur cette souscription https://www.youtube.com/watch?v=pN0us3Zp-TQ
Conclusion
Voilà vous avez maintenant une infrastructure qui vous permet de faire tout ce que j’ai mentionné plus haut en 10 minutes de configuration et avec des coûts minimes. Les employés de l’entreprise utilisent un seul et unique compte pour tous leurs outils.
N’hésitez pas à explorer les possibilités qu’offrent les services en ligne (Azure + office 365 +…) de Microsoft (ou d’autres). Ce sont des éléments à prendre en compte dans la stratégie de votre entreprise qui sont en train de changer les règles du monde de l’entreprise.
J’ai pris comme exemple une startup mais sachez que mon entreprise actuelle www.negotium.com (150 personnes) est à 100% sur office 365 pour la collaboration, les communications unifiées et la messagerie. Nous utilisons déjà Azure pour une majeure partie de nos infrastructures. Et nous (j’en ai la responsabilité) sommes en train de migrer notre industrie logicielle vers visual studio online.