Juniors y Seniors

Al principio puse el título de la entrada como «Juniors vs Senior» pero esto no se trata de una competición, es más, ambos son necesarios y complementarios e, irremediablemente, un senior en algún momento de su trayectoria profesional fue Junior.

La cara del senior no es por los años.
Es que ahora tiene hijos.

El motivo del artículo es porque he visto que con el tiempo, por lo menos en mi sector (SAP), la transición de Junior a Senior ha cambiado. Cuando yo empecé en esto (no soy tan viejo ¡eh!) había una gran demanda de profesionales SAP y poca oferta de profesionales. Esto hacía que te «promocionaran» rápidamente, ¡ojo!, tanto a nivel de responsabilidades al haber escasez de recursos, como a nivel retributivo por la necesidad de retener el talento.

Esta situación hacía que te enfrentases, como Junior, a situaciones de cierta responsabilidad de forma rápida, y tu curva de aprendizaje se acelerase. Además, si eras bueno en esto (pequeño detalle sin importancia), si querías salir al mercado laboral tenías muchos pretendientes. Yo, con solo 1 año de experiencia, me habían subido el sueldo 3 veces, ya actuaba como analista y llegué a tomarme un parón de 4 meses para viajar y, al volver, hice como 20 entrevistas consiguiendo subida sustancial de salario.

El tema es que ahora veo que hay varios tipos de juniors y seniors.


Juniors eternos

De unos años a esta parte veo algunos juniors que lo son, por lo menos en cuanto a responsabilidad y tareas, durante más de 2 años. Supongo que el salario habrá ido subiendo, pero no se le ha dado al profesional (o no lo ha solicitado) la responsabilidad y las tareas necesarias para progresar.

¿Y cómo se hace un pogüer point?

Juniors All Stars

Algunas consultoras grandes tienen programas de captación del talento joven desde universidades. Hacen una especie de draft de la NBA. Además una vez preseleccionados hacen una especie de Grand Prix del consultor con pruebas grupales e individuales para escoger la creme de la creme.

Solo quedarán en pie los mejores

El problema es que esta selección la suelen hacer en universidades privadas y, después de la gymkana que tienen que hacer para ser contratados y el plan de carrera que les ofrecen, llegan al MundoReal™ con ínfulas de jefe, no de Junior. Y claro, diles tú que se peine un Excel para ver errores de datos o que tomen notas en una reunión… Y no están programados para esas tareas mundanas.


Juniors hambrientos

Siguen existiendo, gente joven con ganas de aprender, trabajar, asumir retos y evolucionar. Gente con hambre. No necesariamente tienen que ser los mejor preparados. Yo siempre digo que lo importante es la actitud, no la aptitud.

La aptitud suma.
La actitud multiplica.

A una frase motivadora, le pones un fondo de una playa de arena blanca, y ya lo tienes.

Esto no aplica solo a juniors, de hecho es la actitud que hay que seguir teniendo, humildad, curiosidad, y hambre. Como dijo Steve Jobs «Stay hungry. Stay foolish»

Stay hungry, Stay foolish

Senior a la fuerza

La insoportable levedad del ser (consultor), el dejar pasar las olas y las horas y conseguir ser senior por años y no por méritos. Una especie de funcionario amigo del tiempo, arropado en un proyecto/cliente que no le pide más que estar allí y saber sus procesos (ni siquiera cambiarlos).

Y mañana, a cuadrar facturas de nuevo

Senioritos y Senioritas

Los hay también que al leer su firma de Senior Consultant se ponen juguetones, que se lo creen y todo. Da igual su nivel de conocimiento y/o experiencia, ahí pone «Senior» señoría. Y que les da por actuar de jefes, cuando todos hemos tenido juniors que nos adelantan por la izquierda en algo (alabados sean). Un poquito de humildad, de todo el mundo se puede aprender algo. Y cuando tratas a un Junior o Senior o Tornero fresador como un igual sacas oro de esa relación, tanto a nivel personal como profesional.

