sábado, 25 de agosto de 2012

Pirámide de la marca personal de un desarrollador de Software PARTE I



Si digo, Ingeniero en sistemas computacionales - desarrollador de software.

No comunico nada, pero si digo: “Juan Pérez”, ingeniero en sistemas computacionales -desarrollador de software, es muy diferente.

Sin darnos cuenta vendemos a diario nuestra marca personal, es por ello que debemos de mejorarla y quien te conoce, sabe sobre tu trabajo, te tomara en cuenta.

Algunos ingenieros se sentirán identificados, otros no cambiaran su postura de "lo mio, lo mio, es el código fuente"; lo único real, es que debemos de mejorar sea cual sea nuestro objetivo profesional.

¿Cómo estereotipan al Ingeniero de Software?

Existen varias respuestas a la pregunta, lo que quiero describir es, ¿Cómo quiero que me estereotipen?

Hace 3 años, escuche en uno de mis ex-trabajos "Consultor Integral", no había una definición por escrito, así que decidí mejorar no solo en la programación si no también en otros aspectos para llegar a ser un "Consultor Integral".

Encontré esta infografía de YoSoy Pyme – Construcción de la pirámide de la marca personal, abstrayéndola a mi profesión, puedo decir con satisfacción que he cambiado la percepción de mis usuarios/clientes sobre los servicios que ofrecemos ya no somos “Los programadores”, les comparto mi experiencia.

INTERNO

Estrategia: La meta principal del cambio, era generar una perspectiva diferente a la de, "Juan solo sabe programar", para ello emprendí acciones que fueran relevantes, mejorar mi comunicación oral/escrita/corporal, puntualidad, forma de vestir, cumplimiento de los tiempos de desarrollo, actitud de servicio ya que vendemos servicios.

