Cómo contratar personal técnico en el mercado actual

Como sabéis, uno de los servicios que ofrezco es el de ayudar a contratar personal técnico: desarrolladores, arquitectos de software, analistas, data scientists, UX, DevOps, etc. Os voy a contar el porqué de mi éxito con algunos clientes con los que las más populares empresas de recruitment fallaron estrepitosamente.

Photo by rawpixel.com

Hoy en día, los que tenemos perfil tecnológico, recibimos ofertas de manera constante y llega un momento en el que el volumen de estas y lo mal planteadas que suelen estar, provocan el que dejemos de tener ganas de atenderlas.

Dada mi experiencia, tanto participando en procesos de selección como llevándolos a cabo, creo que puedo dilucidar algunas de las claves de porque pasa esto y cómo yo lo contrarresto.

La mayoría de los reclutadores no hablan el mismo idioma que los candidatos.

Photo by Amador Loureiro

En la mayoría de los casos que he visto los reclutadores son psicólogos, abogados, administrativos, gente de ADE, etc. Estos, como es natural, no suelen tener demasiados conocimientos tecnológicos (aunque me he encontrado muy gratas excepciones, he de decir). En muchas ocasiones su carencia de conocimientos es tan llamativa que les lleva a situaciones ridículas, como por ejemplo preguntarte por abreviaturas que no tienes en tu curriculum vitae mientras si tienes el nombre de la tecnología sin abreviar.

¿A quién no le han preguntado por su «experiencia con W3C»? ¿O le han preguntado cómo era que no sabía SQL a pesar de poner en LinkedIn todos sus años de experiencia con bases de datos? 

En mi caso, al venir del desarrollo (y seguir en él) y al haber manejado tantos proyectos distintos con tecnologías distintas, esa brecha es mucho más pequeña.

Obviamente, no conozco todo lo que existe. Sin embargo, mi afinidad hace que me resulte más fácil que a un psicólogo entender un conjunto de tecnologías que desconozco como para poder hablar de ellas en una conversación con sentido.

La mayoría de los reclutadores no entienden lo que mueve a los candidatos.

Photo by Clark Tibbs

A partir de una cierta cantidad de dinero con la que alguien tiene sobradamente cubiertas sus necesidades, el dinero deja de ser una motivación. Sobretodo si eres el tipo de persona que elegiría una profesión en la que toda la vida vas a necesitar seguir aprendiendo y vas a tener que trabajar duro para mantenerte al pie del cañón. A ese tipo de personas les mueven muchas más cosas.

Sin embargo, para muchos reclutadores parece que el dinero es lo único que ven como una justificación para tomar una decisión sobre una posición. No entienden que preguntes por el proyecto, por el equipo con el que vas a trabajar, o que no quieras desplazarte una hora para ir de tu casa al trabajo (y otra para volver).

¿Quién no va a preferir estar haciendo Aura con Chema Alonso antes que una aburrida web corporativa? ¿Quién no va a preferir trabajar rodeado de cracks de los que poder aprender que estar sólo ante el peligro sin nadie que le apoye?

Por mi parte, yo he tenido (y tengo) esas inquietudes. También me he visto diciendo que no a pesar de que la oferta económica fuese ruborizante, o incluso cuando me han dicho «pon tu la cantidad, da igual la que sea».

Por tanto, yo antes de hablar con ningún candidato, me entero bien de todas esas cosas que también me preocuparían a mi: ¿cómo es el proyecto? ¿con quién se va a trabajar? ¿con qué tecnologías? ¿cómo se organiza el trabajo? ¿se puede trabajar en remoto? ¿y si un día quiero ir a un hackathon? ¿voy a poder hacer mis propios proyectos o tendré que firmar una cláusula de exclusividad? Esas y muchas más son las cosas que les inquietan a la mayoría del personal técnico, ya que por suerte la mayoría está decentemente pagado.

La mayoría de los reclutadores no respetan el tiempo de los candidatos.

Photo by Ahmed Saffu

Tal vez sea por falta de educación, o porque para «cazar» a uno tienen que contactar a muchos, pero la mayoría de los reclutadores no te mantienen informado de como progresa el proceso, llegan tarde a las entrevistas o las cambian en el último momento.

