{"id":142,"date":"2016-11-01T16:42:52","date_gmt":"2016-11-01T16:42:52","guid":{"rendered":"http:\/\/zanavu.com\/blog\/?p=142"},"modified":"2016-11-02T00:26:23","modified_gmt":"2016-11-02T00:26:23","slug":"pursuit-of-perfection-in-software","status":"publish","type":"post","link":"https:\/\/zanavu.com\/notes\/2016\/11\/01\/pursuit-of-perfection-in-software\/","title":{"rendered":"Pursuit of Perfection &#8211; Design, Architecture, and Re-architecture in the world of software"},"content":{"rendered":"<p><span style=\"text-decoration: underline;\"><em>Excellence is a Journey. Perection is the destination.<\/em><\/span><\/p>\n<p><a href=\"http:\/\/zanavu.com\/blog\/2016\/11\/01\/pursuit-of-perfection-in-software\/target\/\" rel=\"attachment wp-att-145\"><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-145 alignright\" src=\"http:\/\/zanavu.com\/blog\/wp-content\/uploads\/2016\/11\/Target-300x297.jpg\" alt=\"target_for_perfection\" width=\"300\" height=\"297\" srcset=\"https:\/\/zanavu.com\/notes\/wp-content\/uploads\/2016\/11\/Target-300x297.jpg 300w, https:\/\/zanavu.com\/notes\/wp-content\/uploads\/2016\/11\/Target-150x150.jpg 150w, https:\/\/zanavu.com\/notes\/wp-content\/uploads\/2016\/11\/Target-768x761.jpg 768w, https:\/\/zanavu.com\/notes\/wp-content\/uploads\/2016\/11\/Target-1024x1014.jpg 1024w, https:\/\/zanavu.com\/notes\/wp-content\/uploads\/2016\/11\/Target-1200x1188.jpg 1200w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a>Often we have deep discussions about the\u00a0<em>desire to pursue perfection<\/em>.<\/p>\n<p style=\"text-align: left;\"><em>An engineer walks up and says &#8220;I really do not like these shortcuts, I have this full design and I want to implement it.&#8221;<\/em><\/p>\n<p style=\"text-align: left;\"><em>The leader responds, &#8220;Yes, I understand. How long will it take to implement your solution.&#8221;<\/em><\/p>\n<p style=\"text-align: left;\"><em>Engineer says &#8220;Well! if I am not distracted by other things, I can get it done in two weeks.&#8221;<\/em><\/p>\n<p style=\"text-align: left;\"><em>Okay we had seen that movie play out sometimes, thinks the leader in his own mind. And the leader asks, &#8220;What can you do if you only have a week instead of two?&#8221;<\/em><\/p>\n<p style=\"text-align: left;\"><em>Engineer is not happy with\u00a0the response, but still goes along and says, &#8220;I can get a quarter of it done and will have to pursue the rest later.&#8221;<\/em><\/p>\n<p style=\"text-align: left;\"><em>&#8220;Would you rather do the quarter or none at all?&#8221; comes another question quickly from the leader.<\/em><\/p>\n<p style=\"text-align: left;\"><em>Engineer recognizes the opportunity and jumps in to tell, &#8220;I would rather do the quarter instead of the full solution. At least I can fix the top issues.&#8221;<\/em><\/p>\n<p style=\"text-align: left;\"><em>&#8220;So be it. Go ahead and get the quarter done.&#8221; approves the leader.\u00a0<\/em><\/p>\n<p>Both parties here agreed to find a middle ground to settle on. The leader knows\u00a0from his\/her experience that any\u00a0architecture change will take a long time. And the leader also knows that the engineer is probably telling the right thing he\/she wants to do. Unfortunately the leader often does not have luxury to spare two weeks while also handling other business needs. So they found a middle ground.<\/p>\n<p>I had seen this play out many times in my career.\u00a0I am a big fan of clean architecture.\u00a0At the same time, I also am very pragmatic to ensure we do not over reach to perfection. Recently I am reading &#8220;The Lean Startup&#8221; book; Eric Ries gives several example to suggest finding simpler and easy ways to get work done to validate the benefits early on.<\/p>\n<div>One aspect that I found useful in my career with architecture and rearchitecture work is to\u00a0<em>write goals and measures of success<\/em> down. Having a written record allows us to have thoughtful discussion and careful prioritization. And also keeps all parties honest about achiveable results. Turning the so called wishlist of clean architecture into iterative refinement and reactoring exercise helps!<\/div>\n<div><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Excellence is a Journey. Perection is the destination. Often we have deep discussions about the\u00a0desire to pursue perfection. An engineer walks up and says &#8220;I really do not like these shortcuts, I have this full design and I want to implement it.&#8221; The leader responds, &#8220;Yes, I understand. How long will it take to implement [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[18,12],"tags":[19,5,11],"class_list":["post-142","post","type-post","status-publish","format-standard","hentry","category-startups","category-technology","tag-culture","tag-ideas","tag-techstuff"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Pursuit of Perfection - Design, Architecture, and Re-architecture in the world of software - Bright Possibilities<\/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:\/\/zanavu.com\/notes\/2016\/11\/01\/pursuit-of-perfection-in-software\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Pursuit of Perfection - Design, Architecture, and Re-architecture in the world of software - Bright Possibilities\" \/>\n<meta property=\"og:description\" content=\"Excellence is a Journey. Perection is the destination. Often we have deep discussions about the\u00a0desire to pursue perfection. An engineer walks up and says &#8220;I really do not like these shortcuts, I have this full design and I want to implement it.&#8221; The leader responds, &#8220;Yes, I understand. How long will it take to implement [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/zanavu.com\/notes\/2016\/11\/01\/pursuit-of-perfection-in-software\/\" \/>\n<meta property=\"og:site_name\" content=\"Bright Possibilities\" \/>\n<meta property=\"article:published_time\" content=\"2016-11-01T16:42:52+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2016-11-02T00:26:23+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/zanavu.com\/blog\/wp-content\/uploads\/2016\/11\/Target-300x297.jpg\" \/>\n<meta name=\"author\" content=\"Murali\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Murali\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/zanavu.com\/notes\/2016\/11\/01\/pursuit-of-perfection-in-software\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/zanavu.com\/notes\/2016\/11\/01\/pursuit-of-perfection-in-software\/\"},\"author\":{\"name\":\"Murali\",\"@id\":\"https:\/\/zanavu.com\/notes\/#\/schema\/person\/4bea3834a6b3e94e965b8b15d3a0a022\"},\"headline\":\"Pursuit of Perfection &#8211; Design, Architecture, and Re-architecture in the world of software\",\"datePublished\":\"2016-11-01T16:42:52+00:00\",\"dateModified\":\"2016-11-02T00:26:23+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/zanavu.com\/notes\/2016\/11\/01\/pursuit-of-perfection-in-software\/\"},\"wordCount\":408,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/zanavu.com\/notes\/#organization\"},\"image\":{\"@id\":\"https:\/\/zanavu.com\/notes\/2016\/11\/01\/pursuit-of-perfection-in-software\/#primaryimage\"},\"thumbnailUrl\":\"http:\/\/zanavu.com\/blog\/wp-content\/uploads\/2016\/11\/Target-300x297.jpg\",\"keywords\":[\"Culture\",\"Ideas\",\"TechStuff\"],\"articleSection\":[\"Startups\",\"Technology\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/zanavu.com\/notes\/2016\/11\/01\/pursuit-of-perfection-in-software\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/zanavu.com\/notes\/2016\/11\/01\/pursuit-of-perfection-in-software\/\",\"url\":\"https:\/\/zanavu.com\/notes\/2016\/11\/01\/pursuit-of-perfection-in-software\/\",\"name\":\"Pursuit of Perfection - Design, Architecture, and Re-architecture in the world of software - Bright Possibilities\",\"isPartOf\":{\"@id\":\"https:\/\/zanavu.com\/notes\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/zanavu.com\/notes\/2016\/11\/01\/pursuit-of-perfection-in-software\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/zanavu.com\/notes\/2016\/11\/01\/pursuit-of-perfection-in-software\/#primaryimage\"},\"thumbnailUrl\":\"http:\/\/zanavu.com\/blog\/wp-content\/uploads\/2016\/11\/Target-300x297.jpg\",\"datePublished\":\"2016-11-01T16:42:52+00:00\",\"dateModified\":\"2016-11-02T00:26:23+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/zanavu.com\/notes\/2016\/11\/01\/pursuit-of-perfection-in-software\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/zanavu.com\/notes\/2016\/11\/01\/pursuit-of-perfection-in-software\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/zanavu.com\/notes\/2016\/11\/01\/pursuit-of-perfection-in-software\/#primaryimage\",\"url\":\"http:\/\/zanavu.com\/blog\/wp-content\/uploads\/2016\/11\/Target-300x297.jpg\",\"contentUrl\":\"http:\/\/zanavu.com\/blog\/wp-content\/uploads\/2016\/11\/Target-300x297.jpg\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/zanavu.com\/notes\/2016\/11\/01\/pursuit-of-perfection-in-software\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/zanavu.com\/notes\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Pursuit of Perfection &#8211; Design, Architecture, and Re-architecture in the world of software\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/zanavu.com\/notes\/#website\",\"url\":\"https:\/\/zanavu.com\/notes\/\",\"name\":\"Bright Possibilities\",\"description\":\"Welcome to the World of Possibilities\",\"publisher\":{\"@id\":\"https:\/\/zanavu.com\/notes\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/zanavu.com\/notes\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/zanavu.com\/notes\/#organization\",\"name\":\"Bright Possibilities\",\"url\":\"https:\/\/zanavu.com\/notes\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/zanavu.com\/notes\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/zanavu.com\/notes\/wp-content\/uploads\/2016\/02\/aupic1.bmp\",\"contentUrl\":\"https:\/\/zanavu.com\/notes\/wp-content\/uploads\/2016\/02\/aupic1.bmp\",\"width\":261,\"height\":243,\"caption\":\"Bright Possibilities\"},\"image\":{\"@id\":\"https:\/\/zanavu.com\/notes\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/zanavu.com\/notes\/#\/schema\/person\/4bea3834a6b3e94e965b8b15d3a0a022\",\"name\":\"Murali\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/zanavu.com\/notes\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/e1bd605071dc5d22ac2ad578e820c974?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/e1bd605071dc5d22ac2ad578e820c974?s=96&d=mm&r=g\",\"caption\":\"Murali\"},\"sameAs\":[\"https:\/\/www.hemocoel.com\"],\"url\":\"https:\/\/zanavu.com\/notes\/author\/murali\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Pursuit of Perfection - Design, Architecture, and Re-architecture in the world of software - Bright Possibilities","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/zanavu.com\/notes\/2016\/11\/01\/pursuit-of-perfection-in-software\/","og_locale":"en_US","og_type":"article","og_title":"Pursuit of Perfection - Design, Architecture, and Re-architecture in the world of software - Bright Possibilities","og_description":"Excellence is a Journey. Perection is the destination. Often we have deep discussions about the\u00a0desire to pursue perfection. An engineer walks up and says &#8220;I really do not like these shortcuts, I have this full design and I want to implement it.&#8221; The leader responds, &#8220;Yes, I understand. How long will it take to implement [&hellip;]","og_url":"https:\/\/zanavu.com\/notes\/2016\/11\/01\/pursuit-of-perfection-in-software\/","og_site_name":"Bright Possibilities","article_published_time":"2016-11-01T16:42:52+00:00","article_modified_time":"2016-11-02T00:26:23+00:00","og_image":[{"url":"http:\/\/zanavu.com\/blog\/wp-content\/uploads\/2016\/11\/Target-300x297.jpg","type":"","width":"","height":""}],"author":"Murali","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Murali","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/zanavu.com\/notes\/2016\/11\/01\/pursuit-of-perfection-in-software\/#article","isPartOf":{"@id":"https:\/\/zanavu.com\/notes\/2016\/11\/01\/pursuit-of-perfection-in-software\/"},"author":{"name":"Murali","@id":"https:\/\/zanavu.com\/notes\/#\/schema\/person\/4bea3834a6b3e94e965b8b15d3a0a022"},"headline":"Pursuit of Perfection &#8211; Design, Architecture, and Re-architecture in the world of software","datePublished":"2016-11-01T16:42:52+00:00","dateModified":"2016-11-02T00:26:23+00:00","mainEntityOfPage":{"@id":"https:\/\/zanavu.com\/notes\/2016\/11\/01\/pursuit-of-perfection-in-software\/"},"wordCount":408,"commentCount":0,"publisher":{"@id":"https:\/\/zanavu.com\/notes\/#organization"},"image":{"@id":"https:\/\/zanavu.com\/notes\/2016\/11\/01\/pursuit-of-perfection-in-software\/#primaryimage"},"thumbnailUrl":"http:\/\/zanavu.com\/blog\/wp-content\/uploads\/2016\/11\/Target-300x297.jpg","keywords":["Culture","Ideas","TechStuff"],"articleSection":["Startups","Technology"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/zanavu.com\/notes\/2016\/11\/01\/pursuit-of-perfection-in-software\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/zanavu.com\/notes\/2016\/11\/01\/pursuit-of-perfection-in-software\/","url":"https:\/\/zanavu.com\/notes\/2016\/11\/01\/pursuit-of-perfection-in-software\/","name":"Pursuit of Perfection - Design, Architecture, and Re-architecture in the world of software - Bright Possibilities","isPartOf":{"@id":"https:\/\/zanavu.com\/notes\/#website"},"primaryImageOfPage":{"@id":"https:\/\/zanavu.com\/notes\/2016\/11\/01\/pursuit-of-perfection-in-software\/#primaryimage"},"image":{"@id":"https:\/\/zanavu.com\/notes\/2016\/11\/01\/pursuit-of-perfection-in-software\/#primaryimage"},"thumbnailUrl":"http:\/\/zanavu.com\/blog\/wp-content\/uploads\/2016\/11\/Target-300x297.jpg","datePublished":"2016-11-01T16:42:52+00:00","dateModified":"2016-11-02T00:26:23+00:00","breadcrumb":{"@id":"https:\/\/zanavu.com\/notes\/2016\/11\/01\/pursuit-of-perfection-in-software\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/zanavu.com\/notes\/2016\/11\/01\/pursuit-of-perfection-in-software\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/zanavu.com\/notes\/2016\/11\/01\/pursuit-of-perfection-in-software\/#primaryimage","url":"http:\/\/zanavu.com\/blog\/wp-content\/uploads\/2016\/11\/Target-300x297.jpg","contentUrl":"http:\/\/zanavu.com\/blog\/wp-content\/uploads\/2016\/11\/Target-300x297.jpg"},{"@type":"BreadcrumbList","@id":"https:\/\/zanavu.com\/notes\/2016\/11\/01\/pursuit-of-perfection-in-software\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/zanavu.com\/notes\/"},{"@type":"ListItem","position":2,"name":"Pursuit of Perfection &#8211; Design, Architecture, and Re-architecture in the world of software"}]},{"@type":"WebSite","@id":"https:\/\/zanavu.com\/notes\/#website","url":"https:\/\/zanavu.com\/notes\/","name":"Bright Possibilities","description":"Welcome to the World of Possibilities","publisher":{"@id":"https:\/\/zanavu.com\/notes\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/zanavu.com\/notes\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/zanavu.com\/notes\/#organization","name":"Bright Possibilities","url":"https:\/\/zanavu.com\/notes\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/zanavu.com\/notes\/#\/schema\/logo\/image\/","url":"https:\/\/zanavu.com\/notes\/wp-content\/uploads\/2016\/02\/aupic1.bmp","contentUrl":"https:\/\/zanavu.com\/notes\/wp-content\/uploads\/2016\/02\/aupic1.bmp","width":261,"height":243,"caption":"Bright Possibilities"},"image":{"@id":"https:\/\/zanavu.com\/notes\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/zanavu.com\/notes\/#\/schema\/person\/4bea3834a6b3e94e965b8b15d3a0a022","name":"Murali","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/zanavu.com\/notes\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/e1bd605071dc5d22ac2ad578e820c974?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/e1bd605071dc5d22ac2ad578e820c974?s=96&d=mm&r=g","caption":"Murali"},"sameAs":["https:\/\/www.hemocoel.com"],"url":"https:\/\/zanavu.com\/notes\/author\/murali\/"}]}},"_links":{"self":[{"href":"https:\/\/zanavu.com\/notes\/wp-json\/wp\/v2\/posts\/142","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/zanavu.com\/notes\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/zanavu.com\/notes\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/zanavu.com\/notes\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/zanavu.com\/notes\/wp-json\/wp\/v2\/comments?post=142"}],"version-history":[{"count":2,"href":"https:\/\/zanavu.com\/notes\/wp-json\/wp\/v2\/posts\/142\/revisions"}],"predecessor-version":[{"id":146,"href":"https:\/\/zanavu.com\/notes\/wp-json\/wp\/v2\/posts\/142\/revisions\/146"}],"wp:attachment":[{"href":"https:\/\/zanavu.com\/notes\/wp-json\/wp\/v2\/media?parent=142"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/zanavu.com\/notes\/wp-json\/wp\/v2\/categories?post=142"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/zanavu.com\/notes\/wp-json\/wp\/v2\/tags?post=142"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}