Autoconocimiento: Siempre me ha gustado mas Java que .NET, sin embargo fui honesto conmigo mismo y decidí ofrecer mis primeros proyectos de manera independiente sobre lo que dominaba (C#, SQL Server, ASP NET), sin embargo no me estanque y aprendí nuevos lenguajes y Frameworks de desarrollo como Groovy Grails.

Al tener en cuenta una autodefinición podemos desarrollar exteriormente como queremos “programar” nuestra marca personal, describiré a detalle como desarrolle cada nivel de la pirámide, esto no quiere decir que he logrado tener una marca personal exitosa, lo que trato de comunicar es que gracias a estos cambios, mi carrera como desarrollador de software ha mejorado y me ha traído mayores beneficios.

¿A ustedes les interesa mejorar su marca personal?, ¿han pensado su estrategia?, ¿se auto conocen?

jueves, 24 de mayo de 2012

Windows Phone en México


Con este nuevo sistema operativo se abren nuevas oportunidades dentro del desarrollo para tecnologías móviles en México, Windows Phone nos ofrece algunas diferencias respecto a otras plataformas tales como:

·        Interfaz metro
·        Compatibilidad con productos Microsoft (Office, seamos realistas lo utiliza un 80% de las personas en su trabajo)
·        Xbox Live
·        SkyDrive

Una mejora que me agrado mucho que es como se agrupan los contactos, a la cual denomino como una versión 2.0 de estos, cubre perfectamente la necesidad de vincular un contacto con sus diferentes cuentas.

Desglosando las diferencias.

Interfaz Metro

Estética, funcional y agradable a mi gusto, creo que la ventaja de ser el ultimo es que se tuvo la calma de  hacer las mejoras necesarias para que el teléfono sea mas usable, cabe recalcar que Windows 8 cuenta con esta interfaz por lo que creo que la adopción será mas fácil en los siguientes meses, cuando las PC con este OS estén disponibles para los usuarios.

Productos Microsoft

No hay mucho que decir en este punto, solo que Microsoft ha hecho un esfuerzo importante para integrar sus productos con la nueva plataforma, algunos de estos son Xbox Live, Office 365, SkyDrive etc.

Aplicaciones.

Si bien es cierto que las aplicaciones más populares están ya desarrolladas sobre WP7, aun le falta madurar en este punto a la plataforma ya que esta muy rezagado en comparación con iPhone, Android, Symbian o BlackBerry.

Desarrollo

Bueno aquí esta lo bueno, el SDK de WP7 esta montado sobre VS 2010 por el momento en un versión exprés. Tengo que decir que es muy familiar y transparente el desarrollo para aquellos que hemos manejado un poco Silverlight, ya que se utiliza XAML para crear las aplicaciones, la interface de desarrollo cuenta con varias plantillas predefinidas para crear nuestras pantallas y el funcionamiento de los nuevos paneles para el teléfono son muy sencillos de utilizar.

El SDK trae consigo un emulador que ya probé con bastantes características interesantes, que nos permiten emular nuestras aplicaciones para el SO incluyendo algunos de los sensores del teléfono.

En la parte de juegos el SDK también contiene varias plantillas que podemos utilizar para programar con XNA, que como muchos saben es el lenguaje con el que se programa Xbox, por lo que la adopción de este lenguaje será sencillo para quienes han tenido experiencias con este.

La ventaja es que ahora se podrán crear mas de este tipo de aplicaciones sin una inversión monstruosa como la que se necesita para desarrollar una aplicación para Xbox y creo que el lenguaje se fortalecerá (ya estoy haciendo mis pininos con esta tecnología).

Dentro del “framework”, Microsoft nos ofrece nuevas librerías móviles que incluyen manejo de eventos globales del teléfono, “storages” propios de las aplicaciones no invasivos e incluso una versión de SQL para esta tecnología  entre otras cosas.

Creo que Microsoft tiene un acierto esta vez al hacer más robusto el ecosistema de sus diferentes plataformas, ya que nos permite acercarnos a diferentes ramas de sus tecnologías con esto.

También debemos decir que a pesar del gran esfuerzo que creo que se esta haciendo, hay puntos finos de los cuales se tiene que solucionar y el mercado sobre todo de aplicaciones ya que actualmente tiene una gran desventaja sobre las otras plataformas.

Como conclusión debo decir que Microsoft esta vez nos ofrece un entorno familiar para el desarrollo de móviles para aquellos que estamos acostumbrados a trabajar con sus tecnologías, esperemos que la plataforma y el mercado sigan creciendo para tener más opciones para el desarrollo de las tecnologías móviles.

martes, 13 de marzo de 2012

¿Que buscan los desarrolladores de software en un trabajo?

Un titulo algo extraño, sin embargo esta pregunta me surgió en como veo las cosas el día de hoy. Hace años me encontraba en una “empresa de software” de esas que te contratan y te mandan con uno de sus clientes y rara vez sabes de ellos, para no entrar en detalles voy a comentar que siempre llega el punto en el que sientes un estancamiento profesional y no sabes a donde apuntar, me paso puesto que decidí irme por otros rumbos.

Antes de cambiarme de trabajo busque una oportunidad en otra área y esta fue negada, solo me querían para programar (es muy común), no solo fue motivado por este punto si no porque no existía, el tan mencionado PLAN DE CARRERA.

Pero en si, ¿Qué motiva al desarrollador a cambiar de trabajo? Y después ¿Qué tipo de atributos debe de tener ese nuevo trabajo?

Buscando respuestas comento:

La primera pregunta estoy convencido que es personal ya que hay gente que no se siente bien y se queja con las personas incorrectas.

La segunda más allá de un buen salario y prestaciones, me atrevo a enlistar algunas de las cosas basadas en pláticas con algunos colegas:

  • · Retos profesionales
  • · Ambiente de trabajo
  • · Horarios flexibles
  • · Poder ir de mezclilla
  • · Home Office
  • · Documentar menos
  • · Zona de trabajo que no implique mas de 4 horas de traslado diario
  • · Otros ( sueños guajiros)

Este POST surgió debido a que ahora como empresa satisfacer las demandas a los desarrolladores es bastante compleja, tomando en cuenta el nivel de negociación que algunos manejan y la aun extensa oferta laboral en la industria.

Agregándole cosas a la lista, en serTI estamos tratando de implementar un esquema basado en la comunicación con nuestras personas, confieso que es bastante complejo ya que les cuesta trabajo poder ser abiertos, decir lo que piensan y sienten, además de que algunos no están preparados para recibir comentarios de lo que nosotros percibimos como empleadores; esa retroalimentación mutua hace sentir bien a la gente y eso motiva a seguir.

Otro aspecto que buscamos es generar ese sentido de pertenencia a la empresa que se sientan identificados donde trabajan, ya que muchas veces las empresas tratan a los programadores como “PROVEEDORES” (Lo escuche en un evento de Manpower y Axeleratum).

En conclusión, hay mucho trabajo que realizar como empresas y como desarrolladores sin embargo ambos tienen que poner empeño en generar un ambiente ganar / ganar.

A ti como desarrollador, ¿Qué te motiva a cambiarte de trabajo? o ¿Que estas haciendo para hacer interesante el actual?

Como empresa de sistemas, ¿Qué estan haciendo para retener y captar talento?

domingo, 18 de diciembre de 2011

Opentalks 06, Ceylon Project, Gavin King


Bueno ayer tuvimos el gusto de recibir en nuestras oficinas dentro del tecnopoli en el IPN la #Opentalks 06, que tuvo de invitado especial a Gavin King hablándonos del proyecto Ceylon.

En mi opinión Ceylon es un esfuerzo de un lenguaje para hacer la programación más sencilla pensado por y para desarrolladores. No voy a entrar mucho en detalle porque aquí el esta el link del proyecto http://www.ceylon-lang.org/.
Pero me gustaría resaltar algunas de las  virtudes que fueron expuestas ayer.
1.    No cuenta con una función main dentro de las clases es decir cualquier función o método puede seleccionarse para inicializar la clase.
2.     Existe la posibilidad de implementar la interfaz de los operadores básicos en las clases.
3.    Tiene un control muy sencillo sobre las propiedades públicas y privadas de los objetos.
4.    Tiene un manejo de tipos muy muy superior a los lenguajes que e visto antes y la verdad este punto fue el que mas me impresiono; Maneja Uniones e intersecciones de tipos de una manera impresionante.
5.    El analizador sintáctico se veía bastante bien.
6.    Un sistema de módulos para el manejo de librerías.
7.    Pretende homogenizar y encapsular el desarrollo del lenguaje.
8.    Y sobre todo me dio la impresión de que Gavin y su equipo pretender comenzar con un lenguaje de acuerdo a las necesidades de programación del 201X eliminando los errores o como el las nombro las cosas “rotas” mas comunes que se arrastran casi casi por herencia desde las primeras versiones de Java.
Ceylon es un lenguaje con muchas cosas pendientes además de joven y solo el tiempo nos dirá que ocurre y creo que la comunidad será la que podrá enriquecerlo, ya que el lenguaje es libre y todo el código esta en el repositorio de https://github.com/ , aunque es un poco difícil aventurarse a las predicciones espero que no sea un lenguaje que divida mas a la comunidad que programa en Java.
En general acerca de la plática fue interesante además de que es  muy agradable tener a personas que han contribuido en proyectos tan importantes como Hibernate en nuestro país y se agradece el esfuerzo de la comunidad Java México por este tipo de eventos.
Como dato curioso Gavin King dio la conferencia en español bastante bien, confeso que era la primera vez que hacia esto además de que estaba un poco nervioso al inicio de la sesión.