I have been 20 years since starting my journey in software development. So many have changed and complexity is increasing. Many knowledge has been obsolete almost in no time. So here my favorite strategies that I need to embrace to face upcoming complexity and uncertainty:
– Manifesto for Agile Software Development.
– Agility has no end-state, can’t be planned.
– Agility can’t be dictated, can’t be copied.
– Management is a servant leader.
– Building a learning organization.
– Building intrinsic motivation
– Building stable and dedicated teams
– Building technical excellence.
– Minimize or remove multitasking.
– Cross-functional self-organizing team
– Transparency, inspection, and adaptation.
– Openness, respect, and focus.
– Commitment and courage.
– Value-driven development.
– Align the work with the business strategy.
– Information visualization.
– Working iterative-incrementally
– Emergent architecture and quality.
– Non-violence communication.
– Safe to fail environment.
– Continuous planning and effort.
– Understand the social factor in engineering.
– Pull system
– Employ Scrum to thrive above values.