Have you heard any of your interviewers asking this? What's the scalability challenge you solved recently? How do you develop features at scale? What is scale? I mean, if one is a regular application developer, what's exactly is scale? If you follow the documentation and design apps with right distributed tools out there like cassandra, kafka or even self managed services of AWS, what exactly is the challenge? Also, most of the deployments of code or tools would be taken care of by the tech ops team or DBAs. For me, challenge is if you are in a infra team contributing to projects like zookeeper, kafka e.t.c and solving problems around consensus, conflict resolution e.t.c Correct me if am missing something. TC : 250K 7 YOE
I looking at scaling as a property of an application as load increases. There’s vertical scaling (more cpu, mem, etc) and horizontal (more machines). Most people are interested in application behavior for the latter. For example, if you have a web server and a db and your db is overloaded what do you do? Maybe you can cache some query results, or maybe you need to scale it horizontally with replicas / sharding / etc which have their own challenges. In my experience this is how people refer to scale. Even with managed cloud services there is usually a resource you have to manage eg read or write capacity units, disk space, network bandwidth, etc which all have cost. The challenge in the cloud is to manage the cost by effectively using resources. Also the traditional scaling problems do not go away entirely.
Can't agree more, but still isn't 50% of what you mentioned here done by tech ops or DBAs? Esp ones where infra is on premise
Even if it is I think what matters is that you put on their hat and think like them when designing a service. At some companies devs have to do everything.
Look at it in terms of money. How do you keep your cloud costs under control when the number of users grow beyond thousands, millions, billions?
Can you give an example?
Solve tiny URL and express the costs in terms of the pricing model of cloud providers (# of API calls, storage use, etc.). You can compare that with an in-house solution, for example. I have never done this exercise FYI, but that's the question I'd ask myself.