Saltar al contenido

Artículos, tutoriales, trucos, curiosidades, reflexiones y links sobre programación web ASP.NET Core, MVC, Blazor, SignalR, Entity Framework, C#, Azure, Javascript... y lo que venga ;)

17 años online

el blog de José M. Aguilar

Inicio El autor Contactar

Artículos, tutoriales, trucos, curiosidades, reflexiones y links sobre programación web
ASP.NET Core, MVC, Blazor, SignalR, Entity Framework, C#, Azure, Javascript...

¡Microsoft MVP!
Mostrando entradas con la etiqueta empresa. Mostrar todas las entradas
Mostrando entradas con la etiqueta empresa. Mostrar todas las entradas
miércoles, 23 de enero de 2008
He encontrado una interesante relación de técnicas destinadas a favorecer la creatividad y generar ideas publicada en Neuronilla. En ella se explica, a veces de forma muy detallada, para qué puede ser aplicada cada técnica, el procedimiento a seguir en cada caso, ejemplos y enlaces para ampliar información.

A modo de resumen, encontraremos:

  • Mapas mentales, que permite explorar problemas y generar ideas usando una técnica muy gráfica de acceso al potencial del cerebro a través del pensamiento irradiante.

  • Arte de preguntar, útil para observar problemas desde distintas perspectivas, utilizando un arsenal de preguntas predefinidas (¿cuándo?¿qué clase de?¿con qué?...)

  • Brainstorming, o tormenta de ideas, todo un clásico en las técnicas grupales para generar ideas.

  • Relaciones forzadas, técnica que suele usarse complementando al brainstorming en momentos de aparente bloqueo, creando nuevas situaciones a partir de la combinación de hechos conocidos con desconocidos.

  • SCAMPER, cuyo nombre está compuesto por las iniciales de las cuestiones a plantearse que estimulan la creación de ideas: ¿Sustituir?¿Combinar?¿Adaptar?¿Modificar?¿Para otros usos? ¿Eliminar o reducir?¿Reordenar o invertir?

  • Listado de atributos, técnica considerada ideal para la generación de nuevos productos, o mejorar los existentes, consiste en enumerar atributos del objeto o concepto, e intentar mejorar o solucionar cada uno de ellos.

  • Analogías, consistente en la generación de ideas para solucionar un problema dando un rodeo, acudiendo a otras disciplinas no relacionadas; por ejemplo, resolver un problema empresarial observando el comportamiento de un equipo deportivo.

  • Biónica, técnica usada en ámbitos tecnológicos, que persigue la creación de aparatos útiles basados en el estudio de los sistemas biológicos. Ejemplos hay muchos: aviones, radares, el velcro...

  • Creación en sueños, que aprovecha el poder creativo del sueño y estados de sopor para solucionar un problema, se basa en la interiorización de la cuestión a solventar antes de ir a dormir, y en tener a mano papel y lápiz para anotar las imágenes y asociaciones llegadas en estos momentos.

  • Método Delfos, también llamado Delphi, que utiliza expertos en una materia para encontrar soluciones a problemas a través de análisis sucesivos de éste y las respuestas obtenidas en fases iterativas.

  • Análisis morfológico, que permite generar gran cantidad de ideas en muy poco tiempo descomponiendo un problema en sus elementos más básicos, creando una matriz que facilita la combinación aleatoria de las distintas posibilidades existentes en cada uno de ellos.

  • CPS (Creative Problem Solving) define procedimiento de seis pasos para la solución creativa de problemas: definición de objetivos, captura de información, reformulación del problema, generación de ideas, selección y refuerzo y creación del plan de acción.

  • Técnica Clásica, que establece un método de cinco pasos secuenciales a seguir para la generación estructurada de ideas: recogida de materia prima, trabajo con ideas, incubación inconsciente, inspiración y finalización.

  • Relajación, como técnica básica para potenciar la imaginación, intuición, concentración y atención.

  • Visualización, o pensamiento mediante imágenes, esquiva las limitaciones del lenguaje centrándose exclusivamente en otros aspectos, facilitando la vivencia de experiencias futuras.

  • Mitodología, aprendizaje del proceso creativo a través del uso de dramatizaciones basadas en personajes mitológicos.

  • Ideart, usa estímulos visuales (pinturas) para la generación de ideas mediante provocación, creando vínculos entre ellos y el foco creativo.

  • TRIZ, una metodología creada especialmente para generar ideas ingeniosas en problemas tecnológicos, muy utilizada en ámbitos industriales.

  • CRE-IN, conjunto de técnicas destinadas a la búsqueda interna de la paz, la reflexión, relax, etc., con objeto de generar una actitud más imaginativa y desestructurada.

  • 4x4x4, técnica de producción de ideas a base de la obtención, primero de forma individual y luego grupal, de ideas, que van compartiendo y seleccionando sucesivamente.

  • La técnica DaVinci, que se basa en dejar actuar a la intuición para la generación de ideas de forma visual, dibujando y escribiendo conceptos procedentes del subconsciente.

  • Seis sombreros para pensar, una técnica de análisis y resolución de problemas desde distintas perspectivas, representadas como sombreros. Así, los participantes deberán concentrarse en generar ideas según el sombrero que tengan puesto: optimismo, objetividad, creatividad, cautela, etc.

  • Provocación, que elimina del pensamiento los patrones establecidos para la resolución de problemas al basarse en ideas deliberadamente absurdas (provocaciones), lo que facilita la generación de ideas diferentes.

  • Programación neurolingüística, que ayuda a determinar las estrategias mentales de personas muy creativas para poder replicarlas en otros. Por ejemplo, del estudio de Walt Disney se obtuvo el Modelo de Creatividad Disney, una técnica basada en el comportamiento de este genio.

  • DO IT, que además de traducirse como "Hazlo", corresponde a las iniciales de las fases de la técnica, Definir el problema, Open (abrir la mente a múltiples soluciones), Identificar la mejor solución y Transformarla en acción eficazmente.

  • Estratal, técnica consistente en la creación de enunciados paralelos en torno al objetivo, que se consideran como una totalidad aún siendo independientes unos de otros.

  • Método 635, en el que seis personas escriben tres ideas durante cinco minutos, pasándolas a sus compañeros hasta completar un ciclo. Se considera igual de efectivo que el brainstorming, y más controlable.

  • Brainwriting, o lluvia de ideas escritas, utiliza una técnica similar al brainstorming para generar gran cantidad de ideas en grupos remotos, o con problemas con dificultades de comunicación.

  • Conexiones morfológicas forzadas, facilita la aparición inicial de ideas sobre aspectos que no se han tenido en cuenta, así como la inspiración basada en analogías.

  • Inversión, una interesante técnica que consiste en darle la vuelta al objetivo y hacer que este giro hacia un planteamiento absurdo provoque la aparición de nuevas ideas.

  • Empatía, que facilita la percepción desde una perspectiva ajena al individuo.

  • Alternative Environment, técnica utilizada para favorecer la aparición de soluciones inusuales a retos usuales.

