Sobre los momentos vitales

Hola,

Hoy leí el siguiente artículo de www.elpais.com donde realizan entrevista al ingeniero de la NASA Adam Steltzne, responsable de aterrizar con éxito a Curiosity en Marte.

Ver artículo

La verdad es que en general me resultó interesante, pero curiosamente lo que más interesante me resultó no tenía que ver ni con la astronomía, ni el espacio, ni Marte; tenía que ver con la educación y los momentos vitales.

Os dejó el extracto más interesante de la entrevista al respecto que se encuentra al final del artículo.

P. Usted cuenta que la primera vez que le dedicó un pensamiento serio a la astronomía tenía ya 21 años. ¿Esto es un mito como lo de que Einstein no tenía buenas notas en la escuela? Si es cierto, ¿qué nos dice esto sobre la educación, que sea posible que un talento importante surja tan tarde?
R. Creo que no dice tanto sobre la educación como sobre la importancia de la psique. Ahora soy un matemático relativamente capaz y un ingeniero muy decente, pero no habrías sido capaz de percibir eso en mí cuando era más joven porque, psicológicamente, no era capaz de sacar a la luz esos elementos de mi mismo.
P. Pero usted tuvo la posibilidad de realizar ese cambio, porque su familia le podía ayudar. ¿Sería interesante que los Estados, por ejemplo, planteasen alguna forma de apoyar a personas que pueden desarrollar sus talentos más tarde?
R. Es un planteamiento interesante. He pensado mucho sobre las escuelas, la educación, la enseñanza. En mi experiencia vital, entre los 13 y los casi 23, en todo lo que pensaba era sexo, drogas y rock and roll. Intentar enseñarme algo distinto de eso no daba resultado. Por eso, cuando ya como veinteañero regresé a la escuela, era muy capaz de centrarme, porque sabía lo que quería. Estaba listo. Muchos de mis compatriotas en la universidad no lo estaban. Ellos dijeron entonces, ¡oh, sexo, drogas y rock and roll! ¡Mi madre no está cerca para vigilarme, soy libre por primera vez! Yo había experimentado esa libertad antes.
Eso me ha hecho pensar sobre cuándo los jóvenes, o los humanos en general, estamos listos para entender una serie de cosas. Es interesante preguntarse cuándo estamos listos para aprender qué. Creo que es importante para una nación, una sociedad, ayudar a educar a las personas cuando están listas para aprender.

Súper interesantes reflexiones.

Un abrazo.

Miguel.

Retener el talento, cómo

Hola,

Menudo fregado hablar de este tema, como si existiera una fórmula mágica, y mágica me refiero a que fuera fácilmente implantable, es decir, que no supusiera para las empresas poner encima de la mesa las condiciones necesarias una gran dificultad. Porque fácil no es, si no ya todas las empresas lo tendrían en marcha. Porque lo primero de todo hay que querer, y ser capaz de ver y constatar en avance que aplicando medidas como estas el horizonte de rentabilidad esperado se mantiene, como mínimo; porque claro, aquí no olvidarse que las empresas están para ganar dinero y que si se preocupan por nosotros no es por amor al arte.

Hay algunas empresas más avanzadas que otras claro, algunas incluso expertas en algunos ámbitos, pero al final, o tendemos todos a normalizar lo mejor posible todos los ámbitos expuestos a continuación o podemos vernos sobrepasados por otras empresas que lo hacen mejor que nosotros.