¿A quién no le han dejado en ascuas tras tres entrevistas y cuando llamas te dicen que «el cliente está esperando la aprobación de Londres desde hace un mes, se me pasó avisarte para que no estuvieses pendiente»? ¿Quién no ha tenido que esperar a pesar de llegar puntual a la entrevista?

Personalmente, intento respetar el tiempo de los candidatos tanto o más de lo que me gusta que respeten el mío. Salvo causa de fuerza mayor no muevo algo que ya estuviese agendado e intento estár siempre disponible en el minuto exacto. Además, en cuanto el cliente me da algún tipo de feedback, se lo traslado al candidato de ipso facto, de tal modo que no tenga que estar pendiente.

También es cierto, que aunque entiendo que hay imprevistos y por lo tanto no es determinante, tomo nota de cuando un candidato me había dicho que estaría disponible a las 19 y llega a las 19:05.

Estas tres cosas son las principales de las que yo veo que no acaban de funcionar en los procesos de selección actuales. Por ellas creo que un informático con experiencia en la gestión y contratación de gente (un servidor), está teniendo éxito al encontrar gente para empresas que no han podido encontrar técnicos que les encajen ni con la ayuda de las «mejores» empresas de recruiting.

La ley de la oferta y la demanda no sólo funciona a la hora de hacer clientes, también hay que tenerla en cuenta a la hora de conseguir montar buenos equipos. Si se da una situación como la actual en el sector tecnológico, en la que hay muchos más puestos vacantes que personal cualificado para cubrirlos, hay que poner toda la carne en el asador para vender tu empresa y tu proyecto a los candidatos tratándoles como si fuesen el más importante de tus clientes.

Cómo ser feliz en el trabajo y en la vida

Actualmente vivimos en un mundo que corre raudo y veloz hacia ninguna parte. Cada uno tiene su experiencia que le lleva por su propio camino pero ese camino debería, cuanto menos, ser un camino feliz.

Me preocupa mucho que en las últimas semanas varias personas se hayan sorprendido porque ante su pregunta de «¿qué tal?» les haya contestado con un «muy feliz», acompañado de una gran sonrisa y de ningún «pero».

No soy psicólogo, ni coach, ni creo estar en posesión de la verdad universal. Sin embargo, supongo que en base a mi experiencia, he llegado en mi camino a un punto en el que me veo capaz de decir que soy y estoy feliz sin ruborizarme y es gracias a un truco que aprendí trabajando y que tiene una «fácil» aplicación a cualquier faceta de la vida.

Photo by Josh Felise

Vivimos rodeados de lo que algunos llaman «pornografía del éxito«.

Todos publicamos nuestros aciertos, las metas que hemos logrado, publicitamos los grandes momentos sin ningún tipo de pudor.

¿Quién no tiene en Facebook o Instagram a quien publica fotos de ensueño con su pareja? Aunque cambie de pareja cada mes.

¿Quién no sigue en Twitter o LinkedIn a alguna empresa o emprendedor que cuenta incesantemente cada pasito exitoso? Y puede que para ese bueno haya dado antes mil traspiés.

Es más difícil, sin embargo, ver a gente contando que ha fallado, que las cosas no han salido bien, o al menos no tan bien como cabía esperaba. Que no se ha hecho cima.

Esto no es una denuncia, es normal cuando se quiere parecer cool o vender. Es como con el chiste de aquel que tenía un caballo genial: le hacía el desayuno, llevaba los niños al cole, limpiaba, … Cuando por fin lo vende, el comprador le dice que todo eso no era verdad, que el caballo no hace nada más que comer y tirarse pedos, con lo que el vendedor le responde: tú sigue hablando así del caballo y verás a quién se lo vendes.

Sabiendo que es lo habitual, que la gente intenta vender, todos deberíamos ser conscientes de que no siempre lo que se cuenta representa del todo la realidad, de que tal vez esa llegada a la cima tenga algo de artificial. Sabiendo esto no deberíamos de fijarnos en sus éxitos a la hora de poner nuestras metas. No deberíamos esperar que como a ellos «todo nos salga genial», o precisamente que como a ellos «todo nos salga genial» sin ser así del todo.

Photo by Alexander Mils instagram.com/alexandermils

