Managing People in Software Engineering, Study notes of Software Engineering

The management implications of Maslow's Hierarchy of Needs in software development staff. It also covers the best size for a team, team members, administrative leadership, technical leadership, personnel, resources, project management, meetings, and salaries. The document emphasizes the impact of work environment on productivity and how to lead, motivate, hire, reward, and retain good people. It is a useful resource for students studying software engineering and management.

Typology: Study notes

2021/2022

Uploaded on 05/11/2023

techy
techy 🇺🇸

4.8

(9)

258 documents

1 / 40

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Cornell'University'
Compu1ng'and'Informa1on'Science'
'
'
'
CS#5150#So(ware#Engineering#
People#
#
#
William#Y.#Arms#
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28

Partial preview of the text

Download Managing People in Software Engineering and more Study notes Software Engineering in PDF only on Docsity!

Cornell University

Compu1ng and Informa1on Science

CS 5150 So(ware Engineering

People

William Y. Arms

Managing People

So9ware development staff

  • Professional staff are the major cost of so(ware
  • Staff vary greatly in producFvity: => Ability => EducaFon and training => MoFvaFon => InteracFon with colleagues and leaders
  • Work environment has an impact on producFvity How do you lead, mo1vate, hire, reward, and retain good people?

Maslow's Hierarchy of Needs

Self-­‐actualizaFon Esteem needs Social needs Safety needs Physiological needs

Management ImplicaFons of Maslow's Hierarchy

Physiological needs: Food, water, breathing, sleep Safety needs: Security of person, health, family Social needs: Friendship, colleagues, inFmacy Esteem needs: Self esteem, confidence, achievements, respect of others Self-­‐actualiza1on: The opportunity to reach full potenFal.

AdministraFon

Personnel Assigning tasks Hiring, promoFng, etc. Resources Budgets Space, faciliFes Equipment Project management RelaFonships with other teams, management, and clients Project plan and schedule

Group Working

interacFon with others

non-­‐producFve 30% working alone How 1me is spent vacaFons, training, administraFon, etc.

CommunicaFon

Management of teams dispersed across loca1ons

  • CreaFng a team sense Example: Tektronics
  • Face-­‐to-­‐face meeFngs Occasional but regular, e.g., once or twice per year EnFre team, including support staff
  • Remote meeFngs on a regular schedule (e.g., conference calls) Technical and administraFve groups
  • Clear division of responsibility between locaFons

MeeFngs

Mee1ngs require leadership and a willingness to be led

  • Time keeping -­‐-­‐ do not be late; end on Fme or earlier
  • Clear purpose for meeFng, with agenda e.g., progress reports, design review, budget
  • PreparaFon -­‐> materials circulated in advance with Fme to prepare -­‐> studied by all parFcipants
  • FacilitaFon during meeFng -­‐> opportuniFes for all to speak -­‐> summing up to check agreement
  • Notes taken during meeFng (scribe) and circulated promptly

Hiring

Produc1vity is a combina1on of:

  • AnalyFc ability
  • Verbal ability and communicaFon skills
  • EducaFon
  • Adaptability and inquisiFveness
  • Personality and aqtude
  • Plarorm experience
  • Programming language experience
  • ApplicaFon domain knowledge

Staff RetenFon

Technically interes1ng work up to date hardware and so(ware opportuniFes to learn and experiment Feeling of apprecia1on management recogniFon money, benefits, and promoFon Working condi1ons space, light, noise, parking flexibility Organiza1onal dynamics

To Build and Maintain a Strong Team

Everybody has a different style. In my experience:

  • Be consistent in how you relate to people
  • Be open about problems and how you are addressing them
  • Explain your decisions
  • Do not have secrets
  • Ask for advice and help
  • Be construcFve in criFcism of people outside your team
  • Support and amend social events Set high standards!

Firmness

Managers must be firm when needed:

  • Assignment of tasks must be equitable and open; everybody will have to tackle some of the dreary tasks
  • Carrots are bemer than sFcks, but poor performance must be addressed.
  • Nobody is indispensable; nobody should be allowed to think that they are indispensable

How to be Led

As a junior member of a team, what can you do to make it produc1ve?

  • Follow the team's style of working
  • Understand the context of your work
  • Make pracFcal suggesFons
  • Ask for help if you need it
  • Accept less interesFng tasks
  • Amend social events
  • Do good work

An Old Exam QuesFon

As leader of a so(ware development team, you have hired two new members of staff. (i) The first has just graduated from the Cornell M.Eng. program in computer science, with no work experience. (ii) The second has five years' experience in developing advanced applicaFons, but has never worked on this type of computer. Some of the development tasks are more interesFng than others. Some tasks are harder than others. Some are more Fme criFcal than others. What approach would you use in alloca1ng the tasks to these two new members?