Porque fórmulas hay, y creo que todos en la cabeza podemos tener algunas:

  • Nivel salarial. La primera por excelencia, porque todo puede estar de cara pero como esto no y aparezca una alternativa que te posiciona mejor… Y cuál es el nivel salarial adecuado? Pues partiendo de que todos queremos ganar cada día más será un salario que te posicione bien en el mercado. Porque al final todos funcionamos por comparación, y si vemos que por nuestra formación y/o nivel de responsabilidad tenemos alguien de nuestra empresa que gana más que nosotros… ya vamos mal, sentimiento de injusticia al canto. Lo mismo si viene una empresa externa y sin conocerte de nada más que un par de entrevistas te posiciona mejor económicamente (esta sí que es una injusticia de las gordas, verdad? Me aprecian más los que no me conocen que los que me conocen desde hace años; un razonamiento muy típico).
  • Formación y certificación. Ayuda, claro. Sobre todo no solo si dices que lo haces si no que si además pones un plan anual sobre la mesa y con sentido y puedes contar con el testimonio y el boca a boca de las personas que están participando en él como beneficiarios directos.
  • Flexibilidad. Puf, cada vez más clave, y no estamos hablando solo de poner entrar entre las 8 y las 9 y demás, si no de temas más avanzados como trabajar algunos días fijos a la semana desde casa, poder en un momento dado por un tema personal ausentarte durante unas horas y recuperar las horas después sin que nadie te ponga ningún problema, todo un conjunto de facilidades. Que no es cuestión de trabajar menos si no de trabajar de otra manera, con una dispersión del tiempo más ajustada al momento vital de cada uno. Porque si trabajamos por objetivos todo es más fácil y tiene más sentido, porque tú al final sabes que la fecha ha de cumplirse y es tu responsabilidad distribuir tu dedicación para poder conseguirlo; no es cuestión de cubrir tus horas sentado delante de una pantalla.
  • Ambiente laboral. Trabajar con un grupo con edad similar a la tuya, en un momento vital similar y donde reina el respecto y las ganas de además de trabajar pasártelo bien es un punto muy importante. No hay nada mejor que la gente que llega al trabajo contenta y que después de la jornada se va a su casa igual o mejor. Y esa cerveza de los jueves, y ese partido de fútbol o ese partido de padel del fin de semana. Porque luego cuando te toca trabajar con esas otras personas en proyecto, o apoyarles ante un problema no es igual si has convivido fuera del estricto y puro trabajo; es la condición humana. Aprecias, buscas, empatizas y te comprometes con lo que compartes. Y es que el roce hace el cariño!
  • Proyectos interesantes. Trabajamos mayoritariamente con ingenieros, qué esperáis? Alguien que se conforme realizando actividades rutinarias, con tecnologías obsoletas, en un ámbito de responsabilidad, que no les permita crecer laboralmente y que además no les proporcione un feedback prácticamente semanal? Ingenieros + Generación Milenial, y parece un chiste porque yo me leo el nombre y me entra la risa, pero los patrones descritos de comportamiento (generales, luego claro hay casos específicos), se cumplen, y hay que tenerlos en cuenta. A los ingenieros nos gusta construir cosas, cosas que sirvan, que se usen y que mejoren la forma de trabajar de las personas, que además tras una primera versión podamos refinar para poco a poco ir perfeccionando; y que quien lo use y esté contento nos lo diga; a veces es necesario como el aire.
  • Experiencia internacional. Sobre todo importante para los que en menor o mayor medida están en un momento vital donde les encaje sobremanera trabajar en un ambiente multicultural, en otros idiomas, con otras formas de hacer y de ver. Si eres capaz de ofrecer esto a 10 minutos de su casa, tienes mucho ganado, porque hay mucha gente que cree que solo va a poder conseguir esto si se va a trabajar a Madrid o a Barcelona, o directamente fuera de España. Hay otros primeros pasos o pasos intermedios como trabajar en un proyecto internacional cerca de casa, en Aragón (evidentemente barro para casa), que te permita realizar viajes puntuales, recibir visitas de tus compañeros de proyecto pertenecientes a países extranjeros, y convivir de manera diaria en un proyecto compartido con otras culturas; aunque sea de manera remota.
  • Referentes técnicos. Contar con este perfil en tus filas es fundamental como base y soporte a los que están aprendiendo. Alguien de quien aprender, alguien que te realice el seguimiento pertinente y te ayude a dar los siguientes pasos. Alguien que en un momento dado siempre va a estar ahí ante una situación que no sepas resolver. Porque a los ingenieros nos gusta resolver cosas por nosotros mismos pero también saber que en un momento dado cuanto nos enfrentamos a algo desconocido no estamos solos (ante el comercial de turno por ejemplo) y que tenemos a alguien que habla nuestro idioma, nos entiende, y en cierta medida, nos protege. Esa persona a la que te vas a la reunión donde sabes que te van a dar por todos lados pero que consigue solo por su presencia darte la seguridad de que todo va a salir bien.
  • Alguien que lleve el barco con sentido común. Y lo digo así porque cada vez me gusta menos utilizar la palabra “jefe”, que me parece de los años 50. Aquí cada uno tiene su ámbito de responsabilidad, que todos son claves en la empresa, y hay un grupo en concreto que su responsabilidad parte de definir y asentar la estrategia global, seguirla, y gestionar a las personas y los proyectos que permiten llevarla a cabo. Pues ese grupo de personas, es clave en cuanto a la retención, la gente se va si el que lleva el barco no lo hace con sentido común, si se sienten sobrepasados, si no se sienten valorados, si se sienten incomprendidos, si se sienten atemorizados, que les imponente las cosas, si se sienten engañados, si no se les hace partícipes de la globalidad, si identifican injusticia o que se les desplaza del grupo (es parte de nuestra condición humana).
  • Cerca de casa por favor. De estar a 10 minutos a 30 del trabajo puede no haber mucho salto, pero si ir a tu trabajo te cuesta una hora de ida y otra de vuelta, puede ser un punto importante de cara a tomar la decisión de cambio. Y más si te afecta al bolsillo.
  • Capacidad de promoción. Es decir, que empiezo por un escalón, lo acepto, me parece fenomenal, pero necesito un plan encima de la mesa que me asegure que la empresa está preparada para que yo como ser individual pueda seguir dando pasos hacia adelante en el plan de carrera (hacia un horizonte de especialidad técnica o de gestión, según mi motivación). Y no solo que exista un plan si no que también exista una herramienta que asegure que se sigue, y que las personas que forman parte de la organización puedan hablar de casos concretos de personas que en base al plan y las herramientas que hay en la casa la promoción de personal interno es un hecho real. Y cuanto más mejor.

