28
Soft Skills Soft Skills for SW Engineers for SW Engineers Fokhruz Zaman Fokhruz Zaman Sep 03, 2008 Sep 03, 2008

Soft.skills.for.SW.engineers.1

Embed Size (px)

DESCRIPTION

Soft Skills for Software Engineers -- Part 1

Citation preview

Page 1: Soft.skills.for.SW.engineers.1

Soft SkillsSoft Skillsfor SW Engineersfor SW Engineers

Fokhruz ZamanFokhruz Zaman

Sep 03, 2008Sep 03, 2008

Page 2: Soft.skills.for.SW.engineers.1

03.sep.0803.sep.08fz.compile.soft.skills.1fz.compile.soft.skills.1

22

Why learn soft skills ?Why learn soft skills ?

Google Search Engine found Google Search Engine found 189,000 matches for “189,000 matches for “SoftSoft SkillsSkills for a for a SoftwareSoftware EngineerEngineer””

Employers often get biased Employers often get biased towards “Attitude” rather than towards “Attitude” rather than “Aptitude”“Aptitude”

SW Engg is essentially “SOFT” SW Engg is essentially “SOFT”

Page 3: Soft.skills.for.SW.engineers.1

03.sep.0803.sep.08fz.compile.soft.skills.1fz.compile.soft.skills.1

33

Soft TopicsSoft Topics

TEAM Collaboration SkillsTEAM Collaboration Skills Thinking SkillsThinking Skills

Creative Skills (6 THT)Creative Skills (6 THT) Time Management SkillsTime Management Skills

Meeting Management SkillsMeeting Management Skills Write Everything !Write Everything !

Communication SkillsCommunication Skills Interpersonal SkillsInterpersonal Skills Self-Reflection / IntrospectionSelf-Reflection / Introspection

Page 4: Soft.skills.for.SW.engineers.1

03.sep.0803.sep.08fz.compile.soft.skills.1fz.compile.soft.skills.1

44

6 soft skills for every hard-6 soft skills for every hard-nosed professionalnosed professional

1.1. Interpersonal skillsInterpersonal skills

2.2. Team SpiritTeam Spirit

3.3. Social GraceSocial Grace

4.4. Business EtiquetteBusiness Etiquette

5.5. Negotiation Skills Negotiation Skills

6.6. Behavioral Traits, such as:Behavioral Traits, such as:1.1. Attitude, Attitude,

2.2. Motivation, and Motivation, and

3.3. Time managementTime management

Page 5: Soft.skills.for.SW.engineers.1

03.sep.0803.sep.08fz.compile.soft.skills.1fz.compile.soft.skills.1

55

Soft skills “hard-wired” ?Soft skills “hard-wired” ?

Like you learned brushing your Like you learned brushing your teeth at childhood teeth at childhood ……

40-days continuous practice 40-days continuous practice makes it a habit makes it a habit

Write ! Write !! Write !!!Write ! Write !! Write !!! Use Hard-bound fat “ruler” Use Hard-bound fat “ruler”

Notebooks Notebooks Hear WIIFM Radio … Hear WIIFM Radio …

Page 6: Soft.skills.for.SW.engineers.1

03.sep.0803.sep.08fz.compile.soft.skills.1fz.compile.soft.skills.1

66

Presenter IntroPresenter Intro Born in 1965, Bangladesh.Born in 1965, Bangladesh. Working in the Global Software Development Industry Working in the Global Software Development Industry

since late 1988.since late 1988. 20012001–Present Millennium Information Solution–Present Millennium Information Solution

DhakaDhaka CTO & Co-FounderCTO & Co-Founder

19991999, Sep, Sep–2001 –2001 Horizon SoftwareHorizon Software DhakaDhaka CTO & Co-FounderCTO & Co-Founder

1997–July,99 1997–July,99 Bell Atlantic (Nynex) S&T AsiaBell Atlantic (Nynex) S&T AsiaBangkokBangkok Manager, Software & NetworkManager, Software & Network

1995–97 Experty Technical Equipment Co.1995–97 Experty Technical Equipment Co. BangkokBangkok R&D ManagerR&D Manager

1993–94 International Centre for Population 1993–94 International Centre for Population DhakaDhaka

Software Developer & Network AdministratorSoftware Developer & Network Administrator 1988–92 Machine Dialogue1988–92 Machine Dialogue DhakaDhaka