Y de esperar va el asunto, porque la mayor fuente de frustración e infelicidad que me he encontrado siempre en el desarrollo de proyectos, es una mala gestión de las expectativas.

Las expectativas son algo muy de cada uno, por eso es importante verbalizarlas al comienzo de los trabajos, para que todo el mundo espere los mismos resultados. Una cosa es comenzar a andar hacia arriba y otra esperar llegar al refugio con chimenea, al lago que queda a mitad de camino o a la cima.

Además, las expectativas son cambiantes. Cuando comenzamos a subir una montaña no sabemos si el tiempo cambiará, si nos torceremos un tobillo o si nos encontraremos un río que seremos incapaces de cruzar. Por esto es muy importante que ante cualquier eventualidad actualicemos las expectativas que tienen todos los implicados.

Y así con todo, las expectativas no siempre se cumplen pues cuando las establecemos y las actualizamos tendemos a ser ambiciosos, a buscar el máximo de lo que nos gustaría conseguir, por lo que no es nada malo dividirlas entre dos para tener una meta intermedia, un hito en el camino para que si sólo hemos llegado hasta él no nos sintamos tan frustrados y nos demos cuenta de que realmente hemos tenido éxito.

Photo by Jared Erondu

Gestionar las expectativas es algo que he ido aprendiendo proyecto tras proyecto, cliente tras cliente y equipo tras equipo. Unas veces ha salido mejor que otras y aún a día de hoy sigo aprendiendo matices y mejorando poco a poco. Pero es algo que tiene una aplicación sencilla en el día a día, ya sea cuando vamos a practicar un deporte, cuando conocemos a gente o cuando organizamos un cumpleaños sorpresa.

Aun así, tal vez no sea infalible. Hay quien dice que el propio hecho de «ser feliz» es una meta, y que a lo mejor nos deberíamos preocupar de estar bien, de ser un poco más felices… pero en cualquier caso, una buena gestión de las expectativas en el trabajo y en la vida nos hará más felices a nosotros y a todos los que nos rodean.

De mujeres en los premios Turing

Hace unos días, por casualidad observé un dato curioso a la vez que preocupante. El número de mujeres en los premios Turing es lamentablemente bajo, y lo volqué en Twitter en un hilo con un impacto completamente nulo. Por tanto, haré caso a las palabras del sabio Juan Hernando y cumpliré con eso de (parafraseando) si crees que algo es importante y quieres que perdure, escríbelo en tu blog.

Los premios Turing son unos premios que se dan a informáticos. Generalmente a quienes trabajan en algoritmia, protocolos, estructuras de datos, etc. en reconocimieto a su trabajo.

Aunque no viene al caso, los premios se llaman así en honor a Alan Turing quien os sonará por ejemplo por el famoso test de Turing que sirve para identificar si una inteligencia artificial es suficientemente avanzada.

Estos premios, se empezaron a dar en el año 66, y desde entonces se han dado a 54 personas. De estas, sólo 3 eran mujeres:

La primera mujer en recibir el premio fue Frances Elizabeth Allen por su trabajo en la optimización de compiladores. Además fue la primera mujer en llegar a ser socia de IBM y trabajó para la NSA.

Dos años después se lo dieron a Barbara Liskov por su trabajo en áreas como la abstracción de datos o enfrentarse al teorema CAP en sistemas distribuidos. Ahora está en el MIT y ha ganado otros premios notables.

En 2012 se lo dieron a la última, Shafrira Goldwasser, en un premio que le otorgaron junto a Silvio Micali. Se lo dieron por sus trabajos en criptografía y en complejidad (lo de los problemas NP).

No digo que la ACM (Asociación para la maquinaria computacional), que son quienes otorgan estos premios, discriminen a las mujeres de manera consciente. Sin embargo, hay muchas y muy buenas mujeres trabajando en tecnología desde siempre, de hecho la primera persona en la historia a la que se considera programadora es Ada Lovelace (una mujer), por lo que es claro que aunque sea de manera involuntaria esos números llevan a que hay alguna discriminación.

Además, resulta curioso que haya discriminación en unos premios que llevan el nombre de una persona discriminada, pues Alan Turing fue procesado y condenado por homosexualidad, lo que hizo que su carrera y su vida acabaran.

Recompensas para desarrolladores

Hablamos hace tiempo de distintos sitios en los que podías aprender a programar mientras jugabas. Hoy vamos a ver algunos sitios en los que para gamificar el desarrollo con sus tecnologías, te dan recompensas físicas a ciertos logros. A veces son unas simples (pero muy chulas) pegatinas, y a veces son cacharros con los que podrás jugar mucho más.

devRant duck

Por internet puedes encontrar algún recopilatorio e incluso hay alguna comunidad centrada en la obtención de recompensas (como codecuriosity y mulesoft), pero no conozco ninguno que tenga los premios o recompensas que se pueden conseguir específicamente en España, ya que algunas empresas distinguen entre países. Vamos a verlas:

  • En Codeship puedes conseguir merchan por usar su plataforma de integración continua.
  • En devRant puedes conseguir pegatinas o una bola anti-estrés si alguno de los mensajes que dejes en su comunidad de developers tiene más de 20 o 500 positivos. Si no quieres compartir nada, siempre puedes comprar en su tienda ¡y tienen patitos!
  • En Digital Ocean te dan unas pegatinas muy chulas de su mascota, sólo por rellenar una encuesta.
  • En Google Assistant te dan una camiseta si lanzas una aplicación, y te regalan uno de sus cacharros si consigues muchos usuarios, o si tus usuarios son recurrentes, o si pones tu aplicación en al menos dos idiomas.
  • En Product Hunt, si montas un evento o un hackathon, te mandan merchan para los asistentes.
  • En Hurricane Electric te dan una camiseta si te certificas como que sabes de IPV6.
  • En Scaleway te mandan una camiseta por usar su plataforma cloud.
  • En Datadog te mandan una camiseta por probar su plataforma de monitorización y análisis.

Estas son las que tengo fichadas ¿conocéis alguna otra?

All in one serverless solutions

There are a lot of platforms and applications that are providing serverless capabilities to our developments, avoiding us of thinking a lot about servers.

You can find services for serverless storage, serverless notifications, mailing, payments, forms, but it could be quite difficult integrate all of them into one single solution. What is the best way to have all possible functionalities in one only place and don’t do a lot of work?

all in one photo

Actually, you are able to use a lot of serverless functionalities from wide platforms like Google Cloud, AWS or Azure. Did you remember that article about Azure Serverless? That platform has a lot of high-level functionalities and services that can allow you don’t think about machines, operating systems, RAM, network, etc. when your app needs to scale. But the problem is almost the same, you have all those functionalities in a single platform but you have to do a lot of work to integrate them into one single solution.

There are some platforms that are ready to start working, providing you a lot of capabilities that are planned to work together. They could not be the best in performance or other facets, but they are really god to prototyping and to start working on your MVP accelerating your development. This is because they just work. Some of those are the following:

  • Firebase: Real-time database, authentication, hosting. A powerful platform for your mobile or web application.
  • Backendless: Real-time database, authentication, hosting.
  • Stamplay: «IFTTT For Back-End Development«.
  • Kinvey: Build your digital business faster with mobile Backend as a Service.
  • Syncano: An all-in-one platform to create real-time apps without a server.
  • Hoodie: Hoodie is a complete backend for your apps: develop your frontend code.
  • Para: Flexible and lightweight backend service for rapid prototyping, based on open source software.
  • Wolkenkit: It is a CQRS and event-sourcing framework for JavaScript and Node.js which fits perfectly with domain-driven design (DDD).

Did you know all of them? Look over them and be ready to run developing your next app, and if they are not complete enough for your needs, look for what you need. The Internet is full of serverless services.

¡El email marketing ha muerto! ¡Larga vida al email marketing!

Todos los que nos movemos en el negocio de la tecnología hemos tenido en algún momento alguna discusión sobre que el email marketing es un timo y que ya no funciona. ¿Es eso cierto? ¿Con qué se puede sustituir?

Es normal, que dados los porcentajes de apertura y de click en campañas de email, la gente sea reacia a invertir en ellas. La media es de 21.8% de apertura y 2.62% de click. A no ser que el precio sea muy bajo, menos de un 3% de click es para pensárselo muy mucho.

Sin embargo, puedo garantizar que hay casos en los que funciona y los porcentajes son mucho más altos. Lo sé porque lo he vivido.