Todos querríamos trabajar en una empresa así verdad? Que consiga cubrir todos estos aspectos en la mayor media posible. Pues ahora nos toca a todos correr y posicionarnos bien, olvidarnos de antiguas formas de gestión y pensar en otras más adaptadas a nuestros tiempos.

Si no queremos estar fuera claro.

Un saludo.

Miguel.

Feedback como clave para la mejora continua

Hola,
La mayoría de nosotros ha estado al menos una vez en la vida en una situación donde tras una pequeña exposición o charla el ponente de turno ha preguntado si existía alguna pregunta o si alguien quería dar su opinión al respecto del tema tratado. La mayoría de nosotros ha vivido ese momento de silencio absoluto y que la cosa termine en que nadie, absolutamente nadie, aporte nada.
Lo mismo ocurre cuando desde una organización se pone en marcha una nueva iniciativa, un proceso, una idea… Y las personas afectadas acatan sin cuestionarse nada, o cuestionándoselo pero sin aportar ningún tipo de información al respecto. Seguramente muchas personas habrán identificado mejoras, les parecerá la iniciativa un sin sentido, tendrán demasiado trabajo como para pararse a pensar o simplemente les dará igual. Todo acaba en lo mismo, al final, el proceso puede seguir adelante durante años sin que nadie identifique (líderes de la implantación, grupo afectado por la misma) mejoras que hagan que el procedimiento gane en eficiencia temporal, económica, impacto en el grupo, etc.
Por lo que tras estos dos primeros ejemplos la pregunta que deberíamos realizarnos como ponentes o como implantadores de iniciativas en una organización es si queremos vivir ajenos a esta fuente de información o si pasamos a trabajar el concepto de retroalimentación (feedback) como un elemento clave de nuestro trabajo en el día a día.
No tengo claro en otros sectores, aunque cada día identifico pistas adicionales que me van haciendo ver que también, pero en el sector de TI o te pones a pensar en las personas y en fórmulas para mejorar el nivel de feedback o estás fuera. 
Y cómo podemos intentar mejorar los niveles de feedback? Pues incorporo a continuación algunas ideas:

  • Hay que partir de la idea, que puede resultar muy básica pero no hay que olvidar que está ahí, y que es que las propias personas que forman parte de la organización no son conscientes de la importancia que tiene su propio feedback de cara a mejorarla. El primer reto es conseguir que este primer mensaje cale: tu opinión cuenta y es básica para nuestro crecimiento, está en tus manos conseguir que las cosas mejoren, tú puedes conseguir el cambio.
  • Contarías algo a alguien en quien no confías, que temes, que no sabes ni que existe o que directamente te produzca indiferencia; lo más seguro es que no, así que hay estar lo más cerca de las personas posible, no ser uno más si no conseguir evocar el escenario idóneo que rompa esa barrera y que consiga que las ideas fluyan de manera natural.
  • Seguro que si el grupo afectado identifica que con sus aportaciones puede obtener un beneficio directo en su día a día de trabajo se va a implicar más. Y no sólo estoy hablando aquí de una variante puramente económica, hay mil fórmulas.
  • La opinión de todos cuenta, es decir, hay que escuchar desde al director general hasta la última persona que entró en el departamento para hacer unas prácticas. Cada uno tiene una visión y una realidad diferente que aporta puntos de vista muy diferenciados, interesantes y válidos.

