{"id":1089,"date":"2018-06-12T14:58:03","date_gmt":"2018-06-12T12:58:03","guid":{"rendered":"https:\/\/voxxeddays.com\/microservices2019\/?p=1089"},"modified":"2018-06-12T16:21:45","modified_gmt":"2018-06-12T14:21:45","slug":"cyrille-martraire-on-hexagonal-architecture-with-ddd","status":"publish","type":"post","link":"https:\/\/voxxeddays.com\/microservices\/2018\/06\/12\/cyrille-martraire-on-hexagonal-architecture-with-ddd\/","title":{"rendered":"Cyrille Martraire on hexagonal architecture with DDD"},"content":{"rendered":"<h3>Hi Cyrille, tell us who you are and what lead you into microservices?<\/h3>\n<p>Hi, I\u2019m an happy developer! I\u2019m lucky to have great colleagues at Arolla and around who care about how to do things well in software. Which means I\u2019m enthusiastic about design in every aspect, from OO to FP, from TDD, which is about design indeed, to architecture, plus Domain-Driven Design of course!<\/p>\n<p>I\u2019ve fallen into microservices because of my expertise in DDD: customers naturally asked me to help in their microservices initiatives, especially on how to split legacy monoliths or large legacy systems into microservices.<\/p>\n<h3>What will you be talking about at Voxxed Days Microservices?<\/h3>\n<p>I\u2019ll be talking about DDD for microservices, surprisingly, because Microservices need DDD absolutely! So I\u2019ll talk about Bounded Contexts and what this means in practice in your code, because it\u2019s sometime disturbing for some developers. And I\u2019ll also mention a recent discovery we\u2019ve made with my colleague Arnauld Loyer, that the good old Hexagonal Architecture that we know as a way to implement the inside of an application also stretches to a galaxy of microservices. But I don\u2019t want to spoil it!<\/p>\n<h3>When talking about DDD everybody assumes that it is the only way to model microservices ? Is there other techniques you would recommend to be able to bind a service to its business context ?<\/h3>\n<p>It\u2019s true that the DDD mindset is central to define the boundaries of most microservices. But even as a DDD fanboy I have to make it clear that some services have to follow a different kind of logic than a business domain logic. For example purely technical services, legacy services, and most front-end services. It takes some serious thinking, or many experiments that will fail, to get a system of microservices right!<\/p>\n<h3>Good, see you soon then<\/h3>\n<p>Yes, I\u2019m happy that Voxxed also embraces microservices, and in our beautiful city of Paris!<\/p>\n<p><strong>#DDD #Hexagonal #BoundedContext<\/strong><\/p>\n<p>Twitter: <a href=\"https:\/\/twitter.com\/cyriux\">https:\/\/twitter.com\/cyriux<\/a><br \/>\nBlog: <a href=\"http:\/\/blog.arolla.fr\">http:\/\/blog.arolla.fr<\/a><br \/>\nLinkedIn: <a href=\"https:\/\/www.linkedin.com\/in\/cyrille-martraire-1208426\">https:\/\/www.linkedin.com\/in\/cyrille-martraire-1208426<\/a><br \/>\nGitHub: <a href=\"https:\/\/github.com\/cyriux\">https:\/\/github.com\/cyriux<\/a><\/p>\n<h3><a href=\"https:\/\/vxdms2018.confinabox.com\/talks\/conf\">Check the other conferences<\/a><\/h3>\n","protected":false},"excerpt":{"rendered":"<p>Hi Cyrille, tell us who you are and what lead you into microservices? Hi, I\u2019m an happy developer! I\u2019m lucky to have great colleagues at Arolla and around who care about how to do things well in software. Which means I\u2019m enthusiastic about design in every aspect, from OO to FP, from TDD, which is [&hellip;]<\/p>\n","protected":false},"author":1301,"featured_media":1088,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[12],"tags":[28,26,27],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v15.3 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Cyrille Martraire on hexagonal architecture with DDD : Voxxed Days Microservices 2019<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/voxxeddays.com\/microservices\/2018\/06\/12\/cyrille-martraire-on-hexagonal-architecture-with-ddd\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Cyrille Martraire on hexagonal architecture with DDD : Voxxed Days Microservices 2019\" \/>\n<meta property=\"og:description\" content=\"Hi Cyrille, tell us who you are and what lead you into microservices? Hi, I\u2019m an happy developer! I\u2019m lucky to have great colleagues at Arolla and around who care about how to do things well in software. Which means I\u2019m enthusiastic about design in every aspect, from OO to FP, from TDD, which is [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/voxxeddays.com\/microservices\/2018\/06\/12\/cyrille-martraire-on-hexagonal-architecture-with-ddd\/\" \/>\n<meta property=\"og:site_name\" content=\"Voxxed Days Microservices 2019\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/vxdmicroservice\/\" \/>\n<meta property=\"article:published_time\" content=\"2018-06-12T12:58:03+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2018-06-12T14:21:45+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/voxxeddays.com\/microservices\/wp-content\/uploads\/sites\/54\/2018\/06\/CyrilleMartraireBanner.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t<meta property=\"og:image:height\" content=\"513\" \/>\n<meta property=\"fb:app_id\" content=\"vxdmicroservice\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@agoncal\" \/>\n<meta name=\"twitter:site\" content=\"@vxdmicroservice\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\">\n\t<meta name=\"twitter:data1\" content=\"Antonio Goncalves\">\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\">\n\t<meta name=\"twitter:data2\" content=\"1 minute\">\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https:\/\/voxxeddays.com\/microservices\/#organization\",\"name\":\"Voxxed Days Microservices\",\"url\":\"https:\/\/voxxeddays.com\/microservices\/\",\"sameAs\":[\"https:\/\/www.facebook.com\/vxdmicroservice\/\",\"https:\/\/www.instagram.com\/voxxeddaysmicroservices\",\"https:\/\/www.linkedin.com\/in\/voxxed-days-microservices-906115164\/\",\"https:\/\/www.youtube.com\/playlist?list=PLRsbF2sD7JVrhlYIKTI--IU6xcfUjdNt2\",\"https:\/\/twitter.com\/vxdmicroservice\"],\"logo\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/voxxeddays.com\/microservices\/#logo\",\"inLanguage\":\"en-US\",\"url\":\"https:\/\/voxxeddays.com\/microservices\/wp-content\/uploads\/sites\/54\/2019\/06\/large-Voxxed_Days_Microservices_date_2019-01-2.png\",\"width\":1000,\"height\":387,\"caption\":\"Voxxed Days Microservices\"},\"image\":{\"@id\":\"https:\/\/voxxeddays.com\/microservices\/#logo\"}},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/voxxeddays.com\/microservices\/#website\",\"url\":\"https:\/\/voxxeddays.com\/microservices\/\",\"name\":\"Voxxed Days Microservices 2019, Conference & workshops\",\"description\":\"A Developer Conference on Microservices\",\"publisher\":{\"@id\":\"https:\/\/voxxeddays.com\/microservices\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":\"https:\/\/voxxeddays.com\/microservices\/?s={search_term_string}\",\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/voxxeddays.com\/microservices\/2018\/06\/12\/cyrille-martraire-on-hexagonal-architecture-with-ddd\/#primaryimage\",\"inLanguage\":\"en-US\",\"url\":\"https:\/\/voxxeddays.com\/microservices\/wp-content\/uploads\/sites\/54\/2018\/06\/CyrilleMartraireBanner.png\",\"width\":1024,\"height\":513,\"caption\":\"Cyrille Martraire\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/voxxeddays.com\/microservices\/2018\/06\/12\/cyrille-martraire-on-hexagonal-architecture-with-ddd\/#webpage\",\"url\":\"https:\/\/voxxeddays.com\/microservices\/2018\/06\/12\/cyrille-martraire-on-hexagonal-architecture-with-ddd\/\",\"name\":\"Cyrille Martraire on hexagonal architecture with DDD : Voxxed Days Microservices 2019\",\"isPartOf\":{\"@id\":\"https:\/\/voxxeddays.com\/microservices\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/voxxeddays.com\/microservices\/2018\/06\/12\/cyrille-martraire-on-hexagonal-architecture-with-ddd\/#primaryimage\"},\"datePublished\":\"2018-06-12T12:58:03+00:00\",\"dateModified\":\"2018-06-12T14:21:45+00:00\",\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/voxxeddays.com\/microservices\/2018\/06\/12\/cyrille-martraire-on-hexagonal-architecture-with-ddd\/\"]}]},{\"@type\":\"Article\",\"@id\":\"https:\/\/voxxeddays.com\/microservices\/2018\/06\/12\/cyrille-martraire-on-hexagonal-architecture-with-ddd\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/voxxeddays.com\/microservices\/2018\/06\/12\/cyrille-martraire-on-hexagonal-architecture-with-ddd\/#webpage\"},\"author\":{\"@id\":\"https:\/\/voxxeddays.com\/microservices\/#\/schema\/person\/871a4bfea3b1bf117a77bc3fbfeb5f14\"},\"headline\":\"Cyrille Martraire on hexagonal architecture with DDD\",\"datePublished\":\"2018-06-12T12:58:03+00:00\",\"dateModified\":\"2018-06-12T14:21:45+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/voxxeddays.com\/microservices\/2018\/06\/12\/cyrille-martraire-on-hexagonal-architecture-with-ddd\/#webpage\"},\"publisher\":{\"@id\":\"https:\/\/voxxeddays.com\/microservices\/#organization\"},\"image\":{\"@id\":\"https:\/\/voxxeddays.com\/microservices\/2018\/06\/12\/cyrille-martraire-on-hexagonal-architecture-with-ddd\/#primaryimage\"},\"keywords\":\"BoundedContext,DDD,Hexagonal\",\"articleSection\":\"all\",\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/voxxeddays.com\/microservices\/#\/schema\/person\/871a4bfea3b1bf117a77bc3fbfeb5f14\",\"name\":\"Antonio Goncalves\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/voxxeddays.com\/microservices\/#personlogo\",\"inLanguage\":\"en-US\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/1fc6aa04011b2f0f9721df913b0fd415?s=96&d=mm&r=g\",\"caption\":\"Antonio Goncalves\"},\"description\":\"I am a senior software architect living in Paris. I work as a consultant in helping customers to set up their software architecture. My specialities are Java \/ Java EE and Open Source frameworks that evolve around it. As a former BEA consultant I have a great expertise in application servers (Weblogic, JBoss and GlassFish). So I decided to write a few books about it, create the Paris JUG and Devoxx France.\",\"sameAs\":[\"https:\/\/plus.google.com\/101641663893160877351\",\"https:\/\/twitter.com\/agoncal\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","_links":{"self":[{"href":"https:\/\/voxxeddays.com\/microservices\/wp-json\/wp\/v2\/posts\/1089"}],"collection":[{"href":"https:\/\/voxxeddays.com\/microservices\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/voxxeddays.com\/microservices\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/voxxeddays.com\/microservices\/wp-json\/wp\/v2\/users\/1301"}],"replies":[{"embeddable":true,"href":"https:\/\/voxxeddays.com\/microservices\/wp-json\/wp\/v2\/comments?post=1089"}],"version-history":[{"count":0,"href":"https:\/\/voxxeddays.com\/microservices\/wp-json\/wp\/v2\/posts\/1089\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/voxxeddays.com\/microservices\/wp-json\/wp\/v2\/media\/1088"}],"wp:attachment":[{"href":"https:\/\/voxxeddays.com\/microservices\/wp-json\/wp\/v2\/media?parent=1089"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/voxxeddays.com\/microservices\/wp-json\/wp\/v2\/categories?post=1089"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/voxxeddays.com\/microservices\/wp-json\/wp\/v2\/tags?post=1089"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}