Vienes a mi escritorio el día de la boda de mi hija… y me pides que resuelva tu incidencia… por dinero.

El Principio de Peter

Esto no es exactamente sobre juniors y seniors, pero allá donde termina el horizonte del senior, aparece el de jefe (de equipo, de proyecto), manager, etc… En estos casos se suele cumplir el famoso Principio de Peter:

En una jerarquía, todo empleado tiende a ascender hasta su nivel de incompetencia: la nata sube hasta cortarse.

Laurence J. Peter

Quiero aprender Python (Enséñame ChatGPT)

Hoy vamos a ganar superpoderes, y esto lo vamos a hacer enseñando como la Inteligencia Artificial puede ayudarnos en nuestro trabajo, a derribar barreras de conocimiento y a enfrentarnos a lo que no sabemos con garantías.

Imagen generada con Stable Diffusion instalado en mi PC, con el modelo epiCRealism con el prompt «A male consultant dressed as Superman is programming using a laptop in an office«

ChatGPT enséñame a programar en Python

Resulta que un día, al principio de empezar a usar ChatGPT, se me ocurrió ver si podía preguntarle a GPT cómo programar en Python. Lenguaje que no sabía ni cómo, ni con qué, ni donde se programaba. Solo tenía conocimiento del nombre y de que se usaba sobre todo para BigData y IA. Por lo tanto le pregunté a ChatGPT-4:

Por lo que, con solamente una frase y una consulta me da varias opciones. Instalo Python en mi PC y, como entorno de desarrollo en este caso voy a usar el Visual Studio Code ya que los otros ni me suenan. Lo de instalar bibliotecas adicionales lo iré haciendo en base a lo que necesite usar. Y los recursos, teniendo GPT, paso de ellos por ahora.

Hola Mundo

Una vez instalado, quiero empezar como se empieza a programar en todos los lenguajes de programación, con un Hola Mundo. Así que continúo preguntándole:

Más guiado imposible. Sin saber nada de Python, ¡Ya tengo mi primer programa en Python!. Que sí, que es una chorrada de programa, pero ChatGPT me ha guiado en como llegar a instalar lo necesario y a crear mi primer programa. Pero claro, esto es muy sencillo, vamos a complicarlo un poco.

Leer un PDF e imprimir el texto por pantalla

Ahora quiero un programa que, tomado un PDF de mi PC, sepa leerlo e imprimir su contenido en texto por pantalla. Le pregunto a ChatGPT:

Esto ya es más complejo, un programa que, usando la librería PyPDF2, lee un PDF y imprime su contenido por pantalla. En este caso voy a usar el PDF SAP S/4HANA for Customer Management – Feature Scope Description que contiene las funcionalidades de la parte de CRM de SAP S/4HANA. Al intentar la librería PyPDF2 tal y como comenta ChatGPT, ¡ZAS! ¡Primer error!.

Pero, no nos preocupemos, tenemos el amigo listo de la oficina al que preguntar. Sin cortarnos ni un pelo le pegamos todo ese error a ChatGPT:

Uso la primera opción para instalar la librería, usando «python -m pip install PyPDF2» funcionando correctamente. Por lo tanto prosigo con mi nuevo programa:

¡Zas! ¿Otro error? Pues hagamos lo mismo:

Me dice que cambie cosas, con los ojos tapados copio y pego y ejecuto, pero…

ChatGPT, otro error, pero no me cuesta nada repetir el proceso hasta que esto funcione:

Vuelvo a cambiar el código, vuelvo a ejecutar y:

Seguimos con la iteración con ChatGPT. Por ahora solo estamos copiando y pegando.

Vuelvo a copiar/pegar el nuevo código en mi programa del Visual Studio Code y ahora:

Toooooooooooooooooooma!!! ¡Ya nos está leyendo el PDF!

Resumen del texto extraído

