SlideShare a Scribd company logo
1 of 52
The Soft Side of
Software
Development
Shekhar Gulati
About me - Shekhar Gulati
● Heading technology at Xebia
● Experienced in building distributed systems
● My passion is building junior engineers and mentoring senior engineers
Let’s do a couple of quick surveys
How many of you have written code in last?
A. 24 hours
B. 1 week
C. 1 month
D. 1 year
How long you have been following Agile?
A. Less than one year
B. Between one and two years
C. Between two and five years
D. More than five years
How long you have been following Agile?
A. Less than one year
B. Between one and two years
C. Between two and five years
D. More than five years
I am following Agile & XP practices
since 2005 ~= 15 years
Most of you will agree that today we have the
best tools/technologies and processes to
deliver successful projects
$ 1.3 trillion
Money spent on digital transformation initiatives in 2018
Source: Forbes: Link
Research tell us that 70% of these initiatives
did not reach their stated goals
Source: McKinsey Survey: Link
$ 900 billion
Example of big organizations that failed
Source: HBR: Link
I was also involved in one such
transformation initiative and that also had a
similar fate
Top reasons why transformation initiatives failed
1. Lack of clear transformation strategy
2. Lack of teamwork
3. Initiative became limited to technology modernization initiative
4. Lack of necessary talent
Technology was not the reason why these
initiatives failed. It is the soft human aspects
that caused failure
Engineering transformation without first
transforming people is like putting “Lipstick
on the pig”
Let’s talk about technology in detail
Technology Evolution
In 2005-8, Java +
XP Programming
In 2009-12 Clean
Code + Software
Craftsmanship
In 2012-2014
NoSQL, Cloud
Since 2014 Microservices, JS,
Docker, Kubernetes, Serverless,
DDD, FP, AI/ML, etc.
Full Stack
Engineers
Modern web development
Modern Software Development
Your code
Language Runtime
Docker container
Virtual machine
Modern Software Development
Things I have not covered:
1. Your application might be
broken as services
2. You will be managing
multiple services
3. You have to learn
distributed system patterns
4. You will have container
orchestrator like Kubernetes
5. You might be developing in
multiple programming
languages
We are building complex distributed systems
We can argue whether this complexity is
accidental or essential
Fred Brooks in “No Silver Bullet” essay wrote
1. Accidental complexity relates to problems which engineers create for
themselves
2. Essential complexity is caused by the problem to be solved, and nothing
can remove it
The fact of the matter is that most of us are
building complex systems today
In 2017, a consortium was formed by IBM,
Etsy, IEX, and Ohio state university to
understand how engineers cope up with the
complexity of these systems
One view of the system
A more systems-oriented view of The System
The System includes the makers, modifiers, watchers, and
compensators
An inclusive view of The System
For developers to work with these complex
systems, we need to think beyond technology
We need to bring the human factor to
software engineering
Human Factors are properties of people
We will only cover following Psychological factors
1. Attention
2. Learning
3. Team work
4. Decision making
5. Leadership
1. Focus and Attention
The Human Attention Span
The Human Attention Span
Diffusion of developer attention across files is associated
with insecure code
Unfocussed contribution is an indicator of how much attention a developer
focus on specific files being developed
A file has high unfocussed contribution when developers of a file are also
busy modified other files
High unfocussed contribution → more insecure code
The research team analyzed popular open source code repositories like
Chromium and Apache
DARPA-funded research
Strategies and mental models for improving attention and
focus
1. Planning your work
2. Breaking things down
3. Pomodoro technique
4. Maker vs manager schedule
5. Saying No
2. Learning
We will never win the race against the
technology
We just don’t know which technical skill will
be popular tomorrow
The only way to be in this race is by building
developers with an open and learning
mindset
Strategies and mental models for building a learning
organization
1. Building junior developers in-house
2. Understand your Circle of competence
3. The magic of Compounding
4. Learning from first principles
a. Validate your assumptions
5. Share what you learn
3. Team work & Collaboration
Bigger teams are correlated with less secure code
Team size is simply number of developers
The more developers that work on a file, the more likely it is to have security
weakness and vulnerabilities
In Linux kernel, source code files with changes from nine or more developers
were 16 times more likely to have a vulnerability
DARPA-funded research
Lots of editing of other’s code is associated with vulnerabilities
Interactive churn is the number of source code
lines that a developer modifies that were last
modified by another developer
Files with a known vulnerability in their history have
more interactive churn than files without a known
vulnerability
Smaller teams are more accountable and
productive -- Two Pizza Teams
Strategies and mental models for effective team work and
collaboration
● Creating “how we work” document. Describe social norms of the team
○ Structure of the document
■ Agile process
■ Internal team communication details
■ External team communication details
■ Logistics (meeting times, seating arrangements)
■ Roles and Responsibilities
■ Conflict Resolution (emotional safety, escalation)
● Psychological safe environment
○ Let people make mistake
○ Talk about your own mistakes before criticizing the other person
○ Become interested in others
○ Hanlon Razor
○ Don’t expect people to follow rules if you don’t define them clearly
4. Decision Making
Strategies and mental models for decision making
● Overcoming cognitive biases
○ Availability bias
○ First-conclusion bias
○ Hindsight bias
○ Confirmation bias
● Second-order thinking
5. Leadership
Strategies and mental models for leadership
1. Do regular 1:1
a. Make the other person feel important
b. Let the other person do a great deal of the talking
c. Try honestly to see things from the other person's point of view
d. Begin with praise and honest appreciation
e. Have a structure to 1:1
f. Feedback loop
2. Find the right incentive
Thanks

