Is developing a large scale system really one of critical factors leading to becoming a good developer?
I have been keep thinking about this question for a long time. Let me give you some background to help you understand the question better.
Here is my assumption:
- Large scale system has much more complexity than a small scale system
- Many solutions that work for small scale system will no longer work in large scale system
- When working with large scale system, you have to think more considerately and more about system quality: distributed architecture, reliability, performance, resilient, high concurrency, sharding, etc
Based upon my assumptions, I think that work on large scale system definitely help you improve and gain a lot of experience. It is just like solving a puzzle, the more complicate the puzzle is, the more you gonna learn, the more it is gonna take to tackle it.
But is it really true? I would like to hear your opinions.