Post on 06-May-2015
description
transcript
Cultural Challenges in Global
AgileAgile
Agile India Conference 2010
Raghuram Bharathan
BACKGROUND
Playground
• Co-development
– Different time zones
– Different teams
• 2 week iterations• 2 week iterations
• Separate QA team
• Remote Product Owner
• QA inline with iteration
• Common toolset
Rules of the game
• Meetings
– Pre-planning and Planning
– Demo and Retro
– Standups– Standups
– Conference calls
• Work
– User stories
– Bugs from released stories
Players
• Customer team
– Average 10+ years experience
– Similar experience levels
• Offshore team• Offshore team
– Different experience levels - 0 to 10
– Different cultural backgrounds
– Most with no agile experience
THE CHALLENGES
Why IT industry?
Why IT industry?
• High-paying
• Opportunities
• Overseas exposure
• Glamorous• Glamorous
• Air-conditioned work, 5 day week
Education System
• Theoretical focus
– Civics and civic sense
– Learn about road rules but not follow
– System of Government
– Less importance to games and sports
• How many of us can fix a leaking tap, build a book shelf
Programming
• Focus on quantity – number of languages
• Learn through a set of programs
– Sort a list of numbers
– Binary search– Binary search
– Matrix multiplication
– Doubly linked list
Data Structure
Complexity
Programming
• Less focus on design and implementation
– Performance, scalability and reliability
– Testability
– Coding standards – Coding standards
– Best practices of programming
How it affects
• Doing it right the first time
• Test First/ Test Driven Development
• Writing clean code (free of violations)
IT/Service Mindset
• Somehow solve a problem
• Means are not important or relevant
• Deadline driven
• Quantity rather than quality• Quantity rather than quality
• Applicable for only one situation
Contrasting Product Mindset
• Hardware, OS, browser independence
• Design for change
• Logging
• Installation and deployment strategy• Installation and deployment strategy
• Upgrade strategy
• Service packs and hotfixes
How it affects
• Designing for change
• Thinking beyond specific problem
• Looking at the bigger picture
Distractions at work
• Flexible working hours
• Getting to office – traffic jams
• Breakfast and coffee breaks
• Phone calls• Phone calls
• Personal mails and social network
• Friends at work
• Hobbies and recreations – lack of
How it affects
• Sticking to estimated time
• Working to compensate for lost time
• Dependant team members and delays
• Dependant groups – QA, schedule• Dependant groups – QA, schedule
Hierarchy
• Parents at home
– School
– College
– Job– Job
– Marriage
• Teachers at school/college
• Supervisors at work
– Tell me what to do and by when
How it affects
• Commitment
• Estimation
• Ownership
• Proactiveness• Proactiveness
Resume fattening
• Number of different technologies
• Number of projects
• Jack of all arts
– Master of none?– Master of none?
• Superficial/Shallow knowledge
• Disinterest in specialization
How it affects
• Working in a time-boxed environment
– Sticking to estimates
– Overcoming technical challenges
– Writing optimized code– Writing optimized code
– Using appropriate library features
Reporting Impediments
• Cultural influence
– left hand stigma
– fear of punishment
• Self-conscious• Self-conscious
• Linking to appraisal
• Non-technical
Manager
Retrospective participation
• Cultural influence– Stoic and self-content
– Why upset the apple-cart?
• Set a goal – meet or exceed
• Why raise the barrier?
• Skirt around sensitive topics
– People, ability, aptitude
Collaboration
• Talking vs discussion
• Divide and conquer vs
independence
• Me, mine, myself vs us, ours• Me, mine, myself vs us, ours
• Blame game
• Taking feedbacks personally
Communication
• Cultural influence
– English as foreign language
– Mother tongue influence
• Trouble with accent• Trouble with accent
• What I said and what I
mean
• Verbal and written
Holidays
• Cultural influence
– Away from family
– Going home for festivals
• Multitude of festivals• Multitude of festivals
• Regional and religious
• 2 week iterations and holidays
Unlearning
• Happy with status quo
– resistance to change
• Unaware of doing
mistakesmistakes
• Difficulty in correcting
• Importance of learning
it right the first time
Tools of tradeTools of trade
Prayer Programming
Pat on the back
OVERCOMING CHALLENGES
Self-driven teams
• Who should bell the cat?
• Why me?
• What is in it for me?
• Harder I work, the more • Harder I work, the more
work I get
• Peer pressure
Chief Programmer model
• Create specializations amongst team members
• Break stories into tasks
– Specialized team member picks tasks
• Less self-driven and more ability-driven• Less self-driven and more ability-driven
• Leads as Chief Programmers
– interact with customer
– coach and mentor team
Tool-driven approach
• Minimize the human factor
• Tools
– to flag style violations
– to identify lack of code coverage– to identify lack of code coverage
– to flag incorrect coding practices
– to run for each check-in and identify issues at the
earliest
– consistent across local and remote teams
• Core business hours
• Blocking of social networking at work
• Co-location – low cubicle walls
Overcoming distractions
•
• Manager co-located with team
Tracking
• Variant of Pomodoro technique – pre-lunch
and post-lunch (3 hour slots)
• Stand ups before start of work and post-lunch
• Individual follow-ups and reminders• Individual follow-ups and reminders
• Proxy updates
• Multiple channels
– Wiki, Issue tracking system, email, instant
messaging
– Regular teleconferences
Communication Channels
– Regular teleconferences
– Large whiteboard with visible status
Pigs and Chickens
• Be transparent
• Track through tools
• Try to help• Try to help
• Shield from
distraction
* of the iteration* of the iteration
Summary
• Agile is here to stay
• Brings issues to surface rapidly
• Focuses on continuous improvement
• Need to work hard to stay afloat• Need to work hard to stay afloat
• Survival of the fittest
Maharaja’s College, Ernakulam
http://maruhgar.blogspot.com
raghuram.bharathan@yahoo.com