More Related Content

Similar to AgileNCR 2019 _ The Soft Side of Software Development.pptx

10 Essentials for Effective Teams Governance
10 Essentials for Effective Teams Governance10 Essentials for Effective Teams Governance
10 Essentials for Effective Teams GovernanceChristian Buckley
 
How to become a great developer
How to become a great developerHow to become a great developer
How to become a great developerNetcetera
 
Agile Practices - eXtreme Programming
Agile Practices - eXtreme ProgrammingAgile Practices - eXtreme Programming
Agile Practices - eXtreme ProgrammingAniruddha Chakrabarti
 
An Agile Development Primer
An Agile Development PrimerAn Agile Development Primer
An Agile Development PrimerDerek Winter
 
To document or not to document? An exploratory study on developers' motivatio...
To document or not to document? An exploratory study on developers' motivatio...To document or not to document? An exploratory study on developers' motivatio...
To document or not to document? An exploratory study on developers' motivatio...Hayim Makabee
 
Agile Software Development
Agile Software DevelopmentAgile Software Development
Agile Software DevelopmentAhmet Bulut
 
Lean Software Development
Lean Software DevelopmentLean Software Development
Lean Software DevelopmentSaqib Raza
 
Career Hacks for Developers
Career Hacks for DevelopersCareer Hacks for Developers
Career Hacks for DevelopersBarElin
 
Markings of a Healthy OSS Project
Markings of a Healthy OSS ProjectMarkings of a Healthy OSS Project
Markings of a Healthy OSS ProjectClement Ho
 
Agile Requirements Agile Philly Handouts
Agile Requirements Agile Philly HandoutsAgile Requirements Agile Philly Handouts
Agile Requirements Agile Philly HandoutsDoniel Wilson
 
Agile Requirements Management
Agile Requirements Management Agile Requirements Management
Agile Requirements Management Liana Underwood
 
AgileLIVE Webinar: Build a DevOps Culture & Infrastructure for Success Part 1
AgileLIVE Webinar: Build a DevOps Culture & Infrastructure for Success Part 1AgileLIVE Webinar: Build a DevOps Culture & Infrastructure for Success Part 1
AgileLIVE Webinar: Build a DevOps Culture & Infrastructure for Success Part 1VersionOne
 
Excavating the knowledge of our ancestors
Excavating the knowledge of our ancestorsExcavating the knowledge of our ancestors
Excavating the knowledge of our ancestorsUwe Friedrichsen
 
