Especializate en el cambio

14/07/2008

Muchas veces he hablado, casi discutido, con compañeros de mi actual trabajo sobre el tema: ¿Es mejor conocer mucho una tecnología o conocer bastante de muchas? En un principio mi posicionamiento era el primero, pero esta cambiando poco a poco y temo que pronto me convertiré en un acérrimo seguidor de la segunda tesis, o de algo muy parecido.

Hace unos meses, un compañero (X) anunciaó su marcha de la empresa, se iba a una “start-up” donde ahora hace las veces de CTO y decide cuales son las tecnologías que se utilizan en sus productos. Nos hablaba a diario de sus expectativas en la nueva empresa (sin contarnos nada de la nueva empresa, por aquello de que no les robaran la idea, de lo que tanto he hablado) y comentaba las tecnologías que quería aplicar. Un dia era Ruby, otro Python o Amazon S3. Nos enseñó vídeos de demostración sobre ellas y nos ilustró sobre sus maravillas.

Otro compañero (Y), escéptico, partidario claro de la primera tesis. Alegaba que Java le había dado, y le da, de comer desde hace años. Disfruta como un enano con cada framework que descubre, aprende a usar Spring, Hibernate y demás si son necesarios en su proyecto.

Podriamos decir que Y es más reticente que X al cambio, pero que también lo afronta pero basandose en una tecnologia que ya sabe, lo que le da cierta seguridad. En cambio X lo afronta desde cero, sin las ataduras o restricciones que le confiere una tecnologia concreta. A mi parecer X sigue un camino más acertado que Y.

Desde que X se marcho le he dado muchas vueltas a la cabeza al tema, lo he hablado con Siddharta y consultado con la almohada hasta llegar a la tesis de que lo mejor no es especializarse en una tecnología ni conocer muchas, sinó ser capaz de encontra la tecnologia mejor para solucionar un problema concreto, aprenderla y utilizarla, es decir:

La mejor alternativa es especializarse en el cambio.

La clave es conocer lo suficiente las tecnologias disponibles para saber cual es la mejor tecnologia a aplicar. No se debe conocer hasta la última opcion del compilador o el último hack para utilizar una tecnologia (hoy en dia tenemos a Google para que nos ilustre en estas cosas), es mucho más productivo saber que para hacer un Web para un ayuntamiento es mejor usar Drupal que empezar a picar código Java sin pensar, por poner un ejemplo.

Entradas relacionadas

