Recently, I had an interesting conversation with a machine learning engineer.
He gave an appealing analog to “how do you keep up your own growth?”
Personal development is like training an ML model.
Our behaviors are outputs of the model.
We can work on the data quality and include more features. It means reading more great books, and working with talented people.
We can change the model structure. It means adopting new or upgrading our mindsets.
It reminds me of “a team is a distributed system”.
A team has a unified interface to the outside. But internally, multiple engineers are working on different components in the system.
Analogs and metaphors help us connect what is new to what we know.
Do you recall one in your domain?
Software engineering is about re-creating the real world in a digital world.
Look around the world to inspire your system design.
Vice versa, what you learnt helps you in the real world.
How does scaling a distributed system teach about scaling a team?