Tips for Nonprofits- Manage Content & Collaborate in the Cloud.
Tips for Nonprofits-  Manage Content & Collaborate in the Cloud.Tips for Nonprofits-  Manage Content & Collaborate in the Cloud.
Tips for Nonprofits- Manage Content & Collaborate in the Cloud.Box
 
Collaboration Excellence: Strategies for Enabling a Social Business
Collaboration Excellence: Strategies for Enabling a Social BusinessCollaboration Excellence: Strategies for Enabling a Social Business
Collaboration Excellence: Strategies for Enabling a Social BusinessPerficient, Inc.
 

Similar to AgileNCR 2019 _ The Soft Side of Software Development.pptx (20)

10 Essentials for Effective Teams Governance
10 Essentials for Effective Teams Governance10 Essentials for Effective Teams Governance
10 Essentials for Effective Teams Governance
 
How to become a great developer
How to become a great developerHow to become a great developer
How to become a great developer
 
Agile Practices - eXtreme Programming
Agile Practices - eXtreme ProgrammingAgile Practices - eXtreme Programming
Agile Practices - eXtreme Programming
 
Agile presentation
Agile presentationAgile presentation
Agile presentation
 
Agile Technical Leadership
Agile Technical LeadershipAgile Technical Leadership
Agile Technical Leadership
 
Epm seminar presentation
Epm seminar presentationEpm seminar presentation
Epm seminar presentation
 
An Agile Development Primer
An Agile Development PrimerAn Agile Development Primer
An Agile Development Primer
 
To document or not to document? An exploratory study on developers' motivatio...
To document or not to document? An exploratory study on developers' motivatio...To document or not to document? An exploratory study on developers' motivatio...
To document or not to document? An exploratory study on developers' motivatio...
 
Agile Software Development
Agile Software DevelopmentAgile Software Development
Agile Software Development
 
Lean Software Development
Lean Software DevelopmentLean Software Development
Lean Software Development
 
Career Hacks for Developers
Career Hacks for DevelopersCareer Hacks for Developers
Career Hacks for Developers
 
Markings of a Healthy OSS Project
Markings of a Healthy OSS ProjectMarkings of a Healthy OSS Project
Markings of a Healthy OSS Project
 
Agile Requirements Agile Philly Handouts
Agile Requirements Agile Philly HandoutsAgile Requirements Agile Philly Handouts
Agile Requirements Agile Philly Handouts
 
Agile Requirements Management
Agile Requirements Management Agile Requirements Management
Agile Requirements Management
 
AgileLIVE Webinar: Build a DevOps Culture & Infrastructure for Success Part 1
AgileLIVE Webinar: Build a DevOps Culture & Infrastructure for Success Part 1AgileLIVE Webinar: Build a DevOps Culture & Infrastructure for Success Part 1
AgileLIVE Webinar: Build a DevOps Culture & Infrastructure for Success Part 1
 
Excavating the knowledge of our ancestors
Excavating the knowledge of our ancestorsExcavating the knowledge of our ancestors
Excavating the knowledge of our ancestors
 
Tips for Nonprofits- Manage Content & Collaborate in the Cloud.
Tips for Nonprofits-  Manage Content & Collaborate in the Cloud.Tips for Nonprofits-  Manage Content & Collaborate in the Cloud.
Tips for Nonprofits- Manage Content & Collaborate in the Cloud.
 
Mg6088 spm unit-4
Mg6088 spm unit-4Mg6088 spm unit-4
Mg6088 spm unit-4
 
Os Leung
Os LeungOs Leung
Os Leung
 
Collaboration Excellence: Strategies for Enabling a Social Business
Collaboration Excellence: Strategies for Enabling a Social BusinessCollaboration Excellence: Strategies for Enabling a Social Business
Collaboration Excellence: Strategies for Enabling a Social Business
 

Recently uploaded

Lucknow 💋 High Class Call Girls Lucknow 10k @ I'm VIP Independent Escorts Gir...
Lucknow 💋 High Class Call Girls Lucknow 10k @ I'm VIP Independent Escorts Gir...Lucknow 💋 High Class Call Girls Lucknow 10k @ I'm VIP Independent Escorts Gir...
Lucknow 💋 High Class Call Girls Lucknow 10k @ I'm VIP Independent Escorts Gir...anilsa9823
 
