Something that looks simple, maybe not that simple. The airplane concept looks simple, but when you try to build one, you will understand the complexities involved.
Similarly software too.
I have started working in large-scale systems. The complexities involved are simply massive. Even to change simple property, you need to consider a lot of things. Introducing changes is difficult in large systems. I do get to learn many problems with scalability in large-scale systems.
The performance of your software is really important. And today I understand how important TypeScript is for JavaScript because I felt a great need for it for quick debugging in my script. With pure JavaScript, it is simply difficult to write large scripts that involve a great amount of business logic.