Ahora vamos a complicarlo aún más y añadir la inteligencia artificial para que nos resuma el contenido extraído. Para ello usaremos la API de GPT, que puede sacarse de https://platform.openai.com/. Eso sí, cuando te das de alta tienes, creo unos 18$ de uso gratuitos, luego es de pago, yo tengo plan de pago y es independiente de ChatGPT. Es decir, por un lado pagas ChatGPT Plus y por otro el uso de la API.

Pero veo que me manda ese código sin la parte anterior de extraer de PDF, Además quiero refinar mi consulta, porque veo que el PDF usado tiene páginas que prácticamente no contienen información y que son portada, índice o disclaimers. Por lo tanto le digo:

Copio/Pego el código que manda ChatGPT. La clave API de GPT hay que sacarla de tu cuenta en platform.openai.com.

Ejecuto el código y….

Vamooooooooooooos!

Esquema de resumen

Ahora quiero que, además del resumen, genere un esquema con los puntos del documento.

Pero quiero verlo por colores que si no me quedo ciego:

Instalo la librería termcolor, copio/pego/ejecuto (cambiando la clave API y el PDF) el código y:

¡Otro éxito!

Guardar el resumen y el esquema en un Word

Ahora quiero ese resumen y ese esquema en un documento Word, no solo por pantalla que eso no es práctico. Tal cual se lo pido a ChatGPT:

Instalo la librería python-docx. Copio/Pego/Ejecuto (cambiando la clave API y el PDF) el programa y:

Me estoy cansando de poner cosas debajo del niño este

Crear un MP3 con el Resumen y Esquema leído

Ahora no quiero leer el word, quiero que alguien me lo lea. Por lo tanto le pregunto a ChatGPT si puedo hacerlo y cómo:

El resultado es:

Audio del resumen
Audio del esquema
¡¡Madre mía!!

Los audios son demasiado simples y robóticos, podría pedirle a ChatGPT si hay alguna otra alternativa gratuita o de pago. Pero vamos a otra cosa, ¿Le pedimos más cosas? ¡Claro que sí!

Generar una presentación Power Point

Quiero generar un Power Point directamente con los datos del esquema, que cada punto del esquema sea una diapositiva. Pues allá que voy que se lo pido:

Pero veo que el código VBA que me genera no es correcto en el apartado de desarrollador del Power Point así que le pido que tenga cuidado con los saltos de línea.

El resultado es este código VBA es el siguiente:

Y pegándolo en la parte de desarrollador de un powerpoint vacío y ejecutandolo:

Y dandole un diseño preconfigurado tenemos:

Mi Power Point en bruto

Esto es un ejemplo. Tengo más que he usado en mi día a día con Python (pulsación de teclas automáticas, Conexión con las APIs de aparatos de SmartHome, Preparación de certificación preguntando dudas a ChatGPT, Cambio de formato para exportar e importar datos entre dos aplicaciones, etc.) El límite está en tu capacidad de usar esta herramienta. A mi, me ha dado superpoderes y ya me ha ayudado en varias labores importantes.

Pero, eso no es aprender Python

Obviamente, esto no es aprender Python, pero ¿Quién lo necesita? sé programar en otros lenguajes, con lo cual tengo la mente estructurada para entender los procesos y la forma de entender un programa. Esto a mi me vale para hacer cajas negras de funcionalidad y usarlas y combinarlas para hacer el proceso deseado. Me da superpoderes, me da confianza y me quita el miedo a lo desconocido.

¿Crees que esto se podría considerar Low Code?

¿Quieres saber más sobre Inteligencia Artificial?

Ser consultor

Imagen sacada de un proyecto de TI real

Ser un buen consultor es difícil, yo lo veo como un arquitecto, que recibe los requisitos del cliente, le da ideas para mejorar sus procesos, dice al cliente lo que no se puede hacer, hace un proyecto con el resultado que se va a implementar, sigue y audita que se está implementando según especificaciones y finalmente presenta al cliente el resultado explicándole y guiándole con la funcionalidad de su obra. Y le da un período de garantía, claro. Esto en un proyecto de implantación.

