- Business First. Convince the client of clever IT investments to achieve strategic business goals. Innovation can be good, but always consider the costs and risks.
- Work under Architecture. All development should take place in support of a clear vision so that the desired endstate can be reached step-by-step.
- Work Agile. It’s just not realistic to know and plan everything upfront via a waterfall approach. Priorities change, actual work differs from estimates, the truth is always in the middle. A fixed price contract will not guarantee financial control.
- Give Insight into Costs. Pricing is not an after thought, but one of the most important contraints to take into account when designing your solution.
- Always Consider Business Continuity. Cloud migration is good, but the show must go on at all times.
- Involve Support from the Start. Prepare for good monitoring and error handling. Azure falls short on these aspects. Consider using Serverless360.
A gile is a buzzword often preached, but not always practiced. Maybe you could even state that you shouldn’t always live up to the agile paradigm in a strict sense, because it can be very time consuming to have a daily standup, planning sessions, retrospectives, demos, etc. etc. I also strongly doubt whether self-organized teams really exist. Maybe we still need traditional project managers. No offence, it’s just a matter of doing what you like most and sticking to your trade. Anyhow, look for the middleground when it comes to working agile.