domingo, 4 de octubre de 2009

Cuanto pesa el conocimiento específico en tecnología al seleccionar desarrolladores?

Tomemos una nota antigua ( 2007) aunque no desactualizada en cuanto al planteo. Se titula "Does specific technology knowledge matter when recruiting?"

Tomo como drivers estos párrafos, para volver a insistir en el proceso de selección de talentos en IT.

In a time when many job advertisements are flooded with technology buzzwords (sometimes even requiring longer experience with a technology than it existed), Dan Creswell found an interesting difference in Amazons job opening for a senior research engineer. Dan asks:

"Notice anything interesting? It's for a seriously heavyweight distributed systems engineer sure but look deeper. Do you see mention of a single piece of technology? J2EE? JavaScript? Ruby? No, right? How weird is that? How many job specs do you see like that? Surely what matters is whether you know JBoss or Websphere, Java or Erlang or Ruby?"

Even though working directly for Werner Vogels may not be for everyone, Dan reflects on the current state in software business:
So often I see companies create job specs for engineers where the key requirement is to hire someone who can hit the deck coding like mad using whatever tools have been selected. To that end they load the specs up with endless tech hubris and at interview ask the details of this or that bit of syntax or API call. But what about the next project within the company where the tech is different? All those engineers that just got hired are now useless, they don't have the skills and we lose time whilst they learn. Or we could fire them and hire another lot?


The industry complains that schools doesn’t teach students what the industry needs (read: the current buzz word technologies). The schools react by changing the courses to please the industry, but looses some of the harder parts in the process. The industry then recruits these students, who have not been taught as many different ways of thinking as before, and as Dan writes, the following scenario becomes standard practice:

"Of course what happens more often than not is that companies ensure they don't use new tech. Instead they force new projects into using all the same stuff they used before. This is a design disaster as now technology is dictating not design or suitability to requirements. A company that follows the hit the deck coding mantra just has deathmarch and no career progression stamped all over it."


And finally, when a company has turned into a Java shop or a .NET shop and it’s time to recruit more developers, it’s easy to recruit people with the desired knowledge.

El "mundo ideal" donde buscamos profesionales de IT con algo más que experiencia en cierta tecnología, donde podemos cambiar.. migrar... crecer sin necesidad de contratar un team nuevo se ve reflejada en el análisis de los actuales procesos de selección para el área IT.

Varias veces he hecho incapié en la colaboración que selectores ( internos o consultores) deben tener con el team técnico. El responsable interno de tecnología no puede estar alejado del proceso y de la definición de las competencias que un talento IT debe tener para sumarse al team.

También hice incapié en el error al pedir "experiencia de mas de 3 años en .net", cuando no había en Argentina un proyecto de desarrollo sobre esa tecnología.. solo pilotos. ¿Cómo le hacemos entender como consultores externos al selector de turno... que eso no existe?

No focalizar solamente en una lista de "buzzwords" que generalmente los selectores no especializados no pueden digerir. Mirar al candidato desde una visión generalista ( vamos que esa horrible palabra para el mundo IT.. también existe..), entender su formación profesional desde el lado funcional, paradigmática, su capacidad de definir o generar cambios, su pasión por lo que "todavía no se usa en proyectos aquí", la curiosidad y la autocapacitación.

En mi epoca de docente, donde la materia específica "Introducción a las estructuras de datos y programación avanzada", parecía no tener atracción para el estudiante... "¿Esto para que sirve?" seguida de "No lo piden en ningun trabajo"

Lógica, Estructuras de datos, Algoritmos, Resolución de problemas, Matemática Discreta, Funcionalidad de procesos en Organizaciones, Análisis de requerimientos, etc.. etc

¿Qué peso tienen estos conocimientos en el proceso de selección que hacemos de nuestros futuros empleados para un equipo de desarrolladores?... ¿Quién es el encargado de realizar selección sobre estas competencias en el punta a punta de nuestro proceso de selección?... ¿Están los selectores en conocimiento de ello? ...

Últimamente comparto con colegas y clientes este cuestionamiento. Sé que en muchas empresas, están tomando el lineamiento del "profesional integral" y encuentran en el mercado una falta de madurez al respecto.

¿Es mejor cambiar todo el team de la mano del cambio de tecnología?

7 comentarios:

Leandro dijo...