文凭办理《原版美国USU学位证书》犹他州立大学毕业证制作成绩单修改
文凭办理《原版美国USU学位证书》犹他州立大学毕业证制作成绩单修改文凭办理《原版美国USU学位证书》犹他州立大学毕业证制作成绩单修改
文凭办理《原版美国USU学位证书》犹他州立大学毕业证制作成绩单修改atducpo
 
办理国外毕业证学位证《原版美国montana文凭》蒙大拿州立大学毕业证制作成绩单修改
办理国外毕业证学位证《原版美国montana文凭》蒙大拿州立大学毕业证制作成绩单修改办理国外毕业证学位证《原版美国montana文凭》蒙大拿州立大学毕业证制作成绩单修改
办理国外毕业证学位证《原版美国montana文凭》蒙大拿州立大学毕业证制作成绩单修改atducpo
 
Understanding Relationship Anarchy: A Guide to Liberating Love | CIO Women Ma...
Understanding Relationship Anarchy: A Guide to Liberating Love | CIO Women Ma...Understanding Relationship Anarchy: A Guide to Liberating Love | CIO Women Ma...
Understanding Relationship Anarchy: A Guide to Liberating Love | CIO Women Ma...CIOWomenMagazine
 
CALL ON ➥8923113531 🔝Call Girls Mahanagar Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Mahanagar Lucknow best sexual serviceCALL ON ➥8923113531 🔝Call Girls Mahanagar Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Mahanagar Lucknow best sexual serviceanilsa9823
 
The Selfspace Journal Preview by Mindbrush
The Selfspace Journal Preview by MindbrushThe Selfspace Journal Preview by Mindbrush
The Selfspace Journal Preview by MindbrushShivain97
 
CALL ON ➥8923113531 🔝Call Girls Adil Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Adil Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Adil Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Adil Nagar Lucknow best Female serviceanilsa9823
 
9892124323, Call Girls in mumbai, Vashi Call Girls , Kurla Call girls
9892124323, Call Girls in mumbai, Vashi Call Girls , Kurla Call girls9892124323, Call Girls in mumbai, Vashi Call Girls , Kurla Call girls
9892124323, Call Girls in mumbai, Vashi Call Girls , Kurla Call girlsPooja Nehwal
 
8377087607 Full Enjoy @24/7-CLEAN-Call Girls In Chhatarpur,
8377087607 Full Enjoy @24/7-CLEAN-Call Girls In Chhatarpur,8377087607 Full Enjoy @24/7-CLEAN-Call Girls In Chhatarpur,
8377087607 Full Enjoy @24/7-CLEAN-Call Girls In Chhatarpur,dollysharma2066
 
《塔夫斯大学毕业证成绩单购买》做Tufts文凭毕业证成绩单/伪造美国假文凭假毕业证书图片Q微信741003700《塔夫斯大学毕业证购买》《Tufts毕业文...
《塔夫斯大学毕业证成绩单购买》做Tufts文凭毕业证成绩单/伪造美国假文凭假毕业证书图片Q微信741003700《塔夫斯大学毕业证购买》《Tufts毕业文...《塔夫斯大学毕业证成绩单购买》做Tufts文凭毕业证成绩单/伪造美国假文凭假毕业证书图片Q微信741003700《塔夫斯大学毕业证购买》《Tufts毕业文...
《塔夫斯大学毕业证成绩单购买》做Tufts文凭毕业证成绩单/伪造美国假文凭假毕业证书图片Q微信741003700《塔夫斯大学毕业证购买》《Tufts毕业文...ur8mqw8e
 
call girls in candolim beach 9870370636] NORTH GOA ..
call girls in candolim beach 9870370636] NORTH GOA ..call girls in candolim beach 9870370636] NORTH GOA ..
call girls in candolim beach 9870370636] NORTH GOA ..nishakur201
 
Reinventing Corporate Philanthropy_ Strategies for Meaningful Impact by Leko ...
Reinventing Corporate Philanthropy_ Strategies for Meaningful Impact by Leko ...Reinventing Corporate Philanthropy_ Strategies for Meaningful Impact by Leko ...
Reinventing Corporate Philanthropy_ Strategies for Meaningful Impact by Leko ...Leko Durda
 
LC_YouSaidYes_NewBelieverBookletDone.pdf
LC_YouSaidYes_NewBelieverBookletDone.pdfLC_YouSaidYes_NewBelieverBookletDone.pdf
LC_YouSaidYes_NewBelieverBookletDone.pdfpastor83
 
Independent Escorts in Lucknow (Adult Only) 👩🏽‍❤️‍💋‍👩🏼 8923113531 ♛ Escort S...
Independent Escorts in Lucknow  (Adult Only) 👩🏽‍❤️‍💋‍👩🏼 8923113531 ♛ Escort S...Independent Escorts in Lucknow  (Adult Only) 👩🏽‍❤️‍💋‍👩🏼 8923113531 ♛ Escort S...
Independent Escorts in Lucknow (Adult Only) 👩🏽‍❤️‍💋‍👩🏼 8923113531 ♛ Escort S...gurkirankumar98700
 
$ Love Spells^ 💎 (310) 882-6330 in West Virginia, WV | Psychic Reading Best B...
$ Love Spells^ 💎 (310) 882-6330 in West Virginia, WV | Psychic Reading Best B...$ Love Spells^ 💎 (310) 882-6330 in West Virginia, WV | Psychic Reading Best B...
$ Love Spells^ 💎 (310) 882-6330 in West Virginia, WV | Psychic Reading Best B...PsychicRuben LoveSpells
 
Breath, Brain & Beyond_A Holistic Approach to Peak Performance.pdf
Breath, Brain & Beyond_A Holistic Approach to Peak Performance.pdfBreath, Brain & Beyond_A Holistic Approach to Peak Performance.pdf
Breath, Brain & Beyond_A Holistic Approach to Peak Performance.pdfJess Walker
 
CALL ON ➥8923113531 🔝Call Girls Rajajipuram Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Rajajipuram Lucknow best sexual serviceCALL ON ➥8923113531 🔝Call Girls Rajajipuram Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Rajajipuram Lucknow best sexual serviceanilsa9823
 
CALL ON ➥8923113531 🔝Call Girls Aliganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Aliganj Lucknow best sexual serviceCALL ON ➥8923113531 🔝Call Girls Aliganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Aliganj Lucknow best sexual serviceanilsa9823
 
Call Girls in Kalyan Vihar Delhi 💯 Call Us 🔝8264348440🔝
Call Girls in Kalyan Vihar Delhi 💯 Call Us 🔝8264348440🔝Call Girls in Kalyan Vihar Delhi 💯 Call Us 🔝8264348440🔝
Call Girls in Kalyan Vihar Delhi 💯 Call Us 🔝8264348440🔝soniya singh
 

Recently uploaded (20)

Lucknow 💋 High Class Call Girls Lucknow 10k @ I'm VIP Independent Escorts Gir...
Lucknow 💋 High Class Call Girls Lucknow 10k @ I'm VIP Independent Escorts Gir...Lucknow 💋 High Class Call Girls Lucknow 10k @ I'm VIP Independent Escorts Gir...
Lucknow 💋 High Class Call Girls Lucknow 10k @ I'm VIP Independent Escorts Gir...
 