Como indican al principio, aunque es posible usar muchas de ellas de forma individual, lo óptimo es trabajarlas en grupos de 6 u 8 personas de perfil heterogéneo, sin niveles jerárquicos, clima de confianza y cohesión y manteniendo siempre visibles los objetivos a lograr.

Para más información, visitad la web http://www.neuronilla.com/.

Publicado en: http://www.variablenotfound.com/.
domingo, 13 de enero de 2008
Hace unos meses, el blog Inter-Sections publicó un interesante post donde el autor recogía las conclusiones obtenidas a partir de su experiencia desarrollando y seleccionando personal, respecto a cómo reconocer a los buenos desarrolladores.

Esta información, además, ha sido complementada con decenas de comentarios de lectores a raíz de su reciente aparición en Slashdot, convirtiéndose en un artículo muy recomendable para los que estamos en el mundo del desarrollo de software y vemos lo complicado que resulta a veces dar con las personas apropiadas. Y es que la contratación del personal adecuado es un factor clave para el éxito (y a veces supervivencia) en una empresa de software, cuya actividad se basa en gran medida en el talento de sus desarrolladores.

Los indicadores clave que, según Daniel, nos pueden ayudar a detectar a los buenos desarrolladores de software se agrupan en los siguientes puntos:
  1. son apasionados por el desarrollo
  2. son autodidactas y les encanta aprender
  3. son inteligentes
  4. normalmente tienen experiencia oculta
  5. son conocedores de tecnologías variadas y punteras
  6. por último, aporta lo que en su opinión no es en absoluto determinante: la titulación.
