16 years ago, my teammates and I built software for big internet properties. Now, we build information systems – data platforms, decoupled frontends, event streams, lots of interdependent software and services with many types of consumers. In the world of “digital transformation”, software is becoming systems. Unfortunately, we don't think in systems. Systems are nonlinear. They reorganize our mental models and communication structures. Yes, we need skills in cloud-native architectures, Kafka, Kubernetes, GoLang, Terraforming, etc. But those are not the key to our success. We also need to transform how we think together. Otherwise, we will build the same old things with fancy new tools.
Let's explore essential nonlinear skills and practices for IT professionals, skills we might not think of as “IT”. What are the practices that help us navigate from software to systems?