escort service sasti (*~Call Girls in Paschim Vihar Metro❤️9953056974
escort service  sasti (*~Call Girls in Paschim Vihar Metro❤️9953056974escort service  sasti (*~Call Girls in Paschim Vihar Metro❤️9953056974
escort service sasti (*~Call Girls in Paschim Vihar Metro❤️9953056974
 
文凭办理《原版美国USU学位证书》犹他州立大学毕业证制作成绩单修改
文凭办理《原版美国USU学位证书》犹他州立大学毕业证制作成绩单修改文凭办理《原版美国USU学位证书》犹他州立大学毕业证制作成绩单修改
文凭办理《原版美国USU学位证书》犹他州立大学毕业证制作成绩单修改
 
办理国外毕业证学位证《原版美国montana文凭》蒙大拿州立大学毕业证制作成绩单修改
办理国外毕业证学位证《原版美国montana文凭》蒙大拿州立大学毕业证制作成绩单修改办理国外毕业证学位证《原版美国montana文凭》蒙大拿州立大学毕业证制作成绩单修改
办理国外毕业证学位证《原版美国montana文凭》蒙大拿州立大学毕业证制作成绩单修改
 
Understanding Relationship Anarchy: A Guide to Liberating Love | CIO Women Ma...
Understanding Relationship Anarchy: A Guide to Liberating Love | CIO Women Ma...Understanding Relationship Anarchy: A Guide to Liberating Love | CIO Women Ma...
Understanding Relationship Anarchy: A Guide to Liberating Love | CIO Women Ma...
 
CALL ON ➥8923113531 🔝Call Girls Mahanagar Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Mahanagar Lucknow best sexual serviceCALL ON ➥8923113531 🔝Call Girls Mahanagar Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Mahanagar Lucknow best sexual service
 
The Selfspace Journal Preview by Mindbrush
The Selfspace Journal Preview by MindbrushThe Selfspace Journal Preview by Mindbrush
The Selfspace Journal Preview by Mindbrush
 
CALL ON ➥8923113531 🔝Call Girls Adil Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Adil Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Adil Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Adil Nagar Lucknow best Female service
 
9892124323, Call Girls in mumbai, Vashi Call Girls , Kurla Call girls
9892124323, Call Girls in mumbai, Vashi Call Girls , Kurla Call girls9892124323, Call Girls in mumbai, Vashi Call Girls , Kurla Call girls
9892124323, Call Girls in mumbai, Vashi Call Girls , Kurla Call girls
 
8377087607 Full Enjoy @24/7-CLEAN-Call Girls In Chhatarpur,
8377087607 Full Enjoy @24/7-CLEAN-Call Girls In Chhatarpur,8377087607 Full Enjoy @24/7-CLEAN-Call Girls In Chhatarpur,
8377087607 Full Enjoy @24/7-CLEAN-Call Girls In Chhatarpur,
 
《塔夫斯大学毕业证成绩单购买》做Tufts文凭毕业证成绩单/伪造美国假文凭假毕业证书图片Q微信741003700《塔夫斯大学毕业证购买》《Tufts毕业文...
《塔夫斯大学毕业证成绩单购买》做Tufts文凭毕业证成绩单/伪造美国假文凭假毕业证书图片Q微信741003700《塔夫斯大学毕业证购买》《Tufts毕业文...《塔夫斯大学毕业证成绩单购买》做Tufts文凭毕业证成绩单/伪造美国假文凭假毕业证书图片Q微信741003700《塔夫斯大学毕业证购买》《Tufts毕业文...
《塔夫斯大学毕业证成绩单购买》做Tufts文凭毕业证成绩单/伪造美国假文凭假毕业证书图片Q微信741003700《塔夫斯大学毕业证购买》《Tufts毕业文...
 
call girls in candolim beach 9870370636] NORTH GOA ..
call girls in candolim beach 9870370636] NORTH GOA ..call girls in candolim beach 9870370636] NORTH GOA ..
call girls in candolim beach 9870370636] NORTH GOA ..
 
Reinventing Corporate Philanthropy_ Strategies for Meaningful Impact by Leko ...
Reinventing Corporate Philanthropy_ Strategies for Meaningful Impact by Leko ...Reinventing Corporate Philanthropy_ Strategies for Meaningful Impact by Leko ...
Reinventing Corporate Philanthropy_ Strategies for Meaningful Impact by Leko ...
 
LC_YouSaidYes_NewBelieverBookletDone.pdf
LC_YouSaidYes_NewBelieverBookletDone.pdfLC_YouSaidYes_NewBelieverBookletDone.pdf
LC_YouSaidYes_NewBelieverBookletDone.pdf
 
