Algunas ideas, inspiraciones y referencias
Si todavía sabes poco sobre los planes de desarrollo, empieza por leer este, este y este artículo. Luego vuelve aquí para hablar de los retos específicos de los desarrolladores de software :)
Ahora que ya tienes la información necesaria para crear grandes PDI, ¡vamos a ponernos manos a la obra!
Es muy fácil elaborar PDIs para desarrolladores que se centran únicamente en los aspectos técnicos de las nuevas tecnologías. Seguramente, al pensar en el PDI de un líder, las áreas de desarrollo que aparecen son:
-
Más información sobre Ruby-on-Rails
-
Aprender lo básico sobre Amazon AWS y cómo desplegar una aplicación sencilla
Sin embargo, más difícil es desarrollar los comportamientos subyacentes del liderado, que a menudo pueden parecer "subjetivos" o "confusos" para los ingenieros, científicos y analistas. Para ello, hemos decidido hacer este post con algunos comportamientos que pueden servir de inspiración para crear PDI.
Áreas de desarrollo
A continuación, enumeramos algunas posibles áreas de desarrollo que son soft skills relevantes para los desarrolladores de software:
-
Anticiparse a las necesidades del cliente
-
Centrarse en la velocidad y la fluidez del código
-
Tomar decisiones sólidas
-
Contribuir con visión técnica a la evolución del producto
-
Esforzarse por hacer lo posible y lo imposible
-
Comprender la visión holística
-
Diseñar soluciones/escribir código limpio y elegante
-
Producir poca deuda técnica
-
Entregar código seguro y escalable
-
Intente convertirse en una referencia técnica en su área de trabajo
-
Diagnosticar eficazmente errores complejos
-
Conocer bien todos los componentes de la pila
-
Contribuir en áreas distintas a la suya principal
Cada área de desarrollo, como vimos en los artículos anteriores, debe contener un plan de acción lo más específico posible que establezca el Qué, el Cuándo, el Cómo y el Dónde de las acciones a realizar por el titular del PDI para lograr el desarrollo deseado. Así, las experiencias, la participación en proyectos, las lecturas, los cursos, los talleres y la tutoría deben estar previstos en el plan de forma específica.
Tareas de desarrollo
Hemos separado las tareas de desarrollo en 3 grandes categorías inspirándonos en el modelo 70/20/10 de desarrollo organizativo. No hay que seguir los números al pie de la letra, pero las proporciones tienen mucho sentido: abusar de las tareas basadas en la experiencia en el trabajo, ya que son las más eficientes y prácticamente no tienen coste. Ya basta de teoría y pasemos a las ideas de las tareas, primero en la categoría de Experiencias:
Nível Básico
-
Act as a developer on at least one project
-
Act as a backup construction lead on at least one project
-
Act as a backup design lead on at least one project
-
Develop unit or module level test cases for a project
-
Write one or more designs
-
Participate in the release process of a project
-
Perform personal planning and tracking on a project
-
Participate in a code review
-
Participate in a design review
-
Participate in an informal review
-
Participate in an inspection
-
Review a project's documentation including the quality plan, test plans, test cases, project plans, schedules, and work breakdown structures
Nível Intermedio
-
Create at least six different production modules with automated unit tests
-
Create a test design for a subsystem
-
Lead collaborative construction efforts
-
Lead a performance profiling / tuning effort
-
Act as a construction lead on at least one major project
-
Act as backup quality lead on at least one project
-
Act as backup planning and tracking lead on at least one project
-
Participate in a test focused role on a project
-
Participate in the elicitation and specification of requirements
-
Participate in the creation of a project charter and project plan
-
Participate in the creation of a project estimate
-
Participate in the creation of a use case specification
-
Participate in the review of a test plan and test cases, requirements specifications, and project plans
Nível Avanzado
-
Act as design lead on at least one major project
-
Write two or more designs on a major project
Sugerencias de aprendizaje
Ahora vamos a ver algunas lecturas que se encuentran en la categoría de "Diseño" y que también pueden servir de guía para el desarrollo del dueño del PDI en las áreas discutidas:
-
Code Complete, 2nd Edition, Steve McConnell
-
Programming Pearls, 2nd Edition, Jon Bentley
-
Refactoring, Martin Fowler
-
Applying UML & Patterns, Craig Larman
-
The Art of Testing, Glenford Myers
-
Conceptual Blockbusting, James Adams
-
Software Creativity, Robert Glass
-
Mastering the Requirements Process, Robertson and Robertson
-
User Stories Applied, Mike Cohn
-
Writing Efficient Programs, John Bentley
-
Writing Solid Code, Steve Maquire
-
Software Implementation, Michael Marcotty
-
More Programming Pearls, John Bentley
-
Testing Object-Oriented Systems, Robert Binder
-
Rapid Development, Steve McConnell
-
Design Patterns, Erich Gamma et all
-
Object Oriented Software Construction, Bertrand Meyer
-
Object Oriented Analysis and Design, Grady Booch
-
Software Architecture in Practice, Bass et all
-
Balancing Agility with Discipline, Boehm and Turner
Importante: evita establecer la lectura de libros integrales como tarea de desarrollo - el tamaño del desafío puede desencorajar el dueño del PDI. En lugar de los libros enteros, elije capítulos relevantes que puedan ser leídos en algunas horas, y establece reuniones rápidas para discutir el tema y "formalizar" lo aprendido.