Y claro, la organización, las personas que lideran iniciativas también tienen que ser conscientes de algo, tal vez el feedback recibido no les guste, por muy constructivo que sea, por lo que la actitud ante las mismas siempre debe ser muy positiva. Si sabes que tu opinión podría molestar a un responsable de la organización la darías con tanta facilidad como si supieras que encaja muy bien las críticas?
Gracias a todos y suerte!
Miguel.

Compromiso, cuánto ganamos

Creo que más o menos todos tenemos claro que de un buen programador a un gran programador no estamos hablando de multiplicar la eficiencia de 1 a 2, si no de 1 a 100.
Lo que deberíamos empezar a tener claro es que la misma relación existe entre una persona que no está comprometida (y no tiene por qué ser una persona destructiva si no simplemente que mantiene una relación plana con la compañía) a una persona que sí lo está.

Mensajes

Hasta hace poco cierta sucursal bancaria de este paí­s mostraba el siguiente mensaje en sus cajeros automáticos tras realizar una operación de reintegro:
“¿Desea imprimir el comprobante?”
Recientemente se ha actualizado el aplicativo y el mensaje ha pasado a ser el siguiente:
“¿Necesita imprimir el comprobante?”
Hay que ver lo que cambia la frase modificando íºnicamente una palabra. Inicialmente el valor de la aplicación era que tení­a la capacidad de imprimir un comprobante siempre que el cliente lo deseara. Ahora mismo, si queremos el comprobante lo podemos seguir obteniendo, pero, la aplicación nos hace reflexionar si realmente vamos a hacer uso del mismo, si lo vamos a aprovechar, si realmente nos merece la pena gastar papel.
Podrá parecer exagerado, pero a mi me ha dejado maravillado.
Saludos.
Miguel.

La importancia de la protección del modelo de datos en ámbitos de Software-Factory