Independent Escorts in Lucknow (Adult Only) 👩🏽‍❤️‍💋‍👩🏼 8923113531 ♛ Escort S...
Independent Escorts in Lucknow  (Adult Only) 👩🏽‍❤️‍💋‍👩🏼 8923113531 ♛ Escort S...Independent Escorts in Lucknow  (Adult Only) 👩🏽‍❤️‍💋‍👩🏼 8923113531 ♛ Escort S...
Independent Escorts in Lucknow (Adult Only) 👩🏽‍❤️‍💋‍👩🏼 8923113531 ♛ Escort S...
 
$ Love Spells^ 💎 (310) 882-6330 in West Virginia, WV | Psychic Reading Best B...
$ Love Spells^ 💎 (310) 882-6330 in West Virginia, WV | Psychic Reading Best B...$ Love Spells^ 💎 (310) 882-6330 in West Virginia, WV | Psychic Reading Best B...
$ Love Spells^ 💎 (310) 882-6330 in West Virginia, WV | Psychic Reading Best B...
 
Breath, Brain & Beyond_A Holistic Approach to Peak Performance.pdf
Breath, Brain & Beyond_A Holistic Approach to Peak Performance.pdfBreath, Brain & Beyond_A Holistic Approach to Peak Performance.pdf
Breath, Brain & Beyond_A Holistic Approach to Peak Performance.pdf
 
CALL ON ➥8923113531 🔝Call Girls Rajajipuram Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Rajajipuram Lucknow best sexual serviceCALL ON ➥8923113531 🔝Call Girls Rajajipuram Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Rajajipuram Lucknow best sexual service
 
CALL ON ➥8923113531 🔝Call Girls Aliganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Aliganj Lucknow best sexual serviceCALL ON ➥8923113531 🔝Call Girls Aliganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Aliganj Lucknow best sexual service
 
Call Girls in Kalyan Vihar Delhi 💯 Call Us 🔝8264348440🔝
Call Girls in Kalyan Vihar Delhi 💯 Call Us 🔝8264348440🔝Call Girls in Kalyan Vihar Delhi 💯 Call Us 🔝8264348440🔝
Call Girls in Kalyan Vihar Delhi 💯 Call Us 🔝8264348440🔝
 