Hola Mariana, coincido con lo que comentas. Después de casi una década trabajando en sistemas, cada vez me es más dificil pasar por un proceso de selección de calidad.

El "buzzword" transforma al individuo en "commodity", y funciona, con bastante éxito para los dueños de software factories, aunque así no tanto como para sus recursos.

Ojalá pudieramos tener casos como el de Amazon, una empresa creadora de tecnología de punta, puede hacer ese tipo de búsquedas, y utiliza al indivduo como un medio de transformación para lograr objetivos estratégicos y no de intercambio.

Por desgracia en nuestro país no se incentiva la investigación ni a la creación, sinó la intermediación, no por falta de calidad ni cantidad de recursos entiendo, sino por tantas otras razones,... razones que supimos conseguir.

Carlos Crosetti dijo...

Hola Mariana, no hay que dejar de lado que la gente asocia palabras tecnologicas para ser "halados" pero en una entrevista tecnica con el cliente demandante del puesto, el candidato queda al desnudo, y en esa ocasion la experiencia real puede sr indagada con el espacio necesario para detectar si el candidato sabe o esta sobrevendido.

Carlos Crosetti dijo...

Leandro, podes dar un ejemplo de "Amazon, una empresa creadora de tecnología de punta" de algo de punta que haya crado Amazon? Para mi no es otra cosa que un negocio de e-commerce que usa la tecnoligia y trata de explotar su nncho - no "cres" nada.

Con respecto a "sino por tantas otras razones,... razones que supimos conseguir." podes citar algo concreto?

Unknown dijo...

Carlos, sobre "en una entrevista tecnica con el cliente demandante del puesto, el candidato queda al desnudo, y en esa ocasion la experiencia real puede sr indagada con el espacio necesario para detectar si el candidato sabe o esta sobrevendido"
100% de acuerdo. Lamentablemente muchos candidatos no pasan la primera entrevista porque no es con alguien tecnico sino alguien de seleccion que no sabe detectar mas que "cosas que le hacen ruido" y no lo dejan demostrar la capacidad tecnica....Sabemos que la gente de IT.. hace ruido!!!

MartinC dijo...

Y al reves, un gran numero de veces (por no decir todas) el candidato no se entera de que se trata el puesto hasta que supero un numero de entrevistas.

Es por eso que al menos en mi caso ignoro practicamente todas las propuestas que no sepan exactamente que puedo ofrecer y para que me quieren.

Normalmente me llaman para llenar un puesto semi senior en C# obviando que en mi curriculum dice bien grande y destacado "15 años de experiencia"


Saludos

Damián dijo...

Mariana, entiendo la problemática que contás, y la preocupación de muchos por no quedarse "estancados" en cierta tecnología, que puediese llevarlos a quedar fuera del mercado en un futuro.

Pero también es verdad que hoy en día, la mayoría de las empresas buscan perfiles muy específicos porque el proyecto así lo requiere, es decir: si estoy buscando un senior java, no me sirve un senior .net y mucho menos alguien que viene programando desde hace 15 años en cobol. Es más, gran cantidad de veces, "seniors" java no encajan en las búsquedas debido a que no tienen conocimiento sobre alguna tecnología puntual y los tiempos no dan para una capacitación...asi que es mucho mas complicado de lo que parece.

De cualquier manera, Leandro, no reneguemos de la situación...no estoy de acuerdo con lo de: "...funciona, con bastante éxito para los dueños de software factories, aunque así no tanto como para sus recursos."
Gracias a esta situación un desarrollador Java o .net tranquilamente está ganando muy buena plata, ni hablemos del mundo SAP, asi que no digamos que no es bueno para los recursos.

Como reflexion final, no creo que se pueda poner como responsable total del desarrollo profesional de una persona a la empresa, el desarrollo se logra poniendo un poco de ambas partes, tal vez las empresas que nombra Leandro hayan conseguido eso porque la gente que trabaja ahi también tiene pasión por investigar y capacitarse por su cuenta y que no se va ante la primer oferta en la que le pagan $200 mas (No señalo a nadie con esto, solo lo veo como algo muy común)

Unknown dijo...

Damian, coincido con lo que vos das en llamar tu conclusion final. El responsable ( por decisiones y por gestión del conocimiento) de la carrera de cada uno, es uno mismo.

Gracias por tu comment
Marian