Estos se concretan en un resumen final de características positivas y negativas, casi un checklist, que nos podrían ayudar a detectar comportamientos y actitudes clave:

Indicadores Positivos (propios de los buenos desarrolladores)
  1. Apasionado por la tecnología
  2. Programa por hobby
  3. Capaz de hablar durante horas sobre temas técnicos si se le anima
  4. Lleva (y ha llevado) a cabo proyectos personales
  5. Aprende nuevas tecnologías por su cuenta
  6. Opina sobre las tecnologías apropiadas en cada caso
  7. Se siente poco cómodo usando tecnologías que no considera correctas
  8. Es claramente inteligente, se puede conversar con él de muchos temas
  9. Comenzó a programar mucho antes de ir a la universidad o empezar a trabajar
  10. Tiene "icebergs" ocultos, grandes proyectos y actividades personales que no aparecen en el currículum.
  11. Conoce gran variedad de tecnologías, que pueden no encontrarse reflejadas en el CV.

Indicadores Negativos (propios de los no tan buenos desarrolladores)
  1. Ve la programación simplemente como su trabajo
  2. No habla de programación fuera del trabajo
  3. Aprende nuevas tecnologías exclusivamente en cursos ofrecidos por la empresa
  4. Se siente cómodo con la tecnología que se les imponga, piensa que cualquiera es buena
  5. No parece ser muy inteligente
  6. Comenzó a programar en la universidad
  7. Toda su experiencia en programación está en su currículum
  8. Está centrado exclusivamente en una o dos tecnologías

En mi opinión, aunque la lista incluye puntos interesantes y acertados, y puede sernos útil como base para la reflexión, el tema creo que es mucho más complejo. Seguro que cada uno de nosotros podría matizar los puntos, eliminarlos o ampliar las listas, tal y como se pone de manifiesto en los comentarios del post, partiendo de nuestras propias experiencias y convicciones.

Por ejemplo, desde mi punto de vista, los indicadores positivos podríamos ampliarlos mucho; los buenos desarrolladores deben mostrar, aparte de las habilidades y actitudes ya citadas, otras comentadas por aquí hace tiempo como capacidad de comunicación e integración en equipos de trabajo, responsabilidad, compromiso, interés y cariño por el resultado de los productos que uno genera, habilidades literarias, curiosidad y seguro que un larguísimo etcétera. Además, pueden producirse falsos positivos; como muestra, decir que es bueno ser un apasionado del desarrollo, pero este hecho no garantiza el ser un gran desarrollador.

En el grupo de los indicadores negativos podríamos añadir, por ejemplo, los inversos de las características anteriores (incapacidad de hacerse responsable de algo, falta de cuidado en los resultados...), o matizar las recogidas por Daniel. Por ejemplo, estar centrado exclusivamente en una o dos tecnologías puede ser indicador de una gran especialización, o tener intereses y hobbies ajenos a la programación puede ser muy beneficioso para los profesionales que nos dedicamos a esto.

Y es que también hay que tener en cuenta que no es lo mismo ser un gran desarrollador en tu casa, como hobby, que serlo en una empresa. He conocido magníficos desarrolladores que según estos indicadores no parecerían pasar de la mediocridad, al igual que otros que aún cumpliendo la mayoría de los puntos positivos adolece de otras características, como habilidades de trabajo en equipo o actitudes elitistas, que lo hacen absolutamente inútil en una compañía de producción de software en el que tendrá que trabajar codo con codo con sus compañeros.

En cualquier caso, se trata siempre de características difíciles de percibir por la empresa vía el tradicional currículum y de ahí la necesidad de contar con medios complementarios como los blogs (sabéis que tengo la certeza de que los blogs ayudan a encontrar empleo), o realizar entrevistas y pruebas de nivel cada vez más complejas.

Publicado en: http://www.variablenotfound.com/.
domingo, 30 de septiembre de 2007
El otro día comentábamos en mi empresa que podría ser el momento de incorporar un nuevo desarrollador software en el equipo, de contratar a alguien. Esto, que puede resultar rutinario en grandes compañías, es para los que somos pequeños, un auténtico suplicio.

Experiencias anteriores nos han demostrado que los portales de empleo son útiles cuando se trata de ofertas muy específicas a la que acudirán pocos candidatos. Casos más genéricos, como podría ser la contratación de un desarrollador con cierta experiencia bajo unas condiciones aceptables, provocan una entrada masiva de candidatos que hacen de la selección un proceso imposible... ¿qué pequeña empresa puede preseleccionar con tino de entre una lista de cientos de personas, entrevistar físicamente a decenas de personas y encontrar a su candidato ideal?

Esta masificación es la que hace que tengan mayores probabilidades de éxito aquellos candidatos que destacan de alguna forma sobre el resto. Conocimientos técnicos, habilidades, actitudes... son muchas las características interesantes para las empresas, y algunas de ellas son difíciles de demostrar a priori, y más aún usando el habitual curriculum.

Y es justo aquí donde los blogs pueden jugar un papel fundamental. Si estás buscando empleo, se me ocurren al menos diez razones por las que deberías tener tu propio blog e incluirlo en tu currículum como un activo de alto interés:

1. Demuestras tus conocimientos.
Sí, es cierto que tu título debería hacerlo o al menos ser una pista, pero por desgracia no es así. El mero hecho de poseer una ingeniería, titulación técnica o haber realizado cursos específicos no implica un nivel de conocimientos determinado, pues la mayoría de las veces éste se adquiere con la experiencia o de forma autodidacta.

En un blog puedes demostrar tu nivel de conocimientos en los temas que tratas, tus especialidades, preferencias e inquietudes de forma mucho más directa, detallada y creíble de lo que puedes hacer con un currículum tradicional.

2. Demuestras tu facilidad de aprendizaje
Respecto a esto, siempre digo lo mismo: si piensas que vales lo que sabes, estás muy equivocado. Tus conocimientos de hoy no tienen mucho valor más allá de un par de años. Lo que vales es lo que puedes llegar a aprender, la facilidad con la que te adaptas a los cambios que esta profesión nos regala tan frecuentemente.

Tu blog puede demostrar que tienes una actitud positiva frente al aprendizaje.

3. Demuestras pasión por tu profesión
La pasión por tu profesión, por tu trabajo, esa característica tan demandada en el mundo empresarial, viene incluida casi de serie en el blogger. Resulta imposible imaginar a alguien al que no le guste el mundo del desarrollo de software escribiendo varios posts mensuales comentando las nuevas tecnologías que va descubriendo, trucos o cualquier tema relacionado con ello.

El simple hecho de tener un blog ya es un punto a tu favor.

4. Demuestras tu capacidad de trabajo
Un blogger, salvo excepciones (que seguro que hay), es un trabajador nato. Es importante tener en cuenta que cada post requiere un trabajo considerable, sobre todo cuando se genera contenido propio. Existen asimismo otras tareas, como la lectura de fuentes o la gestión de comentarios que pueden llegar a consumir mucho tiempo y esfuerzo. Esto, además, tiene mucho más mérito cuando se hace por gusto (véase el punto 3).

Obviamente, ser trabajador es una característica muy apreciada por la empresa, y tu blog te ayudará a demostrar que lo eres. ;-D

5. Demuestras rasgos importantes de tu personalidad
En cada post que escribes vas dejando un poco de tí mismo; consecuentemente, si sumas muchos de ellos seguro que podríamos unir tantos trocitos que habría información suficiente para psicoanalizarte en profundidad.