AgileNCR 2019 _ The Soft Side of Software Development.pptx

  • 1. The Soft Side of Software Development Shekhar Gulati
  • 2. About me - Shekhar Gulati ● Heading technology at Xebia ● Experienced in building distributed systems ● My passion is building junior engineers and mentoring senior engineers
  • 3. Let’s do a couple of quick surveys
  • 4. How many of you have written code in last? A. 24 hours B. 1 week C. 1 month D. 1 year
  • 5. How long you have been following Agile? A. Less than one year B. Between one and two years C. Between two and five years D. More than five years
  • 6. How long you have been following Agile? A. Less than one year B. Between one and two years C. Between two and five years D. More than five years I am following Agile & XP practices since 2005 ~= 15 years
  • 7. Most of you will agree that today we have the best tools/technologies and processes to deliver successful projects
  • 8. $ 1.3 trillion Money spent on digital transformation initiatives in 2018 Source: Forbes: Link
  • 9. Research tell us that 70% of these initiatives did not reach their stated goals Source: McKinsey Survey: Link
  • 11. Example of big organizations that failed Source: HBR: Link
  • 12. I was also involved in one such transformation initiative and that also had a similar fate
  • 13. Top reasons why transformation initiatives failed 1. Lack of clear transformation strategy 2. Lack of teamwork 3. Initiative became limited to technology modernization initiative 4. Lack of necessary talent
  • 14. Technology was not the reason why these initiatives failed. It is the soft human aspects that caused failure
  • 15. Engineering transformation without first transforming people is like putting “Lipstick on the pig”
  • 16. Let’s talk about technology in detail
  • 17. Technology Evolution In 2005-8, Java + XP Programming In 2009-12 Clean Code + Software Craftsmanship In 2012-2014 NoSQL, Cloud Since 2014 Microservices, JS, Docker, Kubernetes, Serverless, DDD, FP, AI/ML, etc. Full Stack Engineers
  • 19. Modern Software Development Your code Language Runtime Docker container Virtual machine
  • 20. Modern Software Development Things I have not covered: 1. Your application might be broken as services 2. You will be managing multiple services 3. You have to learn distributed system patterns 4. You will have container orchestrator like Kubernetes 5. You might be developing in multiple programming languages
  • 21. We are building complex distributed systems
  • 22. We can argue whether this complexity is accidental or essential
  • 23. Fred Brooks in “No Silver Bullet” essay wrote 1. Accidental complexity relates to problems which engineers create for themselves 2. Essential complexity is caused by the problem to be solved, and nothing can remove it
  • 24. The fact of the matter is that most of us are building complex systems today
  • 25. In 2017, a consortium was formed by IBM, Etsy, IEX, and Ohio state university to understand how engineers cope up with the complexity of these systems
  • 26. One view of the system
  • 27. A more systems-oriented view of The System
  • 28. The System includes the makers, modifiers, watchers, and compensators
  • 29. An inclusive view of The System
  • 30. For developers to work with these complex systems, we need to think beyond technology
  • 31. We need to bring the human factor to software engineering
  • 32. Human Factors are properties of people
  • 33. We will only cover following Psychological factors 1. Attention 2. Learning 3. Team work 4. Decision making 5. Leadership
  • 34. 1. Focus and Attention
  • 37. Diffusion of developer attention across files is associated with insecure code Unfocussed contribution is an indicator of how much attention a developer focus on specific files being developed A file has high unfocussed contribution when developers of a file are also busy modified other files High unfocussed contribution → more insecure code The research team analyzed popular open source code repositories like Chromium and Apache DARPA-funded research
  • 38. Strategies and mental models for improving attention and focus 1. Planning your work 2. Breaking things down 3. Pomodoro technique 4. Maker vs manager schedule 5. Saying No
  • 40. We will never win the race against the technology We just don’t know which technical skill will be popular tomorrow
  • 41. The only way to be in this race is by building developers with an open and learning mindset
  • 42. Strategies and mental models for building a learning organization 1. Building junior developers in-house 2. Understand your Circle of competence 3. The magic of Compounding 4. Learning from first principles a. Validate your assumptions 5. Share what you learn
  • 43. 3. Team work & Collaboration
  • 44. Bigger teams are correlated with less secure code Team size is simply number of developers The more developers that work on a file, the more likely it is to have security weakness and vulnerabilities In Linux kernel, source code files with changes from nine or more developers were 16 times more likely to have a vulnerability DARPA-funded research
  • 45. Lots of editing of other’s code is associated with vulnerabilities Interactive churn is the number of source code lines that a developer modifies that were last modified by another developer Files with a known vulnerability in their history have more interactive churn than files without a known vulnerability
  • 46. Smaller teams are more accountable and productive -- Two Pizza Teams
  • 47. Strategies and mental models for effective team work and collaboration ● Creating “how we work” document. Describe social norms of the team ○ Structure of the document ■ Agile process ■ Internal team communication details ■ External team communication details ■ Logistics (meeting times, seating arrangements) ■ Roles and Responsibilities ■ Conflict Resolution (emotional safety, escalation) ● Psychological safe environment ○ Let people make mistake ○ Talk about your own mistakes before criticizing the other person ○ Become interested in others ○ Hanlon Razor ○ Don’t expect people to follow rules if you don’t define them clearly
  • 49. Strategies and mental models for decision making ● Overcoming cognitive biases ○ Availability bias ○ First-conclusion bias ○ Hindsight bias ○ Confirmation bias ● Second-order thinking
  • 51. Strategies and mental models for leadership 1. Do regular 1:1 a. Make the other person feel important b. Let the other person do a great deal of the talking c. Try honestly to see things from the other person's point of view d. Begin with praise and honest appreciation e. Have a structure to 1:1 f. Feedback loop 2. Find the right incentive