Software Developer & ManagerSoftware Developer & Manager

Page 7: Soft.skills.for.SW.engineers.1

03.sep.0803.sep.08fz.compile.soft.skills.1fz.compile.soft.skills.1

77

Software ? SW Engg ??Software ? SW Engg ??

SoftwareSoftware A Thought ProductA Thought Product A TEAM SportA TEAM Sport

SW Engg SW Engg (partial view)(partial view) The V-ModelThe V-Model TDD – the philosophyTDD – the philosophy

Page 8: Soft.skills.for.SW.engineers.1

03.sep.0803.sep.08fz.compile.soft.skills.1fz.compile.soft.skills.1

88

TEAM Collaboration SkillsTEAM Collaboration Skills

TEAM :TEAM : Together Together EveryoneEveryone Achieves Achieves MoreMore

““Lone Super-Hero” days are goneLone Super-Hero” days are gone With proper TEAM-spirit, and With proper TEAM-spirit, and

discipline; ordinary individuals can discipline; ordinary individuals can make extra-ordinary TEAMsmake extra-ordinary TEAMs

Pair Programming …Pair Programming …

Page 9: Soft.skills.for.SW.engineers.1

03.sep.0803.sep.08fz.compile.soft.skills.1fz.compile.soft.skills.1

99

Thinking SkillsThinking Skills

The 6 Thinking HatsThe 6 Thinking Hats WhiteWhite RedRed YellowYellow BlackBlack GreenGreen BlueBlue

Page 10: Soft.skills.for.SW.engineers.1

03.sep.08 10

Thinking Skills: Benefits Of The Six Thinking Hat Framework

Parallel

Saves Time

Improves Creativity & Innovation

Adversarial

Fosters Collaborative Thinking

Page 11: Soft.skills.for.SW.engineers.1

03.sep.08 11

Thinking Skills: The Originator

Dr. Edward de Bono

• M.D., Ph.D., (philosophy, medicine & psychology), Rhodes scholar

• World-renowned consultant to business, governments, schools and industry

• Author of 62 books in 40 languages

• Originator of Six Thinking Hats, Lateral Thinking and Direct Attention Thinking Tools

Page 12: Soft.skills.for.SW.engineers.1

03.sep.08 12

Thinking Skills: 6 THT: The Basics

• There are six different imaginary hats that you can put on or take off.

• Think of the “hats” as thinking icons.

• Each hat is a different color and represents a different type or mode of thinking.

• We all wear the same hat (do the same type of thinking) at the same time.

• When we change hats - we change our thinking.

Page 13: Soft.skills.for.SW.engineers.1

03.sep.08 13

Blue HatBlue HatManaging The Thinking

Setting The FocusMaking Summaries

Overviews ConclusionsAction Plans

Green HatGreen HatCreative Thinking

Possibilities Alternatives New Ideas New Concepts

Overcome Black Hat Problems & Reinforce Yellow Hat Values

Black HatBlack Hat

Why It May Not WorkCautions DangersProblems Faults Logical Reasons Must Be Given

Yellow HatYellow HatWhy It May Work

Values & Benefits(Both Known & Potential)

The Good In ItLogical Reasons Must Be Given

Red HatRed HatFeelings & Intuition

Emotions Or Hunches “At This Point”

No Reasons or JustificationKeep It Short

White HatWhite HatInformation & Data

Neutral & ObjectiveChecked & Believed Facts

Missing Information & Where To Source It

FOCUSFOCUS

Page 14: Soft.skills.for.SW.engineers.1

03.sep.08 14

White HatWhite HatInformation & Data

Neutral & ObjectiveChecked & Believed Facts

Missing Information & Where To Source It

Red HatRed HatFeelings & Intuition

Emotions Or Hunches “At This Point”

No Reasons or JustificationKeep It Short

Black HatBlack Hat

Why It May Not WorkCautions DangersProblems Faults Logical Reasons Must Be Given

Yellow HatYellow HatWhy It May Work

Values & Benefits(Both Known & Potential)

The Good In ItLogical Reasons Must Be Given Green HatGreen Hat

Creative ThinkingPossibilities Alternatives New Ideas New Concepts

Overcome Black Hat Problems & Reinforce Yellow Hat Values

Blue HatBlue HatManaging The Thinking

Setting The FocusMaking Summaries

Overviews ConclusionsAction Plans

FOCUSFOCUS