A medida que voy conociendo nuevos proyectos y aplicaciones desarrolladas por otras personas, me doy aíºn más cuenta de la importancia de proteger y abstraer al desarrollador del modelo de datos en el que asienta una aplicación.
Proteger y abstraer siempre es algo básico, pero sobre todo, si el desarrollo de una aplicación va a llevarse en un modelo de desarrollo de Software-Factory. A continuación expongo alguna de las razones más importantes.
1) La volatidad de los profesionales que trabajan en este tipo de empresas es muy alta.
2) Es habitual que los proyectos estén integrados por un mayor porcentaje de profesionales con experiencia media/baja (becarios, programadores con un año o dos de experiencia…) elevado, liderados por un grupo reducido de profesionales con mayor experiencia (en proyectos de 4 o 5 personas estamos hablando de 1 profesional o 2 realmente qualificado).
3) La formación en las herramientas/tecnologí­as a utilizar por parte de los miembros del proyecto con menor experiencia es proporcional a los años de experiencia profesional que acumulan.
Con todo este panorama por delante, veo totalmente esencial que el acceso y manipulación del modelo de datos se deba llevar a cabo por los profesionales con más experiencia del grupo, abstrayendo al resto del problema, y centrándolos en el desarrollo de la vista y el controlador. Por supuesto que el desarrollo del controlador se va a basar en llamadas al modelo de datos que hemos protegido, siguiendo unos flujos que el analista funcional debe encargarse de transmitir a los programadores.
¿Cómo llevar a cabo dicha protección y abstracción? A mi modo de ver la mejor forma de realizar esta labor es llegando a crear la sensación al programador de que el modelo de datos no existe, que no hay base de datos. íšnicamente disponemos de un conjunto de clases (agrupadas en un NameSpace, Package…), que representan el modelo de negocio y que cuentan ya con una serie de operaciones asociadas.
Y por supuesto dichas clases son una caja negra, de la cual sólo conocemos su estructura, pero para nada cómo funcionan por dentro. Con mi clase “Coche” podré realizar todas las operaciones asociadas a un Coche, es decir, Arrancar, Aparcar, Acelerar, Frenar, PonerFrenodeMano, BajarVentanilla, y podré acceder además a otra información como NumeroDePuertas, VelocidadActual, KilometrosRecorridos, Consumo, Marca, Modelo, Conductor…
Si necesito crear una aplicación que a partir de una ruta por una carretera calcule el consumo de diferentes modelos de coche dependiendo de su velocidad media y de si tiene las ventanillas bajadas, no tendrí­a más que utilizar dos de mis clases Coche y Ruta de la siguiente manera.
// Definimos modelo de coche, abrimos la puerta
Coche.Modelo(Seat.SeisCientos);
Coche.AbrirPuerta();
// Creamos una nueva ruta a partir de alguna de las que tengamos definidas
Ruta.DefinirRuta(Rutas.Zaragoza-Barcelona-PorAP2); 
// Asociamos la ruta al coche, marcamos velocidad, puertas y definimos que el viaje se hará
// con las ventanillas bajadas… arrancamos y ala, a viajar
Coche.EstablecerRuta(Ruta);
Coche.VelocidadMedia = 120;
Coche.NumeroPuertas = 3;
Coche.BajarVentanilla();
Coche.Arrancar();
Coche.RealizarViaje();
// Guardamos los datos asociados al viaje
Coche.AlmacenarDatosConsumo();
Como podemos ver la protección y la encapsulación es máxima. Sabemos que para poder realizar un viaje primero hay que arrancar el coche, pero no sabemos si el arrancar el coche guardará en alguna tabla alguna información al respecto. Por supuesto no sabemos cómo se realiza el cálculo del consumo de carburante respecto a la velocidad media, ruta y estado de las ventanillas… llamando a “RealizarViaje” se calculará todo. Y lo que es más importante, se habrá consultado información sobre la ruta, modelo del coche… tal vez entren en juego 5, 6 o 20 tablas, pero a nosotros nos trae sin cuidado. Y finalmente, a la hora de almacenar los datos de consumo, tal vez tengamos un histórico de consumos asociados al coche, a la ruta… no lo sabemos, de eso se encargará la clase.
¿Por cierto, quién nos asegura que la información se esté guardando en una base de datos relacional? ¿tal vez se esté llevando acabo en un excel, o en un fichero plano separado por comas… o en una mysql, en un sql server o un oracle? ¿Es necesario si quiera que el desarrollador sepa qué es una select o un insert o un update?
Nuestro modelo de datos está 100% protegido a modificaciones llevadas de forma incorrecta.
Y en cuanto a la seguridad, podrí­amos dar acceso a un modelo de negocio a una tercera empresa para que se encargara del desarrollo de la aplicación, pero sin mostrarle realmente lo que hay detrás (¿en una dll, en un servicio web?)
Y en cuanto a la motivación del equipo de desarrollo, siguiendo esta forma de desarrollo, ¿quién siente realmente que está moviendo al coche? ¿todos?
Saludos.
Miguel.