## Des fossés et des trolls une présentation sur le pouce par *Pierre Baillet* Février 2015-Février 2017 relue par Alexis, Aymerick, Jérôme, François Note: adresse mail pierre@baillet.name == ## qui suis-je ? - Pierre Baillet, pierre@baillet.name (@octplane) - Administre des Linux et développe depuis 1997 - Directeur du développement puis de l’exploitation chez IDM pendant 8 ans - Dev/Ops chez fotopedia pendant 4 ans et demi - Consultant Senior et Manager Technique chez Ippon Technologies == ## Au menu *en vous souhaitant un bel appétit* - les développeurs - les opérationnels - le fossé - le courant DevOps - concrètement ? === ## ⚠ Disclaimer ⚠ - Présentation trollifère, - Généralisations hâtives, - Mauvaises blagues… A prendre avec le sourire === ## Les développeurs >aussi appelés dev’, gourous, intégrateurs, prestas… - Qui sont-ils ? - Métiers : ce qu’ils font - Facilités : ce qu’ils aiment faire - Contraintes : ce qu’on exige d’eux - Exigences : ce qu’ils veulent == ## Qui sont-ils - jeunes diplômés, de plus en plus de grandes écoles - peu de « sans-diplômes » - junior de 22 à 28, puis senior, puis millionnaires - grosse demande et grosse pression de recrutement > **« cool » **, **« malin »**, **« performant »** == ## Métiers _Ce qu’ils font tous les jours_ - convaincre l’ordinateur d’être obéissant - comprendre des specs mal/non décrites - brancher des méthodes dans des méthodes jusqu’à ce que cela compile - râler à propos des clients/des features requests/des Ops/des commerciaux… == ## Facilités _Ce qu’ils aiment et savent faire_ - concentration - abstraction - machine-à-gaz-isation - horaires décalés == ## Contraintes _Ce qu’on exige d’eux_ - productivité en terme de ligne de code - adaptabilité aux gens qui râlent - sociabilité technique - leadership ou follow-ship == ## Exigences _Ce qu’ils exigent de leur travail_ - horaires souples - pas de responsabilités de la production - utilisation de nouvelles technologies - excitation du développement, innovation == ## Le Troll _Ce que l'ont dit d’eux_ - incompétents - négligents - irrespectueux - imprécis === ## Les Op(érationnel)s > aussi appelés Admins, roots, BOFHs, DBA,… == ## Qui sont-ils - habituellement des techniciens supérieurs ou des ingénieurs - parfois autodidactes - jeune root, vieux root, puis vieux con - souvent mal considérés et facilement mis à part > **« solitaire »**, **« stressé »**  == ## Métiers - surveiller, diriger, contraindre, réparer - installer des serveurs, configurer du réseau - déployer du code fait par d’autres - réparer les incidents à 4h du mat’ - râler contre les développeurs et le fabricant des serveurs == ## Facilités _Ce qu’ils aiment et savent faire_ - compréhension de la Production - méticuleux, rigoureux et procédurier... - mais aussi bidouilleur et malin - travaille à toute heure == ## Contraintes _Ce qu’on exige d’eux_ - présence permanente - responsabilités de disponibilité - optimisation des coûts - versatilité technique == ## Exigences _Ce qu’ils exigent de leur travail_ - respect de leur profession - documentations et méthodes parfaites - prévision et planification - évolutions lentes et contrôlées == ## Le Troll _Ce que l'ont dit d’eux_ - fascistes - ultraconservateurs - asociaux - ignorants - barbus === ## L'origine du schisme > l’herbe est moins verte chez le voisin == Dans les années 90-2000, essor du développement : - on est passé des analystes programmeurs en COBOL, FORTRAN, SQL, AS400... - ... à la séparation Administrateur / Programmeur. == ## Époque favorable à cette séparation - évolution des marchés - séparation forte entre Ops et Devs au milieu des années 90 - filière de formation distincte, compétences différentiantes - émergence de l'infogérance et des societés de service - Ops qui sont les héritiers des développeurs des années 80 - Dev, nouvelle race de développeur, utilisant des outils modernes. === ## Le courant DevOps > et au milieu coule une rivière… == ### Concept vague et fumeux Mais néanmoins issu de réels changements dans l’informatique: - la technicisation des méthodes de production - la simplification de l’hébergement - le raccourcissement des cycles de mise en production == ### Technicisation des méthodes de production - Intégration / Livraison continue - Arrivée de nouvelles technologies plus délicates à déployer : Rails, Node.js, … > Obligation pour les **Ops** de se former à des technos de dev' et de devenir plus agiles. == ### Simplification de l’hébergement - Émergence du Cloud comme modèle disrupteur d’hébergement - Virtualisation et Containerisation maintenant mainstream - Tarifs plus bas que jamais > Encouragement pour les **dev’** à prendre en main à tester ces technologies. > Les **DSI** se demandent comment vont évoluer leur services informatiques == ### Raccourcissement des cycles de MEP - Émergence des méthodes Agiles - Technologie naturellement plus agiles > Obligation pour tous de raccourcir le TTM (_exigence business_) > rapprochement structurel nécessaire entre **Dev** et **Ops**. === ## Le courant DevOps > What's inside DevOps ? - valeurs - pratiques - outils == ### Les Valeurs - l'agilité - build it, run it - 2 pizzas team - fail fast, succeed faster - désacralisation de la production == ### Les pratiques - IaC - Cattle, no pet - CI, CD - 0-downtime deployments - partage des indicateurs - A/B testing == ### Les Outils - gestion des codes sources - serveurs d'Intégration/Livraison Continue - stockage d'artefacts - gestion de configuration et Provisioning - surveillance - log et métriques - évolutions et problèmes === ## Questions ? > et Merci !