Page 15: Soft.skills.for.SW.engineers.1

03.sep.08 15

Thinking Skills: Facilitator’s Role

• Define the focus of your thinking• Plan the sequence and timing of the thinking• Ask for changes in the thinking if needed• Handle requests from the group for changes

in the thinking• Form periodic or final summaries of the

thinking for consideration by the team

x

Page 16: Soft.skills.for.SW.engineers.1

03.sep.08 16

Thinking Skills: Participant’s Role

• Follow the lead of trained Six Thinking Hats facilitator

• Stick to the hat (type of thinking) that is in current use

• Try to work within the time limits

• Contribute honestly & fully under each of the hats

Page 17: Soft.skills.for.SW.engineers.1

03.sep.0803.sep.08fz.compile.soft.skills.1fz.compile.soft.skills.1

1717

Time Management SkillsTime Management Skills

Meeting Management SkillsMeeting Management Skills Write Everything !Write Everything !

1.1. Plan in the Morning – 15 minsPlan in the Morning – 15 mins

2.2. Make a Laundry List of TasksMake a Laundry List of Tasks

3.3. Set a Time Range for each TaskSet a Time Range for each Task

4.4. Set Task Priority LevelsSet Task Priority Levels

5.5. Review Plan in the Evening – 15 Review Plan in the Evening – 15 minsmins

Page 18: Soft.skills.for.SW.engineers.1

03.sep.0803.sep.08fz.compile.soft.skills.1fz.compile.soft.skills.1

1818

Time Management SkillsTime Management Skills

SlSl Task DescriptionTask Description TimeTime PriorityPriority

11 Check MailsCheck Mails 9:00 AM 9:00 AM to 9:30 to 9:30 AMAM

TopTop

Page 19: Soft.skills.for.SW.engineers.1

03.sep.0803.sep.08fz.compile.soft.skills.1fz.compile.soft.skills.1

1919

Communication SkillsCommunication Skills

Interpersonal SkillsInterpersonal Skills Self-Reflection / IntrospectionSelf-Reflection / Introspection Pair Programming .. ?Pair Programming .. ? Clarity in Presenting …Clarity in Presenting … Well-thought-out argumentsWell-thought-out arguments Conclusions …Conclusions …

Page 20: Soft.skills.for.SW.engineers.1

03.sep.0803.sep.08fz.compile.soft.skills.1fz.compile.soft.skills.1

2020

Social GraceSocial Grace

Friendly ?Friendly ? Handsome or Beautiful ??Handsome or Beautiful ?? Well-groomed ?Well-groomed ? Soft-spoken ?Soft-spoken ? A skill for dealing with people and society; A skill for dealing with people and society;

The ability to fit into polite society and The ability to fit into polite society and behave properly and with etiquettebehave properly and with etiquette

Page 21: Soft.skills.for.SW.engineers.1

03.sep.0803.sep.08fz.compile.soft.skills.1fz.compile.soft.skills.1

2121

Business EtiquetteBusiness Etiquette

Learning the skills of proper Learning the skills of proper etiquette….etiquette….

Manners … Manners … Intercultural communication …Intercultural communication … Respect Others…Respect Others… YVP .. NOT .. IVP …YVP .. NOT .. IVP …

Page 22: Soft.skills.for.SW.engineers.1

03.sep.0803.sep.08fz.compile.soft.skills.1fz.compile.soft.skills.1

2222

Negotiation Skills - 1Negotiation Skills - 1

Goals: Goals: what do you want to get out of the negotiation? What do you what do you want to get out of the negotiation? What do you think the other person wants?think the other person wants?

Trades: Trades: What do you and the other person have that you can trade? What do you and the other person have that you can trade? What do you each have that the other wants? What are you each What do you each have that the other wants? What are you each comfortable giving away? comfortable giving away?

Alternatives: Alternatives: if you don’t reach agreement with the other person, what if you don’t reach agreement with the other person, what alternatives do you have? Are these good or bad? How much does it alternatives do you have? Are these good or bad? How much does it matter if you do not reach agreement? Does failure to reach an matter if you do not reach agreement? Does failure to reach an agreement cut you out of future opportunities? And what alternatives agreement cut you out of future opportunities? And what alternatives might the other person have?might the other person have?

