Practice: Agile Project Management
Yes, we know, it’s a contradiction in terms. If you are an Agile shop, you can’t have project management in a traditional sense. We use the Scrum methodology for our projects, and the people who previously fell into the traditional project management role are now filling more of a business analyst role,which includes coaching our clients on becoming better product owners.
When we run a project, we heavily emphasize communication and collaboration between our team members and between our team and our clients. This is a necessity, because of the nature of our team working remote..
We have been successful delivering fixed bid projects, and have been able to deliver some under budget. This was achieved by having features prioritized at all times and identifying those which can be sacrificed.
The Recipe To Our Success
- Partnership is very important. We strive to be a single team with our clients and avoid any adversarial relationship between a client and a service provider.
- All work items are prioritized, and priorities have to always be up-to-date.
- A daily scrum meeting is a requirement on all active projects as it allows everyone to be on the same page.
- Frequent demos using screen-sharing, at least once a week.
- Availability throughout the day in chats (mostly Google Hangouts), which often turn into improvised calls.
- Retrospective calls at the end of each sprint: we give ourselves and our clients an opportunity to provide feedback and do things better in the next iteration. This is important to avoid repeating the same mistakes over and over again.
- Always have a Sprint 0, a discovery session, to set the right expectations early.
- We always try to remember what motivates engineers. Watch this video.