Social Icons

Pages

25 de abril de 2009

Habilidades de un programador en el futuro

Es obligacion de las personas que estamos en el area de la informatica y las TI actualizar nuestros conocimientos, debido a que estos resultan obsoletos rapidamente con el paso del tiempo. Dentro de la programacion, atras quedaron los tiempos de Pascal, Fortran y Basic; incluso lenguajes no tan viejos como ASP han sido rezagados.

Esta es una lista de habilidades que habremos de tener los programadores durante los proximos años:

1. Las "4 Grandes Plataformas": C, Java, .NET, PHP

Aunque estas plataformas son lentas y pesadas, desarrollar software sobre ellas es sinonimo de exito laboral, asi tambien, es necesario conocer los frameworks y librerias asociadas con profundidad.

2. Aplicaciones Ricas de Internet (RIA - Rich Internet Applications)

El exito de Flash (mas alla de animaciones inutiles y pesadas) radica en que obtuvo funcionalidad adicional en la forma de Flex y AIR. Los navegadores estan mejorando sus motores JavaScript, el cual se perfila como LA plataforma de aplicaciones web. Ademas, el HTML 5 incorpora funcionalidad RIA.

3. Desarrollo web

El desarrollo web es muy demandado en la actualidad, y lo seguira siendo por algunos años mas, tenemos que mejorar nuestros conocimientos de JavaScript, Ajax, CSS y HTML.

4. Servicios web

Cada vez es mas dificil ser un desarrollador sin tener que consumir Servicios Web (incluso aunque nuestro desarrollo no sea una aplicacion web). Los desarrolladores que no puedan trabajar con Servicios Web van a terminar relegados a tareas de mantenimiento en codigo legacy.

5. Habilidades humanas

Los desarrolladores tienen que participar mas en reuniones que no son de desarrollo y de procesos para obtener retroalimentacion de ellos. Por ejemplo, el depto. de contabilidad no puede cambiar las reglas de contabilidad sin trabajar junto a TI para actualizar el sistema, y un gerente de operaciones no puede cambiar el proceso de los call center sin que TI actualice el funcionamiento del CRM. Los clientes necesitan trabajar directamente con los equipos de desarrollo para asegurarse que se cumplan sus necesidades.

6. Lenguajes de programacion dinamicos y funcionales

Los lenguajes como Ruby, Pearl, Python, F# y Groovy todavía no son muy populares a pesar de que son lenguajes muy flexibles y poderosos. Aprender uno de estos lenguajes no solo va a mejorar nuestro curriculum, sino que tambien va a expandir nuestro horizonte y vamos a lograr nuevas formas de pensar y solucionar problemas.

7. Metodologias agiles

Esto no es nuevo, pero sigue siendo vigente, los desarrolladores que tengan experiencia en trabajar y comprender los ambientes agiles van a ser cada vez mas demandados en los proximos años.

8. Conocimiento de dominio

De la mano con las metodologias agiles, los equipos de desarrollo son cada vez mas vistos como socios en la definicion de proyectos. Esto significa que los desarrolladores que comprendan el problema del dominio van a poder contribuir al proyecto de una forma muy visible y valiosa.

9. "Higiene" de desarrollo

Los desarrolladores tienen que conocer mucho mas que solo hacer un checkout del codigo. Necesitan tener un habito riguroso de higiene para asegurarse que estan correctamente coordinados con el equipo. Los "programadores solitarios" que guardan todo local, que no documentan los cambios y demas, no van a ser bienvenidos en las organizaciones tradicionales, y van a a quedar directamente fuera de lugar en los entornos agiles.

10. Desarrollo movil

Desde hace unos tres años atras, el desarrollo para dispositivos moviles despego finalmente, y en los proximos cinco años va a crecer de forma constante. Por supuesto, existen varios enfoques al desarrollo movil: aplicaciones web diseñadas para funcionar en dispositivos moviles, RIAs apuntadas a este mercado, y aplicaciones que se ejecutan directamente en los dispositivos.




"it's evolution, babyy !"

Pearl Jam


Lo que hay que ver...

No hay comentarios.: