Roberto Canales

Roberto Canales

Creador y propietario de AdictosAlTrabajo.com
Director General de Autentia S.L.

Ingeniero Técnico de Telecomunicaciones y Executive MBA por el Instituto de Empresa 2007.

Índice

 

Os voy a contar un poco mi vida… laboral, se entiende.

Etapa Universitaria (promoción 94)

Estudié Ingeniería Técnica de Telecomunicaciones en la Universidad de Alcalá de Henares.

No se puede decir que mis notas fueran para tirar cohetes porque, entre otras cosas, me tiraba todo el día en los laboratorios de Informática experimentando con desarrollo de
juegos, programas de dibujo, estructuras de datos, multimedia, etc.

Dado que parecía que se me daba bien la programación, un profesor, Francisco Javier Ceballos, me ofreció la posibilidad de colaborar con él en la traducción de los ejemplos de su libro de Visual Basic a Visual C++, cuando éste acababa de aparecer. Esto me obligó a ser un poco más ordenado y disciplinado en el trabajo. Posteriormente colaboré con Javier en la revisión de alguno de sus libros de Java y su constancia me animó a yo mismo escribir libros.

Creo que aquí está el principio de afrontar más seriamente la informática. Hice muchísimos programas en plan autodidacta. Ayudé a mucha gente en la finalización de sus proyectos de fin de carrera, colaboraba con algunas revistas especializadas en
programación y gané algunos concursos (Juego de Barcos de PC-Actual o Programación Multimedia Microsoft). También, hice un programa que vendimos a una empresa (motor de base de datos y aplicación para la gestión de absentismo laboral).

El último trabajo de programación en la universidad, fue mi proyecto de fin de carrera (simulador de prácticas del Corazón Humano) por el cual me pusieron la máxima nota: una Matrícula de Honor.

Gracias a esta hiper-actividad encontré mi primer trabajo (que me duraría muchos años) en Software AG.

Etapa en Software AG 1995 (Formación e Innovación)

El departamento de formación de Software AG, tenía un problema para el desarrollo de un programa de formación interactiva multimedia. La delegación de alumnos (para los que duden de su utilidad) me puso en contacto con ellos para ver si lo podía solucionar y me puse manos a la obra.

Empecé creando (dlls en C) librerías multimedia (userexit´s) para Natural Windows (permitir el manejo de dispositivos MCI) durante el verano, aunque pronto me ofrecieron empezar a dar cursos de formación.

La verdad es que fue una etapa muy buena, trabajaba por horas por la mañana haciendo inventos (más extensiones a Natural, programas en Visual C++, Instaladores InstallShield para la formación Interactiva, etc.) y por la tarde, impartía cursos de formación (que preparaba por la noche):

  • Programación Básica y Avanzada C y C++.
  • Programación orientada a Objetos.
  • Arquitectura de PC´s para programadores.
  • Programación Windows con MFC´s.
  • NT avanzado (NDIS, DCHP, DNS, etc.), preparación para exámenes de certificación.
  • Adabas y Natural Básico (en este, hasta hice un Juego).

En un momento en el tiempo, me dieron a elegir entre trabajar por horas o incorporarme a plantilla y decidí quedarme.

Era un trabajo muy interesante porque alumnos de otros departamentos me traían retos a resolver en C/C++ lo que me obligaba a no parar de aprender.

A partir de ese momento, a parte de dar cursos, participaba en proyectos en el primer boom de Internet (Webs en C puro y duro, prototipos para concursos de proyectos, etc.).

Debido a mi adicción a la tecnología (y a que me leo todo lo que cae en mis manos), me puse las pilas en un montón de cosas:

  • Programación Cliente/Servidor TCP/IP.
  • Filtros y extensiones ISAPI / NSAPI.
  • Construcción de demonios (Unix) y Servicios (NT).
  • Programación DCOM (haciendo bien, creando primero los interfaces) y ActiveX.
  • Aplicaciones distribuidas (EntireX Broker y DCOM para UNIX, que desarrolló Software AG).
  • Modelado Orientado a Objetos.
  • Applets Java y tunelizacion HTTP para comportamientos asíncronos (nació por esta época y aunque todo el mundo hable ahora de J2EE, eso al principio, era ciencia ficción).
  • Administración Unix: HP y Solaris.

Otros departamentos, cuando tenían algún problema con nuevas tecnologías, algunas veces venían a ver si se me ocurría algo y normalmente, lo solucionábamos (aunque me costara no dormir). Ejemplos:

  • Filtro ISAPI para introducir datos aleatorios y activar el balanceo de carga de servidores Web (al utilizar un lanzador de peticiones) para Benchmark con competidores.
  • Adaptación a Applets de prototipo de Banca por Internet (estamos hablando del 96).
  • Filtro NSAPI (para Unix HP) para limitar a través de semáforos el número de peticiones concurrentes a un servidor (que tenía recursos limitados).
  • Dlls para cambio en vuelo de lenguaje (castellano, inglés, alemán) de aplicaciones
    Windows.

Normalmente, trabajaba solo o tenía asignado algún becario.

Etapa en Software AG Proyectos Avanzados

Después de 2 años en formación, decidieron que mi colaboración sería útil en otro departamento: proyectos avanzados. Aquí la historia era distinta, proyectos reales con tiempos y costes.

Me enviaron de bombero (a apagar los fuegos, es decir, lo que saliera) donde me ocupé de las cosas raras (para variar):

  • Configuración de GPS´s (hora mundial).
  • Sincronización de Hora del servidor, la base de datos con Browser Internet, de personas en cualquier punto de España (más o menos, implementación del protocolo NTP con Java).
  • Servicio Windows multi-thread que combina FTP entrante y saliente, socket multicast a monitores remotos de estado, comunicación IPC con otros programas Windows donde lo más gracioso, es que bajo ninguna circunstancia podía
    fallar (tolerancia total) y si se caía debía seguir dónde se quedaba (una
    auténtica locura).
  • Diseño de generadores de pantallas Java (editor de recursos gráficos).
  • Applets para visión de fotos panorámicas.
  • Prototipado rápido de soluciones Java (servlets por fin).
  • Desarrollo de Webs basados en XML y XSLT. Generación de pdf al vuelo, caches de XSL.
  • Construcción de soluciones WAP para los primeros móviles inteligentes.

Además de esto, gracias a las aficiones comunes (el vicio por la informática) e intercambio de ideas y conocimientos, progresamos mucho en otras áreas.

  • Creación de metodología de desarrollo Orientado a objetos del departamento (y procedimientos de calidad).
  • Introducción en los proyectos de Patrones de Diseño orientado a objetos. Impartición de charlas a toda la empresa sobre eso.
  • Modelado UML y uso de RUP.
  • Primeros pasos con Seguridad Informática (Servidores Seguros, PKI, etc.).
  • Primeros programas construidos a mano para Gestión de Contenidos (más que nada, para centrarnos en la tecnología).
  • Nuevos productos de la casa.

Al principio trabajaba solo (por eso de hacer inventos) y posteriormente, empecé a tener gente a mi cargo (no más de 5 personas).

Etapa en Software AG (Preventa)

Dado que tecnológicamente estaba bastante a la última y que tras mis años en formación tenía poco sentido del ridículo (y buena capacidad de comunicación), decidieron que me ocupara, desde el punto de vista técnico (creación de demostraciones y preventa), de un nuevo producto, Bolero (lenguaje de cuarta generación) basado en (y que generaba) Java.

La película era bien distinta, no sólo tenías que conocer bien tu producto, sino defenderlo tecnológicamente delante de responsables de tecnología/negocio de otras empresas. Francamente, creo que se me daba bastante bien.

También tenía que participar en conferencias de usuarios haciendo demos a miles de personas.

Etapa en Software AG (Dirección Técnica)

Aunque parezca mentira, me volvieron a cambiar de departamento a Dirección Técnica de Consultoría y Servicios donde me encargaba de la dirección técnica (no de gestión) de pequeños equipos para el desarrollo de proyectos (en todas sus fases) basados en los nuevos productos y tecnologías (Java, Wap, Bolero, Tamino).

Normalmente, construía yo la primera parte o prototipo y el equipo completaba el grueso de la funcionalidad. Con otros compañeros técnicos intercambiábamos un conocimiento precioso que hacía que no parases de aprender.

Etapa en Vignette (Mayo 2000)

Un antiguo compañero me ofreció la posibilidad de formar parte del equipo que montaría Vignette, como empresa, en España.

Vignette era uno de los productos estrella en gestión de contenidos y se vendía la licencia a millones de Euros. Así que cogí los bártulos y nos fuimos a Estados Unidos, y a la vuelta, empezamos a desarrollar el negocio desde España, que antes se hacía desde Francia.

Supuso un reto más que interesante, ya que en menos de un año, tuvimos que abordar las situaciones más variopintas (y salimos hasta bien parados):

  • Relaciones con Partners.
  • Selección y contratación de personal.
  • Preventa de productos y servicios.
  • Implantación y planes de Formación.
  • Dirección de proyectos.
  • Gestión de grandes cuentas.
  • Arquitecturas de grandes proyectos de Gestión de Contenidos y CRM One-to-One.
  • Coordinación de equipos multinacionales.

Construimos sistemas que utilizarían millones de usuarios.

Como empresa y oportunidad fue francamente estupenda (y creo que la aprovechamos bien), pero decidí dejarla cuando iba a cumplir el año en ella (aunque me ha parecido media vida por la cantidad de cosas realizadas) ya que el exceso de implicación me estaba provocando problemas familiares. Mucho viaje por el mundo y conversaciones a deshoras se convierten en un problema si no lo sabes gestionar.

Etapa en Credit Suisse (Marzo 2001 – 2003)

En el momento adecuado, me ofrecieron un proyecto que me pareció igual o más interesante: montar un banco. Yo me tendría que hacer cargo, dentro del área de tecnología, de todo el Front-End (Internet, Contact Center, Red de Oficinas, Intranet y Herramientas internas).

La verdad es que si la aventura de Vignette me ha proporcionado grandes oportunidades de crecimiento (en conocimiento me refiero), esta ha superado ampliamente mis expectativas por la complejidadvariedad calidad permitiendo poner en práctica, en un solo proyecto, casi todo lo aprendido (habiendo participado antes desde el lado proveedor).

Esta vez mi labor fue la dirección técnica, estableciendo unas directivas (técnicas y organizativas) al grandioso equipo creado, ya que como comprenderéis, una sola persona poco puede hacer. Lo bueno es que me dejaron contratar a quien quise 🙂 y eso hace mucho.

  • J2EE en su máximo esplendor (miles de usuarios).
  • Seguridad de máximo nivel.
  • Integración de sistemas de Telefonía (Call-Center).
  • Herramientas de asesoramiento y planificación financiera.
  • CRM operacional y analítico.
  • Integración Front-Back.
  • Conocimiento funcional sobre productos bancarios.
  • Creación y gestión de equipos especializados.
  • Selección y negociación con proveedores (servicios y productos).

A mitad de proyecto, las divisiones de Banca Personal y Banca Privada se fusionaron a nivel internacional y decidieron que fuera yo quien coordinase todos los desarrollos a nivel nacional (Front-end y Back-end).

En este caso, surgen nuevos retos:

  • Unificación de criterios entre áreas heterogéneas.
  • Cambio personal de mentalidad tecnológica a funcional.

