Posts

Part 2: Scaling your applications beyond millions of users.

Image
Part 1:  Here is how to scale an Application to support millions of users. Building products to serve millions of users is no small feat, but scaling them further to support billions of users takes the challenge to a whole new level. This sequel takes the techniques discussed previously and pushes them further, integrating advanced strategies to ensure our applications can handle the enormous scale required for billions of users. Our journey begins with a quick recap of the foundational architecture. We'll then dive deep into the advanced techniques required to support this next level of scaling, providing detailed explanations and real-world examples to illustrate how these concepts are applied in practice. Recap: Foundation of Scaling We started with a single-server architecture and gradually added layers of scalability: DNS (Domain Name System) : Resolves domain names for users. Web Server : Handles the application logic. Data Tier : Manages the database. Load Balancer : Distrib...

Speaking at Delhi University about UN SDGs & an Industry-Academia Interface

Image
I was recently invited to the 10th International Conference on Business and Management 2022-23 [ icbm.sbsc.in ] at the Shaheed Bhagat Singh College Campus at University of Delhi. The conference was themed under the umbrella of the United Nations SDGs 2030[ Read More ]. It was an honor to be invited as a guest and share my perspective with the audience at the conference. The following is a scattering of thoughts from my panel discussion and Q&A within the context of an Industry-Academia Interface. Being integrated within the industry this section of the conference particularly interested me for I believe Industry drives the established capital state of the world and that Industry maintains the substantial reach that would help us achieve the SDGs. I focus here on economic models of sustainability as it has been well observed that as populations become more economically sustainable, they can then afford to be more environmentally conscious.  At the very least it becomes easier to...

Designing User Experiences for the Billion user majority market of India.

Image
The first and final goal for any designer is to design for a user whose lifestyle does not match her own lifestyle. Designers in India have gone through laptops and desktops as means for interfacing with technology. The majority market or who we call the Next Billion Users have mostly directly adopted smartphones and they have skipped laptops and desktops. UX Design philosophies, therefore, have to be adjusted when designing for the majority market of India.   We shall explore the following areas for our understanding of India’s majority market.   Large Touch Targets. India loves voice technology. Dividing screens and progress indicators. Words and colors that are our friends.   Large Touch Targets   A UI pattern seen in apps that cater to the majority market of India is the use of large touch targets. Apps like Notion, OneNote or even Twitter use small touch targets on their apps on a regular. With apps like Zomato Delivery Partner, Kisan Suvidha, Animall, GoCoop f...

You know what is cool? A Million Users. Here is how to scale an Application to support millions of users.

Image
Legend speaks of a time when engineers would have to set up data centers and handle all the networking themselves to run a business on the internet. I am not a product of such times and the cloud services that I can access from my home computer would sound nothing more than wishful thinking to computer engineers a couple decades ago. This is how we build products that could serve millions of users. We shall start by learning the concepts of scaling and follow it be seeing how one can leverage services provided by a cloud service provider such as AWS. Some sections of this article reference each other and as such I recommend you going through it twice if you find yourself not knowing some of the terms used within the text. I have done my best to at-least briefly explain terms when they first appear. If not, it is likely that they will be covered somewhere further in the article. Going through the text a second time should make you grasp what you might have missed the first time. On t...

One Framework to rule them all. Root Cause Analysis.

Image
Root cause analysis of a problem can be a daunting undertaking unless performed under a structure. With a battery of approaches available I see people making their own arsenal into an antagonizing force. Here is a framework that I have time and again seen working for root cause analysis problems of many different flavors. Defining boundaries is the most important step in making a wide problem statement manageable. With software being conceptually as wide as it is, and with as many possible causes of something happening, it is essential for us to be systematic in our diagnosis. One cannot start exploring 10 different areas and 20 probable causes all at once and hope to distill all that information within our mental buffers and spit out the most probable cause. Software and the surrounding ecosystem around it is easily one of the most elegant interconnecting system of entities that humans have come up with. It may have only been a few decades since the human species has created and has b...

on managers reasoning with Analogies, and making ideas bulletproof.

Image
  Wordsmiths with their lexical juggling and long narratives inspire an appreciation for linguistic acrobatics among men. Speech throughout history has proven itself to be the greatest of differentiators and as such fiercer than the mighty pen. The written word dwarves to the power of crafty speech, even more so today because of the limited attention that listening in general demands. A well-articulating man assumes authority within the crowd by default. The ability to convey a complex thought effectively is something that all men seem predisposed to desire. Not being able to communicate a thought clearly and completely grants the listener the right to assume disingenuity on your part, even if there wasn’t any. What is not explicitly stated leaves room for interpretation and hence misinterpretation. We draw parallels to the world in our communication to fill in the holes of our argument. The conversation is an open-ended matter of the human state on any given day. We make it a ma...