Las características personales de los candidatos son aspectos vitales en un proceso de selección. En el mundo del desarrollo, nadie va a contratar a personas conflictivas, violentas, de posturas radicales o de difícil encaje para el trabajo en equipo.

La imagen que transmites en tu blog puede ayudar a las empresas a hacerse una idea de cómo eres y de cómo no.

6. Demuestras tus habilidades literarias
Aunque a veces sea injustamente considerada la parte más tediosa y poco creativa de nuestra profesión, no olvidemos que una buena parte del trabajo de desarrollador consiste, a distintos niveles, en escribir textos. Pantallas, mensajes, ayudas, documentación de código, documentos técnicos, de diseño, análisis o propuestas son sólo algunos ejemplos de las tareas para las que hay que saber redactar apropiadamente. Las faltas de ortografía, o simplemente una redacción pobre en cualquier entregable, dan muy mala imagen de la persona y empresa que los generan.

Tu blog, aparte de ayudarte a cultivar estas virtudes, demuestra cómo podrías hacerlo en el desempeño de tus tareas como profesional, aportando un plus respecto al resto de candidatos que simplemente presentan un currículum.

7. Fortaleces y demuestras tu capacidad de comunicación
Un blog, aunque pueda parecer lo contrario, no es una herramienta de comunicación unidireccional, una palestra donde recitar monólogos: se escribe, se escucha, se debate, se critica, se comparten conocimientos y experiencia.

Ya en su momento, en el post "Entre 10 y 28 desarrolladores por el precio de uno" comenté que una de las características imprescindibles de un buen desarrollador es la capacidad comunicación bidireccional, pues repercute de forma muy positiva en la productividad del equipo de trabajo donde se ubique. Y, ¿qué es un blog sino un potente medio de comunicación?

Tu blog hace que te comuniques, y demuestra la facilidad que tienes para ello.

8. Demuestras tu experiencia, incluso si no la tienes
Está claro que nadie que busque su primer trabajo tiene experiencia; también es cierto que la experiencia es vital para encontrar empleo... ¿cómo salimos de este círculo sin fin?

Hay personas que sin haber salido todavía al mercado laboral, acumulan ya centenares de horas de vuelo. Suelen ocupar sus ratos libres en investigar, probar, aprender, y a veces pueden llegar a alcanzar niveles de dominio de una tecnología increíbles, y que serían muy valiosos en el mundo empresarial. El problema casi siempre es demostrarlo.

Tu blog puede demostrar la experiencia que tienes como desarrollador, independientemente de si has comenzado o no tu carrera profesional. Y si además participas en proyectos de software libre, mucho mejor.

9. Ganas prestigio
Lo mejor para conseguir un puesto de trabajo son, sin duda, las referencias y recomendaciones facilitadas por personas o entidades de confianza. Sin embargo, en un mundo 2.0 como éste, donde somos los usuarios de la red los que vamos aportando nuestro granito de arena a la inteligencia colectiva, no hay mejor aval que la credibilidad y fidelidad de cientos o miles de individuos repartidos por todo el mundo que, día a día, leen, comentan y citan nuestros posts.

Un blog con contenidos medianamente decentes se va haciendo, a la larga, un hueco en la red, aumentando el prestigio y autoridad de su autor.


10. Y sobre todo, destacar
Destacar sobre el resto de candidatos que, como tú, son ingenieros, técnicos, programadores estupendos o grandes expertos en lenguajes de última generación. Es la distinción lo que puede hacer que triunfes, y especialmente si acabas de terminar tus estudios, momento en el que se lanzan al mercado laboral decenas de jóvenes con currículums prácticamente idénticos.

Incluir el blog en tu currículum provocará, como mínimo, la curiosidad de los responsables de las primeras fases de una selección de personal, que probablemente acudirán a comprobar si eres el candidato apropiado.

En fin, espero que estas reflexiones puedan servir para algo; por un lado, motivar a aquellos que todavía no tienen blog para que se atrevan a empezar, y por otro, para animar a los que ya lo tienen y trabajan duro en él. En cualquier caso, tened por seguro que va a valer la pena.