Y como los AdictosAlTrabajo somos así, que dormimos poco, he aprovechado para ponerme las pilas en:

  • Redes inalámbricas, Programación WindowsCE, Linux, Php, C#, MySql, Ant, CVS, Patrones J2EE, Tomcat, Structs, Seguridad…
  • Devorar decenas de libros de Management.

Para los que no crean en el efecto mariposa, cuando el 11S se estrellaron dos aviones sobre las Torres Gemelas cambio todo y me afectó directamente, al cambiar la estrategia del banco a partir de la crisis.

Autentia: mi propia empresa (Marzo 2003 – actual)

Después de la etapa en Credit-Suisse y la situación tan peculiar del mercado, algunos compañeros (responsables de arquitectura, creatividad e implantación) y yo, decidimos crear nuestra propia empresa: AUTENTIA.

El objetivo era sencillo, poner a disposición, tanto de otras empresas de servicios informáticos como a medianas y grandes empresas finales, nuestros propios servicios como arquitectos y expertos desarrolladores. La idea era construir una boutique donde técnicos satisfechos pudieran desarrollar su carrera técnica y donde afectáramos al mercado demandando más profesionalidad y profesionales cualificados.

Empecé creando y compartiendo conocimiento en www.adictosaltrabajo.com, abandonando labores de gestión y reconectando con el mundo técnico, impartiendo decenas de cursos de programación y programando de nuevo como arquitecto para terceros.

Normalmente, impartía cursos de Java básico hasta avanzado, Struts, patrones (GRASP, Coad, antipatrones, JEE, etc.), arquitecturas JEE, EJBs, C/C++, UML, estrategias de optimización de servidores Web, dirección de proyectos…

La mayor satisfacción se producía cuando me llamaban porque se caían servidores y no sabían qué pasaba y yo encontraba los fallos (que básicamente siempre eran los mismos: falta de conocimiento del equipo de desarrollo y sistemas).

Con el tiempo empecé a dejar paso a que otros dieran los cursos más técnicos y me centré en los de dirección de proyectos, porque dirigir una empresa que crece, hacer labores comerciales, dirigir el marketing y hacer los pagos y el control económico no te da con las horas que tiene el día.

Sobre todo, era frustrante lo rápido que avanzaba todo: lenguajes y frameworks, por lo que decidí centrarme en algo en lo que podría apoyar a mis compañeros, especializarme en metodología ágiles. Así, mientras ellos construían software, yo podría inferir en las direcciones técnicas para que pudieran tener los recursos que necesitaban para hacer integración y despliegue continuos con una demanda más controlada. Cada vez más, me llaman para aplicar metodologías ágiles y conceptos ágiles a toda la empresa https://www.autentia.com/wp-content/uploads/libros/Conceptos-agiles-aplicados-a-distintas-areas-de-una-empresa.pdf

He escrito 4 libros sobre la profesión, también por la frustración de ser hiperactivo, creer que he aprendido o interiorizado miles de cosas y no poder contarlas: https://www.autentia.com/libros/

Ahora, sobre todo, dedico el tiempo al futuro de la empresa (estrategia y marketing), dar clases en escuelas de negocio (IE), ocasionalmente en universidades, participar en conferencias, hacer labores comerciales (normalmente reactivas), asegurarme que me hago prescindible en la operativa diaria de la empresa (que funciona bien sin que yo tenga que participar mucho) y tener tiempo para arrancar casi todos los proyectos personalmente. Me sigue encantando ver el puzzle, poner en contacto a unas personas con otras y retirarme cuando veo que está canalizado.

Además, cada día tengo más inquietudes y me estoy volviendo más rural, por lo que sigue faltándome tiempo para hacer todo lo que quiero aprender.

Desde luego sé lo que me hace feliz: aprender de cualquier cosa y tratar de enseñarlo (que hace que a veces me meta en líos 🙂

Pues ya sabes: si quieres que compartamos momentos es tan fácil como que contactes para ver oportunidades.

Puedes contactar en: mail  Roberto Canales

@rcanales