Cómo no ponga un pilar ahí esto se cae. ¿Y si en vez de hormigón uso corchopán?

En un mantenimiento lo veo más como un controlador aéreo. Priorizando tareas, evolutivos e incidencias, sabiendo donde están en cada momento y donde deben terminar.

Viene una incidencia urgente, pista 1 despejada. Manolo calienta que sales.

Aunque hay mucho «consultor» que realmente es más bien un obrero que un consultor, solamente ejecuta lo que el cliente exige, sin aportar nada ni rebatir ideas locas.

¡Menudo chorrazo de código estoy echando!

Según la RAE, consultor se define como:

Que atiende consultas y asesora sobre una materia específica, sobre todo de forma profesional.

Real Academia Española

Por lo tanto, un consultor de TI debería ser un asesor, una guía para la transformación digital de procesos y operaciones empresariales. No un simple «ejecutor» de órdenes.

Yo, a mi lado, quiero gente que tenga opinión, que sepa discutir acerca de la mejor solución o que sepa que alguna idea es una locura (pero de eso no hay, ¿no? 😜)

El problema, muchas veces, parte del cliente. Que no valora nada más que el precio y/o tiempo de un proyecto (¿os suena lo de retroplanificar un proyecto?). Cuando lo que debería primar sería el ratio entre tiempo/coste/calidad/funcionalidad. Y en cuanto a calidad un proyecto debe contar con estimación de tiempo y esfuerzo en cada una de las fases, y gastar el tiempo necesario en ellas. A saber:

  • Análisis de los requerimientos y aceptación por las partes
  • Diseño de la solución y aceptación
  • Hito de Kick off de la implementación
  • Desarrollo de la solución
  • ¿Habrá entregas parciales? Se marcarán los hitos repitiendo en cada hito los siguientes pasos.
  • ¿Hay integraciones con otros sistemas? Si es así es necesario un plan de pruebas integradas
  • Formación a key users
  • Pruebas de usuario
  • Go Live (subida a producción y acceso de los usuarios) Aquí no termina el proyecto
  • Monitorizacion de sistema y usuarios
  • Soporte continuo a usuarios y procesos
  • Periodo de garantía

Por supuesto esto es una lista básica con lo imprescindible para un proyecto TI clásico. Ya si hablamos de Agile, Sprints, Gestión del cambio, Análisis de riesgos y Planes de contingencia, etc. la cosa se complica.

La norma ISO666 de los proyectos

Pero lo que quería ejemplarizar con el gif inicial es que un proyecto sin la formación y soporte a los usuarios, dará como resultado resistencias, mal uso y frustración. Y que algún usuario diga la frase:

¡Yo tenía un Excel que hacía más cosas!

Por ultimo no podía dejar pasar la ocasión para meter el video de Pantomima Full acerca del consultor. Yo nunca he sido así, y mi entorno no es así, pero he visto este tipo de fauna pululando por las oficinas y los clientes. Obviamente esto es una exageración (¿o no?😜).

Keep calm and relaxing cup of café con leche in plaza mayor

Relaxing cup!
Relaxing cup!

¿A qué viene este título y esta imagen?, para los que no seais de España entrad en este link, es la alcaldesa de Madrid haciendo el ridículo hablando inglés con los comisarios del COI buscando las olimpiadas para Madrid.

Y es que en España hay un gran problema con el inglés (yo también tengo el problema, que conste), que yo sepa, ninguno de nuestros presidentes del gobierno ha sabido hablar inglés correctamente. Quizás Aznar, el marido de la alcaldesa anteriormente mencionada, sea el que mejor se pueda defender y eso, para mi, no es un buen ejemplo (espero que al hijo lo hayan educado bien).