Hay 11 comentario en este artículo:

  1. 14/07/2008Bernie say:

    Yo creo que depende del tipo de trabajo que tengas necesitarás saber, o bien, más de muchas tecnologías, o mucho sobre una tecnología y poco de muchas. El primer caso encaja más en un consultor IT y el segundo caso, en un desarrollador.

  2. 14/07/2008Pau say:

    Lectura recomendada: “¿Quien se ha llevado mi queso?” de Spencer Johnson

  3. 15/07/2008luis say:

    Bernie: hay muchas empresas de tecnología (no señalo a nadie) en que los programadores son considerados como medios pica-teclas sin cabeza, que deben cumplir sin aportar. Esta actitud, desde mi punto de vista, no es la correcta. Creo que, por la idiosincrasia de la profesión, hasta el miembro del equipo menos cualificado o con menos experiencia puede conocer herramientas que permitan solucionar un problema de una forma optima. Se debería considerar cualquier aportación, a cualquier nivel. ¿No puede un programador de “front-end” saber cual es la mejor base de datos para un problema concreto?

    Pau: leído y altamente recomendable, además se lee en unos diez minutos.

  4. 15/07/2008Bernie say:

    Estoy de acuerdo contigo. Hay algunas posturas de empresas que no las entiendo. Salen de lo que considero la lógica natural.

    He leído el libro y también me gustó. http://www.monografias.com/trabajos11/quienseha/quienseha.shtml

    Más adelante salió otro libro escrito como del “bando empresario” http://www.charthouse.com/productdetail.aspx?nodeid=11010
    También lo leí pero no me gustó demasiado su mensaje.

  5. 15/07/2008Pablo Casado say:

    No me parece que haya una tesis que sea mejor que otra. En mi opinión, debes hacer aquello con lo que te sientas a gusto.

    Si el señor X disfruta aprendiendo Python, Ruby o S3 y le son útiles en su proyecto, perfecto. Si el señor Y disfruta aprendiendo Hibernate, Struts o JBPM, pues perfecto también.

    En cualquier caso, la decisión depende de qué se quiera ser “de mayor”. Si quieres ser un experto en algo, la opción de Y es la acertada, aunque corre el riesgo de que la tecnología que usa quede “deprecated”. En cambio, si no se quiere saber de nada en profundidad, sino tener nociones de todo, la estrategia de X es la correcta. En ese caso, debes ser muy buen comercial para convencer a tus jefes de que tus amplio pero poco profundo conocimiento es útil para algo.

    En mi opinión, las dos figuras son complementarias y no creo que una sustituya a la otra. Se necesita a un experto Y para picar cualquiera de las cosas que prueba X, sin duda.

  6. 15/07/2008luis say:

    Claro hombre! No vamos a pegar a Mr.Y por que le guste Hibernate o Spring!

    Supongo que en realidad los dos perfiles son validos en diferentes fases del proyecto. Mientras X es muy útil en las primeras fases (como decia Bernie antes, un Consultor IT), más tarde, en pleno desarrollo, Y es más útil.

    Lo ideal pues es ser capaz de cambiar, de ser Y en las primeras fases y X después. Lo dicho: especializarse en cambiar.

  7. 16/07/2008Ludo say:

    Muy interesante todo lo dicho. Aunque comparto o que dices Luis creo que el planteamiento de fondo es erroneo. Comento tu entrada en mi blog y digo la mia.
    http://orangoodling.blogspot.com/2008/07/sobre-especializarse-o-ampliar-las.html
    Felicidades por el blog.
    Ludo

  8. 17/07/2008luis say:

    Gracias Ludo!

    Muy interesante tu entrada también.

    Lo he pensado un poco más y concluyo que debe ser un problema de perspectiva. Concretamente, el mal que aqueja a Mr. Y es una aguda perdida de perspectiva.

    Parto de que el sector es como es (y que se ha de cambiar) y un ingeniero informático empieza de programador (la comparación con el arquitecto-peón es inevitable) y muchas veces no pasa de jefe de proyectos o programador senior (lo que sería un peón de primera) y la deformación profesional hace su efecto y empiezas a valorar la ultraespecialización en una técnica.

    La situación ideal seria que el ingeniero recién titulado empezara de ayudante de un ingeniero con experiencia, que hiciera las veces de mentor (esta palabra gusta mucho a la gente del ‘management’) y le enseñara eso que no se aprende en la carrera y que no es a programar usando un ‘framework’ o a tabular el código.

    En resumen, lo mejor es no perder la perspectiva y conocer para que trabajo se nos ha formado en la universidad.

    Acabo ya (esto podría haberlo puesto como una nueva entrada), tanto X como Y tienen la perspectiva correcta, X como ingeniero y Y como programador senior.

    Luis

    PS: Marc, fes una sessió a ASAI sobre això, crec que será profitos per als estudiants.

  9. 18/07/2008Ludo say:

    Creo que podemos eximir a Mr. Y de toda culpa. En cada momento de nuestra vida profesional debemos situar nuestra perspectiva en el punto adecuado. Desde lejos vemos poco detalle, y como ingenieros debemos ser capaces de bajar al nivel de detalle del mismisimo bit. Pero si estamos pensando en términos estratégicos es importante ser capaces de elevar el foco. El problema de hoy en día es que nos cuesta mucho menos especializarnos que elevar el foco.
    ps. potser si que en parlare a ASAI… d efet he de pensar com incorporar el blogging en la activitat d’asai… hi he de pensar ;-)

  10. 25/07/2008Blogging en la universidad - En tierra de nadie say:

    [...] comenta Ludo en un post anterior que está pensando en incluir el blogging en su asignatura. Incluir el blogging en una asignatura [...]

  11. 18/08/2008La especialización es para los insectos - En tierra de nadie say:

    [...] pasa Siddharta un enlace a Linking Paths con una cita que viene a relación con un post/conversación anterior, dice así: Un ser humano debería ser capaz de cambiar un pañal, planear [...]

Escribe un comentario: