Top 10 tips for Agile Outsourcing

Does Agile work with outsourcing ? 

Yes! – but you have to do things very differently, see below for top 10 tips with sourcing experience in Hong Kong, we scaled the team from 0 to 80 vendor developers in 3 years

1) Accept that Scope would be uncertain, at the beginning, we tried to put Product Backlog (or Minimum Viable Product) as part of the contract, but it is not helping as we change the order, / details of product backlog too often, I would advise not to mention the scope at all in the contract, due to this one, we changed contract from Statement of Work (SOW) to Work Order (WO) 

2) The WO is by sprint, we specified the name of people in the team (or else one vendor would quite often change the developer without telling us), their standard daily rate (we have different roles like Mobile Developer, Senior Mobile Developer for different rates) , usually we have one WO for 4~6 sprints , but sometimes we have like 6 month to one year for established product/ team

3) We internal staff interviewed all developers / Scrum Master before onboarding them to Scrum team , quite often the vendor themselves have no idea what Agile / Scrum is and they do not know how to find the right people (e.g. getting specialists that refused to work on other parts of software development ) , this “body shopping” way of engaging vendor has a high rate of success or a certain vendor Scrum Master + Development would start to do some crazy stuff, like getting 2 days pre-planning workshop before the sprint planning, asking a detailed requirement document of hundred of pages before adding product backlog items to the Product Backlog, even the Product Owner is no happy with the Increment / product backlog item, the Scrum Master would call it “Done” and actually report it that way

4) We have a clause that we can end the contract with 1-month notice, and we have the right to request replacement of Developer and Vendor must get new developers within 1-month time, this is the an extreme case that thing do not work out

5) We have a weekly catch up with vendor for latest recruitment status / request from developers like computer equipment / tools

6) We usually inject our own internal Scrum Master or developer to the team if possible, for both scrum adoption, and retaining the domain knowledge, as our internal team has much better Scrum experience (the ratio is about 1 internal developer vs 6 vendor developers)

7) We treat the vendor developer as part of the team, they have same say of the way how the team works, architecture/ technical design, they can equal say in the sprint retro, they have our company email, we sit together as a team, and they would have the same equipment / tools as internal team, besides contract, there is almost no difference to the internal developer, quite often the Product Owner / Business side has no idea which developer is from the vendor, we also engaged all developers to internal Town Hall / team meeting / lunch gathering / etc…

8) One of the important things is that we keep stressing that Vendor need to provide their team with training, Scrum related and quite often soft skills like Communication / Presentation

9) It is true that is quite difficult to get agencies to work in the above way, so far we have more success with one of the vendors only, other vendors keep trying to say they want to operate the same way but they have some major issues onboarding the team like the way requested

10) Internal staff would take ultimate take responsibility/ accountability, we never blame the vendor for anything, the whole Development team and some case even the whole Scrum Team take responsibility together

How to prepare for Professional Scrum Master I (PSM I) Assessment

I got asked a lot on how to prepare for Professional Scrum Master I (PSM I) Assessment, it is really easy if you are doing it right.

  1. Have a good understand of Scrum, especially the principles, the best is to practise, be Scrum Master or Product Owner or as part of the Development Team, real-life working experience in Scrum Team for 4 ~5 years is desired, if that is not possible, consider to take a Professional Scrum Master or Professional Scrum Foundations Course
  2. Read Scrum Guide by Ken Schwaber and Jeff Sutherland, read it by heart and at least 4 or 5 times, I have personally read it at least 40 times and still found that there are a lot of things I miss during the read, it almost feels like it is new every time I read it.
  3. Do Scrum Open till you got 100% multiple times 

The above Should be good enough for a pass, but if you are still not feeling confident, do the followings:

  1. Read Nexus Guide as some questions is related to scaling scrum 
  2. Do All open assessments including Nexus Open, Product Owner Open and Developer Open until you scores 100% on all of them multiple time and some questions is related to each specific area
  3. Read books