Archive

The Dulin Report

Browsable archive from the WordPress export.

Results (26)

On the role of Distinguished Engineer and CTO Mindset Apr 27, 2025 The future is bright Mar 30, 2025 On Amazon Prime Video’s move to a monolith May 14, 2023 All developers should know UNIX Jun 30, 2022 Java is no longer relevant May 29, 2022 TypeScript is a productivity problem in and of itself Apr 20, 2022 The passwords are no longer a necessity. Let’s find a good alternative. Mar 2, 2020 Microsoft acquires Citus Data Jan 26, 2019 Facebook is the new Microsoft Apr 14, 2018 Leaving Facebook and Twitter: here are the alternatives Mar 25, 2018 Emails, politics, and common sense Jan 14, 2017 Windows 10: a confession from an iOS traitor Jan 4, 2017 Apple’s recent announcements have been underwhelming Oct 29, 2016 Why I switched to Android and Google Project Fi and why should you Aug 28, 2016 In search for the mythical neutrality among top-tier public cloud providers Jun 18, 2016 Files and folders: apps vs documents May 26, 2016 What can we learn from the last week's salesforce.com outage ? May 15, 2016 Managed IT is not the future of the cloud Apr 9, 2016 OAuth 2.0: the protocol at the center of the universe Jan 1, 2016 What Every College Computer Science Freshman Should Know Aug 14, 2015 Big Data Should Be Used To Make Ads More Relevant Jul 29, 2015 Attracting STEM Graduates to Traditional Enterprise IT Jul 4, 2015 Smart IT Departments Own Their Business API and Take Ownership of Data Governance May 13, 2015 The Clarkson School Class of 2015 Commencement speech May 5, 2015 Microsoft and Apple Have Everything to Lose if Chromebooks Succeed Mar 31, 2015 Java, Linux and UNIX: How much things have progressed Dec 7, 2010

On Amazon Prime Video’s move to a monolith

May 14, 2023

Last week an article about how Amazon Prime lowered their monthly AWS costs by 90% by shifting part of their system called VQA (Video Quality Analysis) away from a server-less micro-service architecture to a monolith server.



I want to warn my readers about reading too much into it regarding cloud costs. Please don’t take this article as proof that servers are cheaper and serverless is not. This conversation is not about cloud vs. on-premise; the broader message is that micro-service architectures are costly and overcomplicated.



There is nothing fundamentally wrong with a monolith, and a well-architected monolith with well-structured code with separation of concerns serves its purpose quite well. If Amazon Prime’s experience proves anything, it is that when the granularity of services is too fine, complexity and costs skyrocket.



As an architect, I need to worry about many things: the application needs to work, it needs to scale, and developers need to be productive. When left to their own devices, developers gravitate towards monoliths for a straightforward reason: they can run the entire application stack in their development environment and, most importantly, step through it in a debugger end-to-end. A monolithic repository (aka monorepo) can answer all architectural concerns, starting with developer productivity and to deployment and scalability.



Most importantly, just because someone from Amazon (or Apple, or Facebook, or Google, or Microsoft) said they do things a certain way, it does not mean you should drop everything and do things the same way. My number one rule of software architecture is “Don’t shakespearize!”.



I’ve written on this subject over the years. Here are my other ruminations on micro-service architectures: