(2014/9/17) Today I am very lucky to hear speech by James Grenning “Why am I still a developer?” during his transit in Singapore.
James is one of the first signatory of “Agile Manifesto” and inventor of Planning Poker (YES, THE Planning Poker we use now). He is doing agile and XP but not in Scrum alliance. Wrote book “Test-Driven Development for Embedded C”
The answer to his question was
1. He loves to solve problems with codes,
2. He is lucky along the way (Chose programming language class as electives, worked with amazing people, etc)
Observations in speech
- About 70 people showed up (SG agile conference about 400 ppl show up last year, so those shall be hardcore ppl)
- 80% are westerners and works in big company. Seems local company is not that into agile
- About 50% is doing agile
- About 25% is doing TDD
James spent a lot of time answer questions tonight, and I list some interesting ones below
- What is the outcome of good agile practice?
- good quality(low bug)
- faster delivery(MVP, minimal viable product)
- happy people(sustainable and continuous learning)
- Why TDD?
- To ensure we don’t need to do test manually
- So product can be change rapidly without breaking things
- What if requirements keep changing?
- People always don’t know what they want in software, if you want clear and unchanged requirement you chose wrong profession.
- The beauty of agile is we can know what people don’t want quickly
- Who shall do the design?
- The people working on development day to day, not architect
- What shall we learn?
- As software professional, company expect us to learn business domain during work. To keep up with software industry change (which changes every 9 month) we need to use personal time, and at the same time balance family and friends, which is not an easy job.
- How? Read blogs, follow interesting people’ twitter
- How to do estimation of project?
- No one can estimate correctly, let’s just make very rough estimation quickly and spend time on other valuable thing
- Use story point as budget to gauge project duration. After estimation of story points by item, ask Team if have 2 weeks what they like to work on, then next 2 weeks, to get rough estimation of 2 week story point team can work on, then
- total story points / 2 week story point X 2 weeks = estimate project duration
- What if my company is not agile?
- Communicate and show the value to influence changes
- Try to change environment and not to leave environment, people often leave for the hope he like new company and find the opposite
- We are doing scrum, what is next?
- If you do scrum by the book for 2 years and still doing it, something is wrong. Agile is meant to keep finding better way to do things.
- Scum is meant to be flexible to adapt changes
- How to align Business and Software engineer?
- Business works on datelines, engineer help to deliver most valuable items by the dateline
- Don’t talk on the whole project scope and schedule, instead ask customer what are most important and we do those first. Prioritization!
- How to tell a team is working well from business/management point of view?
- At first James answers he does not know, as it is not possible to measure. Then he said see if the problem are been resolved