martes, enero 31, 2012

Tareas clásicas de un Project Manager y su relación con Scrum

Hace poco me encontré con un interesante artículo de Pete Deemer en Scrum Alliance donde el autor lista un gran numero de tareas de un Project Manager tradicional y luego comenta cuales son compatibles y cuales entran en conflicto con Scrum. Disfruten la lista!


Tareas Compatibles con Scrum: 

  1. Help remove blocks that the Team is not able to resolve by themselves: While the ScrumMaster does this hour-to-hour / day-to-day, managers will need to focus on removing more systemic or companywide blocks. These are often the most vexing problems in the organization, and will require the management’s influence, authority, or spending power to overcome. In The Enterprise and Scrum, Ken Schwaber recommends creating an enterprise transition team of managers and executives who are responsible for evolving the organization based on a backlog of impediments.
  2. Provide advice and input to the Team on technical difficulties that come up. Managers should be available to give advice or assistance whenever the Team asks for it.
  3. Do regular 1:1 meetings with Team-members, to provide coaching and mentoring: Managers should spend 1:1 time with Team-members, at a frequency that feels right. This is not a task update meeting – this is time for coaching and mentorship. Some managers like to do this sitting side-by-side, writing code!
  4. Give input on how to make features better: This input goes directly to the Product Owner, typically during the Sprint Review.
  5. Stay abreast of developments in tools, technologies, and techniques the Team is using: A very important and often neglected activity. Managers are can sometimes be "frozen in time" at the technology and development practices that were current when they were last doing actual development themselves.
  6. Plan training and other skills development for Team-members: Managers should think carefully about areas where the Team’s skills could use development, or capabilities the Team will need to have to handle upcoming Product Backlog items.
  7. Stay up to date on industry news and developments: Again, an important and often neglected activity.
  8. Anticipate tools, skills and other future needs: Another important and often neglected activity. Be sure to get input from the Team.
  9. Plan and manage budgets and financials: A must do for all project managers.
  10. Give input on what features / functionality the Team should build: This input goes directly to the Product Owner.
  11. Do performance evaluations and provide feedback to Team-members: This is a necessity within most organizations (despite well-documented flaws in the methodologies typically used). Managers should base their evaluations on their own observations and well as on feedback from the employees’ fellow Team-members.
  12. Do career-development and career planning with Team-members Career: opportunities are one of the most significant valuable forms of compensation people receive from their employer.
  13. Recruit, interview and hire new Team-members: Some of the best – and in other cases, worst – management actions are hiring decisions. Great hires pay dividends every single day they are employed – and poor hires are an invisible daily “tax” on the Team’s ability to deliver business value.
  14. Remove Team-members who are not able to perform well within the Team: If even after extensive coaching a Team-member is not able to contribute, work harmoniously with other Team-members, or perform at the level required, they may need to be moved off the Team, or out of the organization. Typically managers will need to guide this process, in coordination with HR.

Tareas en conflicto con Scrum:

  1. Decide what work needs to be done: The Product Owner decides the features and functionality that needs to be built, and the Team determines what tasks are necessary to deliver this.
  2. Assign the work to Team members: The Team does this itself, during the Sprint.
  3. Keep track of what everyone on the Team is doing: The Team does this, using the Daily Scrum Meeting and the Sprint Backlog.
  4. Make sure the Team gets their work done: The Team is responsible for this.
  5. Make commitments to management about how much Team can do by a certain date: The Product Owner measures or estimates the Team’s velocity, and makes forecasts of how much of the Product Backlog the Team can complete by a specified date. If the Product Owner makes a hard-date release commitment, the Product Owner is responsible for including the necessary scope and schedule buffer to achieve it.
  6. Be responsible for the Team meeting the commitments I’ve made to management: The Product Owner is responsible for making decisions about what to do if velocity is lower than anticipated – either moving the release date, removing Product Backlog items, or simplifying Product Backlog items.
  7. Do weekly status update report for management: Not needed in Scrum. If management wants to know how the project is going, they ask the Product Owner for the Release Burndown chart.
  8. Do weekly Team staff meeting: Not needed in Scrum. The Team updates each other daily, and managers can get an update on the Sprint in the Sprint Review Meeting.

jueves, enero 26, 2012

Mensajeria instantanea recargada: HipChat

Hoy les voy a comentar sobre Hipchat, una herramienta de mensajería instantánea que ya utilice con dos clientes distintos y realmente me parece muy útil.

Hipchat es un servicio de chat privado diseñado para empresas o equipos de trabajo. Existe una herramienta web, un cliente para el escritorio y también una herramienta móvil para Android y iPhone. 

Uno puede darle acceso a quien quiera y crear salas de chat públicas y privadas persistentes, donde se pueden compartir archivos e imágenes. También se pueden tener chats privados con cualquier persona. Se pueden configurar un sinfín de métodos de notificaciones, también te permite comunicarte por video y voz. Es muy valioso para equipos distribuidos, y mucho mejor que Microsoft Communicator o Google Talk para empresas.

En mi experiencia, está muy bueno tener una sala privada para cada equipo, donde uno se puede poner al tanto de todo lo que pasa en el equipo. Una sala de esparcimiento para todos los equipos también suma. Les dejo un video introductorio para conocer más sobre HipChat:  




Lo único negativo es que es una aplicación paga, pero para una empresa el costo debería ser insignificante. Les aseguro que esta buena, sino no haría publicidad gratuita de esta aplicación. Si alguien sigue pensando que el chat en el trabajo es una pérdida de tiempo, abra los ojos!

lunes, enero 16, 2012

Smart and Gets Things Done

"Smart and Gets Things Done: Joel Spolsky's Concise Guide to Finding the Best Technical Talent" de Joel Spolsky tiene un título bastante largo y descriptivo sobre lo que trata el libro. Este es el cuarto libro del autor (famoso por su blog) que leo, luego de "Joel on Software", "More Joel on Software" y "The Best Software Writing I" (que en realidad es una compilación de artículos).

El autor continua con su característico humor y con su forma muy amena de escribir que hace leer este libro una experiencia muy placentera y divertida. 

Realmente conseguir buenos desarrolladores es difícil. El autor nos comenta que fue aprendiendo durante su experiencia profesional en el armado de una empresa y que es necesario para lograrlo. Comienza explicándonos que un muy buen desarrollador es diez veces mejor que un desarrollador normal, y que para diferenciarse como empresa hay que conseguir a esos pocos talentosos que pueden dar un valor extra. 

Luego da sugerencias de cómo conseguir esos desarrolladores y de cómo atraerlos. También da ideas de como seleccionar a alguien por un CV y de cómo filtrara candidatos mediante una entrevista telefónica. Otro buen consejo que nos da es presentar un ejercicio de desarrollo al candidato en una entrevista presencial, esto es muy importante, porque hay gente que puede deslumbrarte por sus conocimientos teóricos pero no puede hacer ni un Hello World en la práctica. 

Como PM, es muy importante conocer todo esto porque el éxito de cualquier proyecto depende de tener un buen equipo, así que recomiendo este libro para interiorizarse sobre el tema.