Hace un par de semanas patrociné la Bonilista (el newsletter que escribe David Bonilla todos los domingos) para ofrecer mis servicios como autónomo. No tenía las espectativas muy altas (conociendo los porcentajes que veíamos antes), pero la verdad es que si conseguía un sólo cliente ya habría amortizado los 200€. El resultado no pudo ser más sorprendente.

Tenía en ese momento 8.180 suscriptores. Entre domingo, lunes y martes tuve unos 900 visitantes más de lo habitual, que se aproxima al dato que me da el análisis de campañas de GA. Depende del analytics que mire entre un 8 y un 12% vienen de los twits posteriores que puso recordando que yo había patrocinado la publicación de ese día. Echad las cuentas, son datos muy por encima de las medias. De ahí han salido 5 visitas comerciales, y 10 leads que quieren contactar en el futuro. Ya me han aceptado los dos presupuestos que he lanzado tras esas visitas, y lo mejor es que son proyectos chulos de verdad.

Mailchimp bonilista

Podría parecer la excepción que confirma la regla, pero no es así.

Por ejemplo, cuando estaba en eldiario.es vi como hacían especiales con muchas ONGs. ¿Y que tiene que ver eldiario.es y las ONGs conmigo y la Bonilista? Por lo menos dos cosas:

  • Tanto eldiario.es como la Bonilista envían correos que la gente espera recibir y que saben que llevarán contenidos de su interés.
  • El público objetivo de las ONGs coincide con el que lee eldiario.es, así como mi publico objetivo coincide con los lectores de la Bonilista.

No es que la Bonilista sea la panacea, probablemente si se anunciase una sastrería de trajes a medida, no obtuviese un gran resultado, pero si tu publico son los trabajadores del metal y los CEOs de PYMEs tecnológicas, ese es tu sitio. Yo ya se lo he recomendado a un par de empresas con las que trabajo ayudándoles en el desarrollo de negocio, cuyo público es ese mismo.

Por tanto, no es que el email marketing sea una mierda, es que hay que encontrar el sitio adecuado donde tú encajas. ¿Conocéis algún otro sitio con ese tipo de publico? ¡Estoy deseando hacer email marketing con ellos!

Desarrollo seguro: OWASP

Recientemente, he estado repasando los cursos que hay online, en universidades y en otras entidades sobre desarrollo seguro, viendo que casi todos se centran en OWASP (Open Web Application Segurity Project), lo cual está muy bien, pero se quedan en hablar del Top 10 de vulnerabilidades, y en realidad hay mucho más.
security photo

Está muy bien saber cómo se puede originar un fuego, pero es mucho más importante saber cómo actuar en cada caso o cómo se puede evitar que el fuego llegue a iniciarse ¿no? Con la seguridad en el desarrollo pasa lo mismo.

En el PDF que resume las vulnerabilidades, se pueden ver unos anexos con las responsabilidades de cada perfil (manager, developer y tester), y una pequeña guía para que una organización sea  segura. Esos anexos son muy importantes, puesto que nos ayudarán a ver si estamos haciendo las cosas bien o no.

Y bien, sabiendo los problemas que pueden surgir y la responsabilidad de cada uno para tener una empresa que practique desarrollo seguro ¿qué hacemos? Llegamos al que para mi es uno de los compendios más importantes que realiza este proyecto: OWASP Proactive Controls. En él se resumen las buenas prácticas que hay que realizar para funcionar de un modo seguro y evitar la mayoría de los incendios. Este es su propio Top 10:

  1. Verificar la seguridad pronto y a menudo
  2. Parametrizar las queries
  3. Codificar los datos
  4. Validar todas las entradas
  5. Implementar controles de autenticación y de identidad
  6. Implementar controles de acceso apropiados
  7. Proteger los datos
  8. Implementar logging y detección de intrusos
  9. Aprovechar frameworks y librerías de seguridad
  10. Manejo de errores y excepciones

¿Pones todos esos puntos en práctica? Sé que puede parecer difícil, pero profundizando un poco más, podréis ver que tienen también guías específicas de cómo hacerlo con cada tecnología, porque no es lo mismo estar haciendo una app para Android, que una web en PHP, y siguiéndolas podréis de un modo sencillo aseguraros de que estáis poniendo todo de vuestra parte para que vuestros desarrollos sean seguros.