Software is like an iceberg. 95% of its functionality is invisible to you, underneath the surface. And I don’t just mean the networking calls to the server and the syncing mechanism that makes sure your data is consistent between devices although that’s a big part of it. I mean in the actual functionality that you use every day.

Let’s say you use the Instagram app. You like browsing your friend’s photos but don’t spend much time with it otherwise. So you don’t see the search functionality, or the AI they built to show you pictures you might like, or the ability to switch accounts. All of that functionality is hidden beneath the water. You’ll never think about the effort that went into building and testing it because you never see it.