El problema es que en este mundillo en el que nos movemos hay unos mínimos que son imprescindibles. El inglés es fundamental en nuestro día a día, y no me refiero a saber hablar inglés, que eso es otro mundo, me refiero a saber leer, entender y escribir inglés. La documentación de SAP (help.sap.com) está en inglés, las notas de SAP están en inglés, parte de la ayuda de la herramienta está en inglés, cuando queremos investigar acerca de un error necesitamos verlo en inglés y preguntar en Google, el mayor y mejor foro de SAP scn.sap.com es en inglés, los manuales de los cursos de SAP CRM son en inglés, los libros de SAP PRESS son en inglés y los examenes de SAP CRM son en inglés.

Oh my goodness!!!
Oh my goodness!!!

Aún con eso, hay gente que sigue buscando solucionar sus problemas en foros en castellano (mundosap), o se queja cuando les doy un curso de que el manual está en inglés. Como dice la canción «…si no sabes torear, para que te metes…», hay que tener actitud de aprender y de conocer y es imprescindible el inglés.

Como nota graciosa también decir que poco a poco los anglicismos nos están ganando la batalla en nuestro querido y rico idioma castellano, ya no decimos Mercadotécnia sino Marketing, objetivo sino scope, Business Blue Print, RFP, Know-How, Kick-off, Go-Live etc.  aquí un ejemplo de humor de esto:

Ya sabeis, «Madrid is fun!»

Best regards!

El buen consultor

«Empresa multinacional, líder en su sector, busca consultor SAP CRM con 15 años de experiencia, habiendo realizado al menos 5 implantaciones exitosas de los módulos SAP CRM Ventas, Service y Marketing. Con conocimientos de movilidad y E-Commerce. Imprescindible alto nivel de Inglés, Alemán y Húngaro.«

Entrevistas
Búsqueda de profesionales

Esto quizás sea una exageración aunque algo parecido se ha visto, como pedir alguien con más experiencia en SAP BO de lo que llevaba SAP BO de historia. Pero este país tiene un gran problema con medir la excelencia y las capacidades con frases y números y no con hechos. La famosa titulitis de la que adolecemos de siempre, el cartón-piedra de los conocimientos reales.

Si alguno ha contactado alguna vez con algún recruiter internacional lo primero que te piden son referencias. «Me parece muy bueno tu CV pero necesito que al menos 2-3 personas que hayan supervisado tu trabajo me den el feedback necesario». Y complementan la información que tú les has dado con información real y tangible de lo que opinen de tu calidad personal y laboral aquellos que han tenido la oportunidad de trabajar contigo e incluso aquellos que han gestionado tu trabajo.

En eso se ha ganado un paso adelante con las redes sociales profesionales como Linkedin, donde se pueden realizar recomendaciones viendo en todo momento el perfil de la persona que recomienda.

Está claro que mentirosos los hay en todas partes y Linkedin o las referencias telefónicas no son una excepción, pero se descubre antes a un mentiroso que a un cojo y este mundo es muy pequeño.

Lo que hay que tener claro, o por lo menos lo que yo tengo claro, es que el conocimiento y la experiencia es muy muy importante, pero hay otros aspectos como la actitud y la capacidad de aprendizaje que, sumado con el conocimiento hacen de un profesional algo realmente valioso. Dime lo que sabes, pero me interesa más la capacidad de aprender, las ganas que le pongas y la capacidad de adaptación al cambio.

Y más en estos tiempos difíciles tenemos que ser capaces de adaptarnos a lo que viene sin olvidar lo que sabemos. Todos conocemos los casos de proyectos donde los propios trabajadores del departamento de TI se oponen fuertemente al cambio y al final se exponen a no ofrecer nada a la empresa, puesto que el cambio se realiza finalmente y ellos han perdido el tren del aprendizaje, poniendo además trabas a la correcta implementación y quedándose expuestos.

Adaptarse al cambio Charles Darwin
Adaptarse al cambio es la clave

Así que, por favor, cuando mires mi currículum pregúntame qué he hecho, qué sé y, sobre todo, hasta donde soy capaz de aprender. Pregúntame por referencias y recomendaciones, e incluso ponme a prueba con pruebas técnicas o de concepto.

Motiva a los profesionales con los que trabajas y obtendrás un buen consultor.