{"id":28979,"date":"2019-05-23T12:56:23","date_gmt":"2019-05-23T17:56:23","guid":{"rendered":"http:\/\/www.charanis.com\/blog\/?p=28979"},"modified":"2019-07-08T10:01:19","modified_gmt":"2019-07-08T15:01:19","slug":"microservices-and-other-shifts-in-techspeak","status":"publish","type":"post","link":"https:\/\/www.charanis.com\/blog\/2019\/05\/23\/microservices-and-other-shifts-in-techspeak\/","title":{"rendered":"Microservices and other shifts in techspeak"},"content":{"rendered":"\n<p>Over the past 30 years selling technology solutions, the raw materials of the products I sell have changed many times. Shifts from centralized to decentralized processing and data models, optimization for the hardware we were operating on, business trends swinging from corporate consolidation to startup disruption. These are all contributing factors to the way we build our products. The latest shift is to microservices and API&#8217;s in the cloud. I&#8217;m going to primarily talk about Microservices in the business context &#8211; I&#8217;m not a developer but rather one who helps companies, primarily banks, adopt new technology. Let me first define Microservices: Sam Newman, back in 2015, <a href=\"https:\/\/samnewman.io\/talks\/principles-of-microservices\/\">defined Microservices <\/a>as &#8220;Small Autonomous or independently releasable services that work together, modeled around a business domain.&#8221;  <\/p>\n\n\n\n<p>Since joining NCR last May, I have been working primarily with top 100 banks, selling payment solutions within that market. Most of the solutions that bank&#8217;s run today were developed across my 30 years in the industry &#8211; and I sold a lot of them; giving me a unique perspective vs some of my fellow salespeople and solution consultants. I understand that those of you who have lived in the programmer community have been building and deploying microservices since 2014 and that the widespread adoption took place back in 2015 particularly in the web-commerce worlds of Google and Amazon. For banking, however, its just getting here. To take that a step further &#8211; banks just don&#8217;t think of applications as &#8220;business domains&#8221; working as distinct services working across channels or departments. Every bank has silos of employees, departments, products, customer segments, etc. Shifting the mindset of the leadership of these banks &#8211; especially operations is probably going to be the biggest challenge going forward.<\/p>\n\n\n\n<p>To me, the current move to microservices is a natural progression from the object oriented programming shift that happened while I was in school. While I was trudging through COBOL and BASIC, the kids back home were already learning SmallTalk and C++ in their basements. As I spent all day writing a novel on the terminal, the world was dividing and collaborating with libraries on these <em>novel<\/em> devices called a PC. The shift continued and C++ ruled the roost until everything changed as the internet and bandwidth became cheap. Back in 2015 <a href=\"https:\/\/github.blog\/2015-08-19-language-trends-on-github\/\">Github&#8217;s list of the most popular programming languages<\/a> showed the rapid rise of Java, and the decline of archaic tools like Pearl and C. Even Python use was dropping. Then The Cloud, AI and DevOps took over and today we are all looking to build powerful applications that operating in a software defined infrastructure to save money and meet customer demand. Here&#8217;s the thing, in 2018 Python is growing, JavaScript is on top and people are building with powerful tools like Go, TypeScript, Kotlin, Rust and Angular and but Java and C++ is hanging in there even as Ruby and PHP decline. Why &#8211; everything legacy is written in C, Java, and COBOL and they have to be dealt with. And you know what &#8211; you can containerize almost anything now can&#8217;t you?<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"5248\" height=\"3849\" src=\"https:\/\/i0.wp.com\/www.charanis.com\/blog\/wp-content\/uploads\/2019\/06\/CloudThoughts-JC.jpg?fit=700%2C513\" alt=\"\" class=\"wp-image-29010\" srcset=\"https:\/\/i0.wp.com\/www.charanis.com\/blog\/wp-content\/uploads\/2019\/06\/CloudThoughts-JC.jpg?w=5248&amp;ssl=1 5248w, https:\/\/i0.wp.com\/www.charanis.com\/blog\/wp-content\/uploads\/2019\/06\/CloudThoughts-JC.jpg?resize=300%2C220&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.charanis.com\/blog\/wp-content\/uploads\/2019\/06\/CloudThoughts-JC.jpg?resize=768%2C563&amp;ssl=1 768w, https:\/\/i0.wp.com\/www.charanis.com\/blog\/wp-content\/uploads\/2019\/06\/CloudThoughts-JC.jpg?resize=1024%2C751&amp;ssl=1 1024w, https:\/\/i0.wp.com\/www.charanis.com\/blog\/wp-content\/uploads\/2019\/06\/CloudThoughts-JC.jpg?w=1400&amp;ssl=1 1400w, https:\/\/i0.wp.com\/www.charanis.com\/blog\/wp-content\/uploads\/2019\/06\/CloudThoughts-JC.jpg?w=2100&amp;ssl=1 2100w\" sizes=\"auto, (max-width: 700px) 100vw, 700px\" \/><figcaption>Looking forward with a lot behind me&#8230;<\/figcaption><\/figure>\n\n\n\n<p>A natural progression as companies like banks with traditional operating groups try and become more agile is to start exploring  as they look to move from single monolithic applications to distributed systems. From departments to collaborative groups of employees developing products and services that can be reused in different ways. Five years ago it was all about SOA (Service Oriented Architecture) and the same challenges existed; but with the technology barriers associated with the fact that most of these were still based on monolithic three tier architecture. Today we have shifted to Microservices and I would say that its not that different, but without the technological platform barriers &#8211; with the exception of the biggest shift, getting banks to adopt cloud-based architecture. In fact in a talk Sam Newman gave back in 2015 he specifically stated that he felt that microservices were nothing more or nothing less than an &#8220;opinionated form of SOA.&#8221; The key is autonomy as well as the investment in options and re-usability that SOA always promised. With microservices, you get to make a lot more choices &#8211; and that is hard. It is even harder when you are brining in the need to adopt a complete computing shift to cloud based architecture &#8211; one that creates anxiety simply because its primarily associated with the internet &#8211; ooooh the scary internet. <\/p>\n\n\n\n<p>My young friends are baffled that banks still run COBOL programs; not because they are ignorant of history but more because they don&#8217;t understand the business challenges in making the change. My older friends are struggling with the benefits of agile development and DevOps; not because they aren&#8217;t excited about it but they have the wisdom of &#8220;everything in its right place&#8221; behind them (sometimes to a fault). I find it all fascinating and my mind wanders to thinking what it would have been like 25 years ago to try and implement an agile development environment within an organization submerged in waterfall product management and monolithic programs operating on centralized mainframes. Or to see how these young turks would lose their minds having to build efficient programs with limited memory and processing power, right down to the kernel. <strong>Wait &#8211; that&#8217;s exactly what is happening now &#8211; the clash is palatable in almost every organization today.<\/strong> I sound like an old man, I know &#8211; and in some ways I am. But I&#8217;ve managed to keep up and am optimistic about where we can now go as the industry moves to a microservices architecture. <\/p>\n\n\n\n<p>So where am I going with all of this? My job every day is to try and help people appreciate the opportunity to embrace change &#8211; because change is growth and without growth we begin to die. Cynical people will say &#8211; I&#8217;m just out to make a buck convincing banks to buy software but that&#8217;s just a small part of it, I truly feel responsible to help my colleagues who sell, product managers who define, managers who lead and customers who buy. And for me helping means educating and often convincing that they need to consider and then adopt a new way of thinking. Microservices are the manifestation of the decentralization of today&#8217;s economy &#8211; the shift from monolithic vertically integrated assembly lines into horizontal, distinct decentralized components and today people develop code the same way, a really interesting and amazing way. I relearn new technology every few years &#8211; I move between companies and talk to different people to do that &#8211; because I have no choice. Some customers come with, others walk away. <\/p>\n\n\n\n<p>So now we get to the how \u2013 do we scrap and rewrite these legacy systems completely. Disruption happens all the time; and in banking this disruption is primarily happening in Fintech with entirely new financial institutions starting that resemble banks but come in the form of an App. These Fintechs are often called Challenger Banks (Monzo, Simple, Starling, Bank Mobile, Chime, Varo, etc.). Or do we refactor them \u2013 taking legacy applications from traditional three tier architecture or even SOA to microservices, containerized applications. For some companies refactoring can happen gradually \u2013 because they are SOA already, written in Java and can therefore transfer to a cloud based architecture by focusing on the database and operating system. But the reality is that won\u2019t be as easy as it seems. Back to the choices that Microservices affords you \u2013 how do you decide on the specific business domains that you will refactor the application to address in the form of distinct microservices. This is hard work, difficult collaboration between engineering and product management \u2013 often two areas that are purposefully separate in traditional technology companies. The sad thing is, time flies and in a few years you will see most of the people in a large company simply ignore the opportunity and stick to their guns, expecting it all to pass. Until it doesn\u2019t, and the senior leadership team spins off your division and buys another company. Or stops funding your group and suddenly another group gets the money. Or worse, the SLT doesn\u2019t do this and the company slowly dies. <\/p>\n\n\n\n<p>So this is an introductory post \u2013 I expect that I\u2019ll be writing a lot about it as much as I can because a few of us are just now beginning to start the process of educating my colleagues and customers about the benefits of this technology and where we are finally at a really effective and expansive approach to OOP, SOA and now Microservices. And my next post about ESBs is also a launching point to how companies buy and implement enterprise applications. TCO, security, scale-ability and flexible deployment will drive the business value to the Cloud.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Over the past 30 years selling technology solutions, the raw materials of the products I sell have changed many times. Shifts from centralized to decentralized processing and data models, optimization for the hardware we were operating on, business trends swinging&hellip; <\/p>\n","protected":false},"author":1,"featured_media":29010,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[14,13,4],"tags":[77,21,36,76,79,78],"class_list":["post-28979","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-banking-tech","category-mobile-tech","category-technology","tag-api","tag-banking","tag-fintech","tag-microservices","tag-product-development","tag-programming"],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/www.charanis.com\/blog\/wp-content\/uploads\/2019\/06\/CloudThoughts-JC.jpg?fit=5248%2C3849&ssl=1","jetpack_shortlink":"https:\/\/wp.me\/p3mX8K-7xp","jetpack_sharing_enabled":true,"jetpack-related-posts":[{"id":30989,"url":"https:\/\/www.charanis.com\/blog\/2022\/11\/06\/a-year-with-microservices-and-omnichannel-banking\/","url_meta":{"origin":28979,"position":0},"title":"A year with Microservices and Omnichannel Banking","author":"Jimmyc","date":"November 6, 2022","format":false,"excerpt":"Omnichannel - that won\u2019t get a lot of hits on my blog. But Microservices will. The reality is Omnichannel is overused but it is important. And microservices have enabled it. Last year I shifted from enterprise solutions to our digital first solutions - selling the combined solutions between our Channel\u2026","rel":"","context":"In &quot;Banking Tech&quot;","block_context":{"text":"Banking Tech","link":"https:\/\/www.charanis.com\/blog\/category\/banking-tech\/"},"img":{"alt_text":"Jim at NCR","src":"https:\/\/i0.wp.com\/www.charanis.com\/blog\/wp-content\/uploads\/2022\/11\/charanis-NCR-1-scaled.jpeg?fit=900%2C1200&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.charanis.com\/blog\/wp-content\/uploads\/2022\/11\/charanis-NCR-1-scaled.jpeg?fit=900%2C1200&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.charanis.com\/blog\/wp-content\/uploads\/2022\/11\/charanis-NCR-1-scaled.jpeg?fit=900%2C1200&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/www.charanis.com\/blog\/wp-content\/uploads\/2022\/11\/charanis-NCR-1-scaled.jpeg?fit=900%2C1200&ssl=1&resize=700%2C400 2x"},"classes":[]},{"id":29017,"url":"https:\/\/www.charanis.com\/blog\/2019\/06\/23\/esb-enterprise-service-bus-or-an-evolving-services-buzzwords\/","url_meta":{"origin":28979,"position":1},"title":"ESB: Enterprise Service Bus or Evolving Services Buzzwords","author":"Jimmyc","date":"June 23, 2019","format":false,"excerpt":"I've been spending a lot of time thinking about microservices and ESBs (the Enterprise Services Bus) and what it means for my banking friends and customers. There is a lot of confusion out there - what is an ESB and who is using them in banking... here are some thoughts\u2026","rel":"","context":"In &quot;Banking Tech&quot;","block_context":{"text":"Banking Tech","link":"https:\/\/www.charanis.com\/blog\/category\/banking-tech\/"},"img":{"alt_text":"The Red Devil Bus in Panama, often targeted for retirement, but hanging on like legacy banking technology","src":"https:\/\/i0.wp.com\/www.charanis.com\/blog\/wp-content\/uploads\/2019\/06\/panamabus-1-2-1.jpg?fit=500%2C334&ssl=1&resize=350%2C200","width":350,"height":200},"classes":[]},{"id":29096,"url":"https:\/\/www.charanis.com\/blog\/2021\/07\/23\/driving-devices-iso-202022-and-faster-payments\/","url_meta":{"origin":28979,"position":2},"title":"Driving Devices ISO 202022 and Faster Payments","author":"Jimmyc","date":"July 23, 2021","format":false,"excerpt":"I came to NCR to sell a modern ATM driving and transaction processing platform. The goal was to leverage a platform that was focused on transforming messages and building in flexibility to adjust for what was to come, not what was already on the shelf. Part of that was thinking\u2026","rel":"","context":"In &quot;Banking Tech&quot;","block_context":{"text":"Banking Tech","link":"https:\/\/www.charanis.com\/blog\/category\/banking-tech\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":31021,"url":"https:\/\/www.charanis.com\/blog\/2022\/11\/09\/data-exchange-to-shared-sessions-where-treasury-management-and-digital-banking-wants-to-be-now\/","url_meta":{"origin":28979,"position":3},"title":"Data Exchange to Shared Sessions &#8211; Where Treasury Management (and Digital Banking) Wants to Be Now","author":"Jimmyc","date":"November 9, 2022","format":false,"excerpt":"Problem\/Solution Bank's exchanging data with their commercial customers to manage their finances and execute payment transactions: Realtime connections between the companies and their financial institutions so that the information exchange is realtime, integrated, robust and efficient. And dare I say, it just happens: embedded banking. I have the benefit of\u2026","rel":"","context":"In &quot;Banking Tech&quot;","block_context":{"text":"Banking Tech","link":"https:\/\/www.charanis.com\/blog\/category\/banking-tech\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.charanis.com\/blog\/wp-content\/uploads\/2022\/11\/data-exchange.jpg?fit=1200%2C434&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.charanis.com\/blog\/wp-content\/uploads\/2022\/11\/data-exchange.jpg?fit=1200%2C434&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.charanis.com\/blog\/wp-content\/uploads\/2022\/11\/data-exchange.jpg?fit=1200%2C434&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/www.charanis.com\/blog\/wp-content\/uploads\/2022\/11\/data-exchange.jpg?fit=1200%2C434&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/www.charanis.com\/blog\/wp-content\/uploads\/2022\/11\/data-exchange.jpg?fit=1200%2C434&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":29032,"url":"https:\/\/www.charanis.com\/blog\/2019\/07\/08\/why-and-how-we-went-from-saas-to-cloud-services-to-apis-its-just-business\/","url_meta":{"origin":28979,"position":4},"title":"Why and How we went from SaaS to Cloud, Services to APIs &#8211; It&#8217;s just Business!","author":"Jimmyc","date":"July 8, 2019","format":false,"excerpt":"Just how does Amazon or Google scale to such a huge number of transactions or inquiries? How are these companies able to afford to serve so many customers every day, with new services, nonstop again and again? The economics behind the lift and shift from operating environments as physical servers\u2026","rel":"","context":"In &quot;Banking Tech&quot;","block_context":{"text":"Banking Tech","link":"https:\/\/www.charanis.com\/blog\/category\/banking-tech\/"},"img":{"alt_text":"reach up and get your APIs like legos","src":"https:\/\/i0.wp.com\/www.charanis.com\/blog\/wp-content\/uploads\/2019\/07\/jim-cloudsAPI-1.jpg?fit=1200%2C857&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.charanis.com\/blog\/wp-content\/uploads\/2019\/07\/jim-cloudsAPI-1.jpg?fit=1200%2C857&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.charanis.com\/blog\/wp-content\/uploads\/2019\/07\/jim-cloudsAPI-1.jpg?fit=1200%2C857&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/www.charanis.com\/blog\/wp-content\/uploads\/2019\/07\/jim-cloudsAPI-1.jpg?fit=1200%2C857&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/www.charanis.com\/blog\/wp-content\/uploads\/2019\/07\/jim-cloudsAPI-1.jpg?fit=1200%2C857&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":29220,"url":"https:\/\/www.charanis.com\/blog\/2020\/01\/24\/is-it-time-for-iso-20022-atm-driving-is-it-time-to-abandon-atm-driving-all-together\/","url_meta":{"origin":28979,"position":5},"title":"Is it time for ISO 20022 ATM Driving? Is it time to abandon ATM Driving all together?","author":"Jimmyc","date":"January 24, 2020","format":false,"excerpt":"Could an ISO 20022 web-services based ATM Terminal Handler\/Driver reduce costs and accelerate innovation by consolidating applications, connections and platforms. Would bankers, ATM vendors and bank application providers get on board with such a strategy? Do we still need ATM drivers in an IOT world? One idea to help banks\u2026","rel":"","context":"In &quot;Banking Tech&quot;","block_context":{"text":"Banking Tech","link":"https:\/\/www.charanis.com\/blog\/category\/banking-tech\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.charanis.com\/blog\/wp-content\/uploads\/2020\/01\/ISO20022.png?fit=433%2C311&ssl=1&resize=350%2C200","width":350,"height":200},"classes":[]}],"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/www.charanis.com\/blog\/wp-json\/wp\/v2\/posts\/28979","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.charanis.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.charanis.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.charanis.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.charanis.com\/blog\/wp-json\/wp\/v2\/comments?post=28979"}],"version-history":[{"count":6,"href":"https:\/\/www.charanis.com\/blog\/wp-json\/wp\/v2\/posts\/28979\/revisions"}],"predecessor-version":[{"id":29038,"href":"https:\/\/www.charanis.com\/blog\/wp-json\/wp\/v2\/posts\/28979\/revisions\/29038"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.charanis.com\/blog\/wp-json\/wp\/v2\/media\/29010"}],"wp:attachment":[{"href":"https:\/\/www.charanis.com\/blog\/wp-json\/wp\/v2\/media?parent=28979"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.charanis.com\/blog\/wp-json\/wp\/v2\/categories?post=28979"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.charanis.com\/blog\/wp-json\/wp\/v2\/tags?post=28979"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}