Relationships: Relationships: what is the history of the relationship? Could or should what is the history of the relationship? Could or should this history impact the negotiation? Will there be any hidden issues this history impact the negotiation? Will there be any hidden issues that may influence the negotiation? How will you handle these? that may influence the negotiation? How will you handle these?

Expected outcomes: Expected outcomes: what outcome will people be expecting from this what outcome will people be expecting from this negotiation? What has the outcome been in the past, and what negotiation? What has the outcome been in the past, and what precedents have been set? precedents have been set?

The consequences: The consequences: what are the consequences for you of winning or what are the consequences for you of winning or losing this negotiation? What are the consequences for the other losing this negotiation? What are the consequences for the other person? person?

Power: Power: who has what power in the relationship? Who controls who has what power in the relationship? Who controls resources? Who stands to lose the most if agreement isn’t reached? resources? Who stands to lose the most if agreement isn’t reached? What power does the other person have to deliver what you hope for? What power does the other person have to deliver what you hope for?

Possible solutions: Possible solutions: based on all of the considerations, what possible based on all of the considerations, what possible compromises might there be?compromises might there be?

Page 23: Soft.skills.for.SW.engineers.1

03.sep.0803.sep.08fz.compile.soft.skills.1fz.compile.soft.skills.1

2323

Negotiation Skills – 9 TipsNegotiation Skills – 9 Tips

1.1. Remember you're the expert Remember you're the expert 2.2. Negotiation is a two-way street Negotiation is a two-way street 3.3. Hold firm to your principles Hold firm to your principles 4.4. Know when to walk away Know when to walk away 5.5. Don't be intimidated Don't be intimidated 6.6. Keep your ear to the ground Keep your ear to the ground 7.7. Stay consistent Stay consistent 8.8. Don't celebrate until the contract Don't celebrate until the contract

is signed is signed 9.9. Respect the processRespect the process

Page 24: Soft.skills.for.SW.engineers.1

03.sep.0803.sep.08fz.compile.soft.skills.1fz.compile.soft.skills.1

2424

Behavioral TraitsBehavioral Traits

Attitude, Attitude, Motivation, and Motivation, and Time managementTime management

Page 25: Soft.skills.for.SW.engineers.1

03.sep.0803.sep.08fz.compile.soft.skills.1fz.compile.soft.skills.1

Page 26: Soft.skills.for.SW.engineers.1

03.sep.0803.sep.08fz.compile.soft.skills.1fz.compile.soft.skills.1

2626

Be your own trainer !Be your own trainer !

Be a part of TEAM activitiesBe a part of TEAM activities Get your SWOT from close PeersGet your SWOT from close Peers Manage yourself to manage your Manage yourself to manage your

TIME !TIME ! Introspect on how you react to Introspect on how you react to

feedbackfeedback How good are you at critiquing ?How good are you at critiquing ? Live consciouslyLive consciously

Page 27: Soft.skills.for.SW.engineers.1

03.sep.08 27

Software Development LifeCycle (SDLC)

ConceptGather

Requirements

Model Requirements

High Level Design

Impl. Design

Development

Testing

Launch

Maintenance

Avg projects spend 10% effort on req gathering and modeling. Successful projects spend 28%. - Detailed SRS - Use case modeling - Screen UI mockups

Requirements keep coming throughout the lifecycle and have to be managed. - Project contract - Acceptance criteria

Must decide baseline architecture

Test-driven development

Establish the business case for the software. - Target audience - What problem it will solve - How it will solve it – high level

Test planning, execution and defect correction. - Test cases - Test against expected results - Bug tracking software - Test automation

Software configuration management - Version control - Release management

One study found that 54% of all the errors were discovered after unit testing was complete, and that 45% of these were requirements or design errors.

Page 28: Soft.skills.for.SW.engineers.1

03.sep.0803.sep.08fz.compile.soft.skills.1fz.compile.soft.skills.1

2828

References / References / AcknowledgementsAcknowledgements Six Thinking HatsSix Thinking Hats® ®

A Framework For Parallel Thinking In TeamsA Framework For Parallel Thinking In Teams

Resources UnlimitedResources Unlimited

800.278.1292 or 515.278.1292800.278.1292 or [email protected]@ResourcesUnlimited.com

www.ResourcesUnlimited.comwww.ResourcesUnlimited.com

InternetInternet http://www-128.ibm.com/developerworks/rational/library/sep06/pollice/index.html http://ia.rediff.com/getahead/2005/jun/30soft.htm And other references .. URLS …