SG #46 https://sg.com.mx/ en ESENCIA y su uso para reforzar la gestión de los proyectos de software https://sg.com.mx/revista/46/esencia-y-su-uso-para-reforzar-la-gestion-los-proyectos-software <span class="field field--name-title field--type-string field--label-hidden">ESENCIA y su uso para reforzar la gestión de los proyectos de software</span> <div class="images-container clearfix"> <div class="image-preview clearfix"> <div class="image-wrapper clearfix"> <div class="field field--name-field-image field--type-image field--label-hidden field__item"> <img src="/sites/default/files/images/03D38073.jpg" width="1200" height="803" alt="" typeof="foaf:Image" /> </div> </div> </div> </div> <span class="field field--name-uid field--type-entity-reference field--label-hidden"><a title="View user profile." href="/user/1" lang="" about="/user/1" typeof="schema:Person" property="schema:name" datatype="" class="username">sg</a></span> <span class="field field--name-created field--type-created field--label-hidden">Wed, 12/17/2014 - 00:46</span> <div class="field field--name-field-numrevista field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Publicado en</h3> <ul class='links field__items'> <li><a href="/revista/46" hreflang="und">SG #46</a></li> </ul> </div> <div class="field field--name-field-seccion field--type-entity-reference field--label-hidden field--entity-reference-target-type-taxonomy-term clearfix"> <ul class='links field__items'> <li><a href="/revista/secciones/tejiendo-nuestra-red" hreflang="und">Tejiendo nuestra red</a></li> </ul> </div> <div class="field field--name-field-autor field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Autor</h3> <ul class='links field__items'> <li><a href="/buzz/autores/hanna-oktaba" hreflang="und">Hanna Oktaba</a></li> </ul> </div> <div class="text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>En el número anterior les prometí hablar de cómo usar ESSENCE (lo voy a traducir como Esencia, que suena muy bonito) en la vida diaria de los proyectos de software.</p><p>El concepto básico de la Esencia es algo llamado ‘alfa’. Su uso puede reforzar tanto la gestión tradicional de proyectos (PMBoK) como la ágil.</p><p>¿Qué es un alfa? Como lo explican Ivar Jacobson y sus allegados, es una cosa con la cual se tiene que trabajar, o en otras palabras, puntos que hay que tener muy presentes en todo momento durante un proyecto (endeavor) de desarrollo de software.</p><p>Los alfas captan los conceptos clave recogidos de la experiencia de los últimos casi 50 años de la Ingeniería de Software. No por nada, la propuesta está liderada por Ivar Jacobson, uno de los gurús más viejitos pero de estos que siguen “coleando”. Los alfas permiten dar seguimiento, evaluar el progreso y la salud de cualquier proyecto de ingeniería de software y proporcionan una base común para la definición de los métodos y prácticas de ingeniería de software.</p><p>Esencia identifica siete alfas las cuales se ubican en tres áreas de interés: cliente, solución y esfuerzo (equivalente a un proyecto). Esto se ilustra en la figura 1:</p><ul><li>Área del Cliente. Contiene los alfas de oportunidad (opportunity) e interesados (stakeholders).</li><li>Área de la Solución. Contiene los alfas de requerimientos (requirements) y sistema de software (software system).</li><li>Área del Esfuerzo/Proyecto. Esta área considera los elementos para realizar el proyecto tales como equipo (team), forma de trabajar (way of working) y trabajo (work).</li></ul><div class="figura"><img src="/images/revista/sg46/hanna-fig1.png" alt="" width="697" height="423" /><p class="pie">Figura 1. Alfas por áreas de interés y sus relaciones.</p></div><p>En el área del cliente, la oportunidad representa todo lo que le da el valor al que va a invertir en el sistema. Los interesados son principalmente los que necesitan y pagan por el sistema de software, así como los que lo usarán y mantendrán.</p><p>En el área de solución no requiere mayor explicación. Lo que sí vale la pena notar es que el diseño no está explícito, sino que está “perdido (diluido) en el espacio”. En mi opinión creo que fue una concesión a los agilistas (por favor que éstos no se me ofendan).</p><p>El área de esfuerzo afortunadamente contempla a las personas (equipo), sin ellas todo lo demás es imposible ☺ (disculpen el uso exagerado de las ☺ pero últimamente ando en la onda de las UX). El alfa de la forma de trabajar es, ni más ni menos, el proceso que se va a seguir (favor de no decírselo a nadie, menos a su gestor de procesos ☺).</p><p>En resumen, el alfa de Trabajo representa la chamba del Equipo que aplica la Forma de Trabajar para implementar el Sistema de Software, que cumpla con los Requerimientos acordados por los Interesados, con el cual se logra la Oportunidad.</p><p>Esta es la esencia de los alfas de la Esencia. Pero el meollo del asunto está en que cada alfa pasa por una serie de estados secuenciales. Dichos estados reflejan la evolución deseada de los temas de los alfas desde el inicio hasta la final de un proyecto. Por ejemplo, un Equipo pasa por los estados: Sembrado, Formado, Ejecutando, Colaborando y Suspendido (este último es cuando ya el equipo dejó de trabajar en el proyecto). Y ¿cómo saber en qué estado se encuentra un alfa? Para ésto se han definido las listas de verificación (checklists) que ayudan a analizar si cumplimos los criterios para colocar un alfa en cierto estado. Estas listas de verificación de los estados de los alfas son, en mi opinión, la síntesis más importante hasta la fecha de la experiencia práctica de la Ingeniería de Software. Otra característica interesante, es que son independientes a las metodologías; no dependen de las técnicas ni procesos particulares.</p><p>Para ejemplificar, les presento la lista de verificación para constatar si el alfa del Equipo está en el estado Sembrado:</p><ul><li>La misión del equipo ha sido definida en términos de las oportunidades y resultados.</li><li>Se conocen limitaciones al funcionamiento del equipo.</li><li>Se conocen los mecanismos para hacer crecer al equipo.</li><li>Está definida la composición del equipo.</li><li>Están definidas las restricciones sobre dónde y cómo se llevará a cabo el trabajo.</li><li>Están descritas las responsabilidades del equipo.</li><li>El nivel de compromiso del equipo es claro.</li><li>Se identificaron competencias requeridas.</li><li>El tamaño del equipo está determinado.</li><li>Reglas de gobierno están definida.</li><li>Se seleccionó el modelo de liderazgo.</li></ul><h3>La práctica de reflexión</h3><p>Pero me van a preguntar: ¿cómo podrían usarse los alfas, sus estados y las listas de verificación para reforzar la gestión de proyectos? La propuesta más simple es agregar las reuniones de reflexión, que se apoyen en los alfas, para complementar a las reuniones de seguimiento o reuniones diarias de Scrum.</p><p>La práctica de reflexión es la siguiente, descrita como lo propone Kuali-Beh (apéndice B de Esencia [1]).</p><p><strong>Nombre</strong>: Reunión de Reflexión con Alfas de Esencia (Id ReflexAlfas).</p><p><strong>Objetivo</strong>: Analizar la salud del proyecto de software usando alfas para proponer las acciones que ayuden a continuar el proyecto con éxito.</p><p><strong>Entradas</strong>: Se reúne todo el equipo, se eligen los alfas con las se quiere trabajar (pueden ser todas o las que son importantes para el momento del avanze del proyecto), se ponen en la mesa las tarjetas impresas con los nombres de los alfas, nombres de los estados y las listas de verificación de cada estado (ver ejemplo en la fig. 2). Existen las opciones electrónicas para revisar los estados de las tarjetas en web - <a href="essence.sv.cmu.edu">essence.sv.cmu.edu</a> y la aplicación State Explorer para iPhon.</p><p><strong>Guía de actividades</strong></p><ol><li>Para cada alfa elegido, cada miembro del equipo revisa en su cabeza las listas de verificación de los estados y decide el estado alcanzado según él.</li><li>Todos los miembros del equipo comparten su decisión con los demás argumentando con base en las listas de verificación.</li><li>En el caso de discrepancia de las opiniones, se discuten hasta lograr el consenso los elementos de las listas de verificación en los que no coinciden. En este paso se ejercita la idea de la democracia- todos tienen derecho de opinar, y de no perder el foco- sólo se discuten cumplimientos de los puntos de las listas de verificación y no los clásicos de echar la culpa unos a otros.</li><li>El equipo analiza cuáles de los objetivos de la lista de verificación del estado siguiente quiere alcanzar y qué acciones deben de tomarse para lograrlos.</li></ol><p><strong>Criterios de verificación</strong>: Todos los miembros del equipo están conformes con la evaluación de los estados alcanzados y de las acciones a tomar para avanzar a los siguientes estados.</p><p><strong>Mediciones</strong>: Tiempo dedicado a la reunión de reflexión (horas/hombre).</p><p><strong>Resultado</strong>:</p><ul><li>Lista de acciones para incluir en el plan de trabajo inmediato.</li><li>Todos los miembros del equipo conocen el estado actual del proyecto (o un aspecto representado por un alfa) y están de acuerdo en lo que hay que hacer para avanzar con éxito en el proyecto.</li></ul><p>A los administradores de proyectos o Scrum Masters que no se han convencido con mi explicación, les recomiendo que primero hagan este ejercicio solitos. Con quienes he visto que lo han intentado, les ha caído el veinte luego, luego (para los lectores de otros países “caer el veinte” significa entender y convencerse).</p><p>La ventaja de esta propuesta es que con pocos elementos (alfas, sus estados y listas de verificación para alcanzar los estados) tenemos resumida la sabiduría práctica de 50 años de la Ingeniería de Software lista para usarse. Qué la disfruten ☺.</p><p>Para experimentar con Esencia es suficiente leer la sección 8 del documento gratuito [1]. Para los que necesitan más explicación pueden buscar el libro The Essence of Software Engineering, Applying the SEMAT Kernel, de Ivar Jacobson y sus colegas [2] o comunicarse con Jorge López de Nueva Librería (<a href="mailto:jorge.lopez@nuevalibreria.com.ar">jorge.lopez@nuevalibreria.com.ar</a>) para conseguir la traducción al español.</p><p>No se pierdan el siguiente capítulo de la aplicación de Esencia.</p><p><em>&gt;&gt; Por Hanna Oktaba</em></p><p><strong>Referencias</strong></p><p>[1] ESSENCE - Kernel and Language for Software Engineering Methods 1.0 - Beta 2 <a href="http://www.omg.org/spec/Essence/1.0/Beta2">http://www.omg.org/spec/Essence/1.0/Beta2</a>/</p><p>[2] Ivar Jacobson and all. The Essence of Software Engineering: Applying the SEMAT Kernel, Addison-Wesley, 2013.</p><p>&nbsp;</p></div> <div class="text-formatted field field--name-field-autor-bio field--type-text-long field--label-above"> <div class="field__label">Bio</div> <div class="field__item"><p>La Dra. Hanna Oktaba es profesora de la UNAM y su objetivo principal es generar conocimiento a través de la creación y promoción de estándares. <a href="mailto:hanna.oktaba@ciencias.unam.mx">hanna.oktaba@ciencias.unam.mx</a></p> </div> </div> <section class="field field--name-comment field--type-comment field--label-above comment-wrapper"> </section> Wed, 17 Dec 2014 06:46:25 +0000 sg 5560 at https://sg.com.mx https://sg.com.mx/revista/46/esencia-y-su-uso-para-reforzar-la-gestion-los-proyectos-software#comments Entendiendo ParqueSoft https://sg.com.mx/revista/46/entendiendo-parquesoft <span class="field field--name-title field--type-string field--label-hidden">Entendiendo ParqueSoft</span> <div class="images-container clearfix"> <div class="image-preview clearfix"> <div class="image-wrapper clearfix"> <div class="field field--name-field-image field--type-image field--label-hidden field__item"> <img src="/sites/default/files/images/parquesoft5.jpg" width="2560" height="1440" alt="" typeof="foaf:Image" /> </div> </div> </div> </div> <span class="field field--name-uid field--type-entity-reference field--label-hidden"><a title="View user profile." href="/user/1" lang="" about="/user/1" typeof="schema:Person" property="schema:name" datatype="" class="username">sg</a></span> <span class="field field--name-created field--type-created field--label-hidden">Wed, 12/17/2014 - 00:37</span> <div class="field field--name-field-numrevista field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Publicado en</h3> <ul class='links field__items'> <li><a href="/revista/46" hreflang="und">SG #46</a></li> </ul> </div> <div class="field field--name-field-seccion field--type-entity-reference field--label-hidden field--entity-reference-target-type-taxonomy-term clearfix"> <ul class='links field__items'> <li><a href="/seccion-revista/reportaje" hreflang="und">Reportaje</a></li> </ul> </div> <div class="field field--name-field-autor field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Autor</h3> <ul class='links field__items'> <li><a href="/buzz/autores/pedro-galvan" hreflang="und">Pedro Galván</a></li> </ul> </div> <div class="text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>Parquesoft es una red de parques tecnológicos que hospeda a microempresas de tecnología y servicios relacionados. Inició operaciones hace 14 años en Cali, Colombia y actualmente la red ParqueSoft opera en 14 ciudades de Colombia, reuniendo a más de 200 empresas que integran a más de 1,000 personas.</p><p>Hace cerca de 9 años que me enteré de la existencia de ParqueSoft, y desde entonces he tenido un gran interés por este ecosistema. Este verano tuve oportunidad de viajar a Cali, así que aproveché para visitarlos y conocer más.</p><h3>Entendiendo a ParqueSoft</h3><p>Sé que hoy en día abundan los parques tecnológicos, espacios de co-working, incubadoras y aceleradoras de startups, así que Parquesoft podría parecer simplemente “uno más”. Sin embargo, tiene un enfoque distinto que a mi parecer lo hace único.</p><p>Tal vez la mejor forma de entender a ParqueSoft es pensar en una familia: hay una cabeza de familia, y muchos hermanos(as); todos nacen del mismo vientre (aunque también se aceptan adoptivos) pero cada uno tiene su propia identidad, habilidades y objetivos; comparten el mismo hogar, pero cada uno se gana la vida a su manera; hay hermanos mayores que ya salieron de casa pero siguen siendo parte de la familia, y hay otros que aunque ya podrían vivir por su lado les gusta seguir en casa.</p><p>En este caso, la cabeza de la familia es la Fundación ParqueSoft, presidida por Orlando Rincón (a quien probablemente recuerden como conferencista en eventos anteriores de SG). La fundación administra los parques y provee servicios horizontales a las empresas: infraestructura, administración, aspectos legales, etcétera. La mayoría de las empresas nacen dentro del mismo ParqueSoft. Es decir, ParqueSoft no se dedica a buscar empresas ya formadas, sino que busca a personas con talento e iniciativa, y una vez en ParqueSoft se juntan entre ellas para formar empresas. Esto es clave, porque hace que todas las empresas tengan un alto sentido de pertenencia a ParqueSoft.</p><h3>3 en 1: incubadora, cluster e integradora</h3><p>La mayoría de los clusters de TI que he conocido están formados por empresas con ofertas muy similares, que compiten entre sí y no tienen mucha oportunidad de colaboración. En ParqueSoft no es así, ya que muchas de las empresas nacen a raíz de lo que ven que está haciendo falta en la oferta de otras empresas de ParqueSoft. Entonces, en ParqueSoft encuentras tanto startups como empresas de desarrollo a la medida, y otras que ofrecen servicios de soporte (por ejemplo servicios legales, de marketing, fuerza de venta, aseguramiento de calidad, integración de hardware, multimedios y hasta estación de radio).</p><p>El hecho de que las empresas de ParqueSoft tengan un origen común pero ofertas complementarias facilita que participen en proyectos conjuntos. Es aquí donde entra la cara de ParqueSoft como integradora de empresas. Es decir, a pesar de que cada empresa opera por su lado y tiene sus propios clientes, hay proyectos de gran escala donde la Fundación ParqueSoft opera como un “prime” o integrador, que reparte y coordina el trabajo de las distintas empresas que participan en el proyecto.</p><h3>ParqueSoft en otros países</h3><p>Como se podrán dar cuenta, no tengo más que elogios para ParqueSoft. Me parece un caso muy interesante y exitoso; la verdad es que me da envidia que en México no tengamos algo así. La buena noticia es que ParqueSoft está buscando internacionalizarse, y no duden que pronto encontremos ParqueSoft en otros países de nuestra región.</p><p><img src="/images/revista/sg46/parquesoft5.jpg" alt="" width="350" /> <img src="/images/revista/sg46/parquesoft2.jpg" alt="" width="350" height="225" /> <img src="/images/revista/sg46/parquesoft1.jpg" alt="" width="350" /> <img src="/images/revista/sg46/parquesoft3.jpg" alt="" width="350" height="225" /></p></div> <section class="field field--name-comment field--type-comment field--label-above comment-wrapper"> </section> Wed, 17 Dec 2014 06:37:36 +0000 sg 5558 at https://sg.com.mx https://sg.com.mx/revista/46/entendiendo-parquesoft#comments El Hogar Inteligente Llegará Hasta el 2020 https://sg.com.mx/revista/46/el-hogar-inteligente-llegara-hasta-el-2020 <span class="field field--name-title field--type-string field--label-hidden">El Hogar Inteligente Llegará Hasta el 2020</span> <div class="images-container clearfix"> <div class="image-preview clearfix"> <div class="image-wrapper clearfix"> <div class="field field--name-field-image field--type-image field--label-hidden field__item"> <img src="/sites/default/files/images/smart_home.jpg" width="600" height="540" alt="" typeof="foaf:Image" /> </div> </div> </div> </div> <span class="field field--name-uid field--type-entity-reference field--label-hidden"><a title="View user profile." href="/user/1" lang="" about="/user/1" typeof="schema:Person" property="schema:name" datatype="" class="username">sg</a></span> <span class="field field--name-created field--type-created field--label-hidden">Wed, 12/17/2014 - 00:25</span> <div class="field field--name-field-numrevista field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Publicado en</h3> <ul class='links field__items'> <li><a href="/revista/46" hreflang="und">SG #46</a></li> </ul> </div> <div class="field field--name-field-seccion field--type-entity-reference field--label-hidden field--entity-reference-target-type-taxonomy-term clearfix"> <ul class='links field__items'> <li><a href="/secci%C3%B3n-revista/tendencias-software" hreflang="und">Tendencias en Software</a></li> </ul> </div> <div class="field field--name-field-autor field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Autor</h3> <ul class='links field__items'> <li><a href="/buzz/autores/luis-daniel-soto-maldonado" hreflang="und">Luis Daniel Soto Maldonado.</a></li> </ul> </div> <div class="text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>La vida digital nunca ha sido simple, especialmente en el hogar. Las primeras computadoras y el software mismo eran de muy alto costo. La guerra de formatos y protección contra copiado ha dificultado conservar en su más alta calidad el contenido y reproducirlo sin fricción. Durante muchos años me dedique a digitalizar mis CDs y DVDs cuando el almacenamiento era aún costoso - mantener los “metadatos” en orden continúa siendo un reto.</p><p>La década pasada fue relativamente fácil con el “teatro en casa”: una sola PC conectada a un monitor de buenas dimensiones. Una sola cámara digital y un proceso de transferencia manual de datos. Consolidar el servicio de cable nunca ha sido sencillo, aún hoy las consolas de videojuegos no lo ofrecen. En mi caso y por distintas razones termine con películas adquiridas en Xbox Live, Amazon Video, Vudu, Sony Unlimited, Apple iTunes y Android Play. Aun soy usuario del DVR y probé Netflix pero finalmente opté por usar Redbox.</p><p>Hoy tengo una solución para ver mis películas y escuchar mi música favorita en cualquier dispositivo y lugar con una combinación de PC, nube y dispositivos electrónicos personales. Hoy en día esa PC de “teatro en casa” evolucionó en un servidor multimedia utilizando Plex. No anticipo que los múltiples servicios de video converjan pronto, por lo que apuesto a mantener mi propia colección de favoritos en formatos abiertos y también acceder servicios de consumo ilimitado para música (Pandora), revistas digitales (Next issue), libros (Kindle subscription) y cualquiera de los que ya mencioné de video.</p><p>Hoy ha sido ya difícil tener que adquirir cables y conectores específicos para diversos sistemas de reproducción de medios digitales y pantallas, configuraciones específicas para obtener el 7.1 de audio o los formatos que nunca fueron exitosos como super audio digital (aunque en mi auto continúo escuchándolo).</p><p>Los controles remotos programables y las aplicaciones para iOS y Android que controlan luces, cortinas o variedad de equipos se han hecho presentes. Equipos de audio multi-zona y termostatos digitales son apenas el principio del “hogar inteligente”. Hoy, la mayoría de la gente que conozco no necesariamente ha cambiado las configuraciones por omisión de sus ruteadores y ni siquiera instalado software para restringir el acceso de internet a menores. Tenemos PCs viejas tratando de acceder servicios web que han dejado de existir.</p><p>Pocos son los que han invertido en los focos de $60 dólares que se pueden controlar desde una app (requieren no solo de wifi sino de BLE). La perspectiva del “hogar inteligente” en orquestar accesorios inteligentes, robots, nuestro reloj y la cafetera, los sensores de líquidos y gas es maravillosa. Puedo asegurar que realmente nos encontramos en una etapa muy temprana de la visión. No solo por el aspecto tecnológico y de normas, posiblemente por nuestra capacidad de ser inquilinos de enjambres tecnológicos muy variados.</p><p>Las normas en definición hoy están en competencia, no terminadas y son de bajo nivel. Pensar en esa alfombra con sensores que nos dirá cuántas veces hemos pisado cada centímetro cuadrado abre cientos de áreas de oportunidad y nuevas preguntas de la eficiencia de nuestros hogares. Los casos de uso no están totalmente definidos, determinar lo que puede salir mal y como radicalmente pensar las relaciones con los individuos es una tarea en proceso. Soy entusiasta del tema y en mis siguientes columnas describiré los escenarios del “internet de cosas” en nuestro hogar… no sin antes poner en perspectiva la complejidad de la problemática y nuestra realidad existente.</p></div> <div class="text-formatted field field--name-field-autor-bio field--type-text-long field--label-above"> <div class="field__label">Bio</div> <div class="field__item"><p>Luis Daniel Soto Maldonado (@luisdans) se dedica a asesorar empresas en estrategia tecnológica y gestión de productos.</p> </div> </div> <section class="field field--name-comment field--type-comment field--label-above comment-wrapper"> </section> Wed, 17 Dec 2014 06:25:23 +0000 sg 5557 at https://sg.com.mx https://sg.com.mx/revista/46/el-hogar-inteligente-llegara-hasta-el-2020#comments Aplicación de Aspectos y Diseño por Contrato con Ptolemy https://sg.com.mx/revista/46/aplicacion-aspectos-y-diseno-por-contrato-ptolemy <span class="field field--name-title field--type-string field--label-hidden">Aplicación de Aspectos y Diseño por Contrato con Ptolemy</span> <div class="images-container clearfix"> <div class="image-preview clearfix"> <div class="image-wrapper clearfix"> <div class="field field--name-field-image field--type-image field--label-hidden field__item"> <img src="/sites/default/files/images/ptolemy.png" width="1280" height="1527" alt="" typeof="foaf:Image" /> </div> </div> </div> </div> <span class="field field--name-uid field--type-entity-reference field--label-hidden"><a title="View user profile." href="/user/1" lang="" about="/user/1" typeof="schema:Person" property="schema:name" datatype="" class="username">sg</a></span> <span class="field field--name-created field--type-created field--label-hidden">Wed, 12/17/2014 - 00:12</span> <div class="field field--name-field-numrevista field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Publicado en</h3> <ul class='links field__items'> <li><a href="/revista/46" hreflang="und">SG #46</a></li> </ul> </div> <div class="field field--name-field-seccion field--type-entity-reference field--label-hidden field--entity-reference-target-type-taxonomy-term clearfix"> <ul class='links field__items'> <li><a href="/revista/secciones/tutorial" hreflang="und">Tutorial</a></li> </ul> </div> <div class="field field--name-field-autor field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Autor</h3> <ul class='links field__items'> <li><a href="/autores-sg/instituto-tecnologico-orizaba" hreflang="und">Instituto Tecnológico de Orizaba</a></li> </ul> </div> <div class="text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>Las principales ventajas que ofrece la Programación Orientada a Aspectos son: separación de asuntos (componentes y aspectos), facilidad para razonar conceptos, alto nivel de reutilización y mejor mantenimiento del software.</p><p>Actualmente, existen varios Lenguajes Orientados a Aspectos entre los que destacan: AspectJ, CaesarJ, ECaesarJ, EOS, y Ptolemy. Cada uno proporciona mecanismos que contribuyen al desarrollo o mantenimiento del software dependiendo de lo que se desee realizar.</p><p>El Diseño por Contrato es una técnica muy conocida para el diseño de software de calidad. Los beneficios más importantes del DbC son: facilitad de pruebas unitarias, manejo de excepciones de manera eficiente y construcción de componentes robustos.</p><p>Las principales herramientas que implementan el DbC en Java son: jContractor, Jass, Modern Jass, Contract4j, JML y Ptolemy. Sin embargo, no se reporta alguna guía para el desarrollo de software con Ptolemy. El propósito de este artículo es ofrecer una guía básica de cómo aplicar conceptos orientados a aspectos en Ptolemy utilizando ptolemy-1.2.0-beta6.</p><h3>Diseño por Contrato (DbC)</h3><p>El DbC es una técnica diseñada por Bertrand Meyer y característica central de su lenguaje de programación Eiffel [1]. El DbC se utiliza con cualquier lenguaje de programación, para validar que el software cumpla con su especificación (contrato).</p><p>El contrato establece condiciones de uso e implementación denominadas aseveraciones que clientes y proveedores de un componente deben cumplir. En el DbC se utilizan tres tipos de aseveraciones [1]:</p><ul><li>Precondición: restricciones bajo las cuales una rutina funcionará correctamente.</li><li>Postcondición: describe el efecto de la rutina.</li><li>Invariante de clase: restricciones que deben satisfacerse por cada objeto tras la ejecución de los métodos y constructores.</li></ul><h3>Ptolemy</h3><p>Ptolemy es un lenguaje de programación cuyo objetivo es mejorar la habilidad de separar asuntos conceptuales [2]. Además, ofrece el soporte para el manejo de eventos e introduce el concepto de contrato translúcido [3]. A diferencia de AspectJ y CaesarJ solventa dificultades como:</p><ul><li>Cuantificación: referenciar los lugares en el código donde un evento es identificado sin tener que nombrar a las clases que disparan el evento.</li><li>Inconsciencia: liberar al programador de las especificaciones puntuales donde una sentencia o conjunto de sentencias del programa tendrá efecto.</li><li>Fragilidad en los cortes: dependencia léxica y acoplamiento entre aspectos y código base.</li></ul><p><strong>Instalación</strong>. El compilador de Ptolemy se puede obtener en <a href="http://ptolemy.cs.iastate.edu/download">http://ptolemy.cs.iastate.edu/download</a>. Requiere tener instalado un Java Runtime Environment (JRE) 1.6 o superior.</p><p><strong>Recomendaciones</strong>. El archivo bat localizado en \pyc\bin requiere de los siguientes ajustes para utilizar el compilador de Ptolemy:</p><ul><li>Completar la sintaxis al asignar un valor a la variable de entorno PYC_HOME. El valor debe situarse entre %.</li><li>Corregir la ruta del archivo javac.jar, localizado dentro del subdirectorio \bootstrap\lib\javac.jar.</li></ul><p><strong>Compilación</strong>. Para compilar y ejecutar programas, es necesario configurar las variables de entorno del sistema Path y PYC_HOME. Ptolemy es compatible con Java; es decir, un programa válido en Java es válido en Ptolemy. La compilación se efectúa como se muestra a continuación:</p><p><code>pyc NombreClase.java</code></p><p>Tras ejecutar el comando pyc, se generarán los archivos .class. Si existen errores sintácticos en el código fuente, el compilador informa de ello.</p><p><strong>Ejecución</strong>. La ejecución de un programa en Ptolemy se realiza de la misma manera que se ejecuta un programa Java, es decir:</p><p><code>java [nombre de clase con main()]</code></p><p><strong>Contrato translúcido</strong>. Un contrato translúcido para un tipo de evento es un algoritmo abstracto que describe el comportamiento de los aspectos que se aplican a una interfaz orientada a aspectos [2].</p><p>Para verificar el cumplimiento de un contrato translúcido es necesario habilitar las aseveraciones en tiempo de ejecución como se muestra a continuación:</p><p><code>java -ea [nombre de clase con main()]</code></p><h3>Orientación a aspectos</h3><p>A continuación se describen los conceptos de aspectos desde la perspectiva del lenguaje Ptolemy.</p><ul><li>Evento: Un punto de unión es un evento identificable en la ejecución de un programa. La declaración de un evento (línea 1 de Figura 1) en Ptolemy consta de 3 elementos [2]: nombre, lista de variables de contexto y tipo de retorno.</li><li>Método controlador del evento (Aviso): A diferencia de AspectJ, Ptolemy no tiene una sintaxis especial para los aspectos o avisos. En su lugar, reemplaza todos los eventos en un conjunto específico con llamadas al método controlador.</li><li>Cuantificación: Ptolemy asocia un método de clase a un conjunto de eventos identificados por un tipo de evento mediante las palabras reservadas when y do. Ptolemy cuantifica de manera inconsciente, al no depender del patrón de firmas como lo hace AspectJ, garantizando que el sistema reaccione a los eventos registrados [5].</li><li>Variables de contexto: La exposición de contexto permite conocer cuáles son los argumentos del corte. A diferencia de AspectJ, Ptolemy no provee primitivas como target, this y args para exponer contexto, en cambio permite definir n variables disponibles para los manejadores de eventos.</li><li>Activación dinámica de aspectos: se realiza mediante palabra reservada announce, la cual puede ocurrir dentro de un método o constructor.</li></ul><h3>Aplicando lo aprendido</h3><p>El siguiente listado de código presenta un breve ejemplo de cómo aplicar los conceptos orientados a aspectos en Ptolemy anteriormente mencionados.</p><script type="text/javascript" src="https://gist.github.com/pedrogk/6550a1f8e08c7fbbff5f.js"></script><p>Listado 1. <a href="https://gist.github.com/pedrogk/6550a1f8e08c7fbbff5f">https://gist.github.com/pedrogk/6550a1f8e08c7fbbff5f</a></p><h3>Conclusión</h3><p>Como se puede apreciar, Ptolemy ofrece una forma útil para desarrollar software correcto, es decir que la funcionalidad cumpla con su especificación mediante la aplicación de contratos translúcidos cuyo enfoque combina el Diseño por Contrato y la Programación Orientada a Aspectos. Las ventajas más destacadas de Ptolemy son:</p><ul><li>Eliminación de fragilidad de los cortes.</li><li>Cuantificación inconsciente.</li><li>Mejora la modularidad de los asuntos de corte, preservando la encapsulación del código orientado a objetos.</li><li>Control de avisos.</li><li>Razonamiento modular.</li></ul><p><strong>Referencias</strong></p><p>[1] M. Bertrand. Object Oriented Software Construction. Prentice Hall, 2002.</p><p>[2] H. Rajan, G. T. Leavens et al. “Ptolemy Programming Language”. <a href="http://ptolemy.cs.iastate.edu">http://ptolemy.cs.iastate.edu</a></p><p>[3] H. Rajan, G. T. Leavens et al. “Modularizing Crosscutting Concerns with Ptolemy”. <a href="http://swgu.ru/pb">http://swgu.ru/pb</a></p><p>[4] M. Bagherzadeh, H. Rajan, et al. “Translucid Contracts for Modular Reasoning about Aspect-oriented Programs”. <a href="http://swgu.ru/pc">http://swgu.ru/pc</a></p><p>[5] M. Bagherzadeh. “Enabling Expressive Aspect Oriented Modular Reasoning by Translucid Contracts”. <a href="http://swgu.ru/pd">http://swgu.ru/pd</a></p></div> <div class="text-formatted field field--name-field-autor-bio field--type-text-long field--label-above"> <div class="field__label">Bio</div> <div class="field__item"><p>Guadalupe I. Trujillo, Ulises Juárez, Beatriz A. Olivares, Ignacio López, Celia Romero colaboran en el Instituto Tecnológico de Orizaba.</p> </div> </div> <section class="field field--name-comment field--type-comment field--label-above comment-wrapper"> </section> Wed, 17 Dec 2014 06:12:44 +0000 sg 5556 at https://sg.com.mx https://sg.com.mx/revista/46/aplicacion-aspectos-y-diseno-por-contrato-ptolemy#comments Consejos para un Buen Pitch https://sg.com.mx/revista/46/consejos-para-un-buen-pitch <span class="field field--name-title field--type-string field--label-hidden">Consejos para un Buen Pitch</span> <div class="images-container clearfix"> <div class="image-preview clearfix"> <div class="image-wrapper clearfix"> <div class="field field--name-field-image field--type-image field--label-hidden field__item"> <img src="/sites/default/files/images/pitch.jpg" width="477" height="317" alt="" typeof="foaf:Image" /> </div> </div> </div> </div> <span class="field field--name-uid field--type-entity-reference field--label-hidden"><a title="View user profile." href="/user/1" lang="" about="/user/1" typeof="schema:Person" property="schema:name" datatype="" class="username">sg</a></span> <span class="field field--name-created field--type-created field--label-hidden">Tue, 12/16/2014 - 23:52</span> <div class="field field--name-field-numrevista field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Publicado en</h3> <ul class='links field__items'> <li><a href="/revista/46" hreflang="und">SG #46</a></li> </ul> </div> <div class="field field--name-field-seccion field--type-entity-reference field--label-hidden field--entity-reference-target-type-taxonomy-term clearfix"> <ul class='links field__items'> <li><a href="/revista/secciones/emprendiendo" hreflang="und">Emprendiendo</a></li> </ul> </div> <div class="field field--name-field-autor field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Autor</h3> <ul class='links field__items'> <li><a href="/buzz/autores/celeste-north" hreflang="und">Celeste North</a></li> </ul> </div> <div class="text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>La vida del emprendedor es muy parecida a la de un agente de ventas en el sentido de que siempre estás (o deberías estar) invitando a la gente a probar tu producto o servicio. Siempre estás vendiendo. Ya sea tu visión, el producto en sí o el equipo que hará que todo sea posible. De ahí que sea importante siempre estar preparado para hacer un buen pitch.</p><p>Un pitch es un discurso de venta. Puede venir en varios formatos, por ejemplo el elevator pitch se refiere a poder presentar tu negocio en un par de minutos; muy distinto a un pitch con inversionistas donde seguro además tienes espacio para enfocarte en detalles. De ahí, que lo primero que tenemos que hacer es pensar en el público al cuál vamos a estar pitcheando.</p><h3>Ajusta tu pitch de acuerdo al objetivo</h3><p>Hay varios objetivos por los cuáles uno hace un pitch, al momento que tenemos claridad en qué buscamos obtener de nuestra presentación, será más fácil decidir en qué puntos debemos enfocarnos. Veamos los principales objetivos para hacer un pitch:</p><p>Evangelizar sobre tu producto o servicio. Se refiere a presentaciones con público en general, posibles clientes o proveedores. Como tu principal objetivo es enamorarlos, enfócate en la solución, en los puntos fuertes de tu producto/servicio y los beneficios que ellos obtienen usándolo, comprándolo o trabajando contigo.</p><p>Levantar capital para tu empresa. Si el objetivo principal es obtener inversión para tu empresa, además de hablar de las bondades de tu producto será importante que te enfoques en el tamaño del mercado. Si ya tienes algunos números, como porcentaje de conversión de prospecto a cliente o crecimiento por ciertos lapsos de tiempo (tracción), este es el momento para mostrarlos. Adicionalmente, enfócate en cómo el equipo detrás de la empresa será capaz de aprovechar la oportunidad de negocio.</p><p>Concursos para emprendedores. En este tipo de eventos un buen pitch puede marcar la diferencia entre obtener atención sobre tu empresa o pasar desapercibido. Independientemente de que estemos de acuerdo o no sobre la relevancia de estos eventos en el ecosistema, la realidad es que como emprendedor siempre quieres ser memorable y que esto impacte en tu empresa. Aquí el objetivo es sorprender, dar información contundente y compartir tu visión de manera contagiosa.</p><h3>Consideraciones</h3><p>Lo que nadie te dice cuando te preparas un pitch es la importancia de tener cualquier detalle técnico bajo control. Algunas consideraciones que debes tener en cuenta.</p><p>Una buena presentación también es práctica. ¿Cuántas veces no te ha tocado ver presentar a alguien que le fallaron las animaciones, el video o las tipografías en sus diapositivas? No quieres ser esa persona. Seguramente quieres poner ese video padrísimo que explica todo sobre tu startup, también es muy posible que el audio falle y sea una experiencia horrible cuando estés presentando. Como recomendación, olvídate de videos, animaciones y efectos, mantén lo más sencilla posible tu presentación. El objetivo es tener un apoyo visual que refuerce lo que estás diciendo, te recuerde las ideas que quieres transmitir y mantengan la atención de la gente. [Pro tip: exporta tu presentación a PDF para que no tengas que preocuparte por formatos ni tipografías].</p><p>Tu presentación no es tu pitch. La ley de Murphy establece que cuando algo puede salir mal, seguramente saldrá mal. La máquina donde van tus diapositivas podría fallar, y eso no debería ser impedimento para que puedas continuar. Apréndete tu pitch de memoria, imagina que le estás contando a un amigo. Es mejor ser un poco más informal y mantener la atención del público en todo momento a congelarte porque no recuerdas qué más ibas a contar.</p><p>Tú eres parte del pitch. Así como pones empeño en tener una presentación increíble, ten en cuenta que al final lo que la gente recuerda es a tí. Investiga un poco sobre tu audiencia y trata de manejar un tono adecuado para ellos, por ejemplo con inversionistas serás más formal que con estudiantes o con posibles clientes. Busca una manera de enganchar con ellos, de que te sientas cercano. Elimina cualquier posible causa de estrés, desde procurar conocer el lugar donde harás el pitch, hasta usar ropa con la que te sientas seguro.</p><p>Una buena presentación cuenta una buena historia. Contar historias es la forma más antigua de transmitir ideas de manera convincente. Con tu presentación lo que estás haciendo es justo eso: contar la historia de lo que se puede convertir/lograr con tu visión y tu equipo. Así como las historias tienen una estructura, piensa en el recorrido que llevará tu presentación, este puede cambiar de acuerdo a como tu decidas que funciona mejor. Una estructura recomendable sigue estos puntos: problema, solución (tu producto/servicio), características principales de tu solución, mercado (tamaño, particularidades), tracción (o cualquier número que hable de lo bien que vas), equipo (personas) y una invitación; esta invitación debe ser contundente, piensa en una frase que sea memorable y que transmita tu objetivo.</p><p>La preparación es todo. Practica, ensaya, memoriza, rediseña todo lo necesario para que te sientas de lo más natural cuando empieces a contar la historia de tu startup. Y bueno, recuerda rockear, fuerte.</p></div> <div class="text-formatted field field--name-field-autor-bio field--type-text-long field--label-above"> <div class="field__label">Bio</div> <div class="field__item"><p>Celeste North (<a href="http://twitter.com/celestenorth">@celestenorth</a>) es Country Manager de MUBI México, plataforma de Video on Demand de cine de arte, clásico y de culto. Activa participante del ecosistema de startups en México, anteriormente fue fundadora de NuFlick y participó en Mexican.VC y Startup Chile.</p> </div> </div> <section class="field field--name-comment field--type-comment field--label-above comment-wrapper"> </section> Wed, 17 Dec 2014 05:52:30 +0000 sg 5555 at https://sg.com.mx https://sg.com.mx/revista/46/consejos-para-un-buen-pitch#comments Estudio de Salarios 2014 https://sg.com.mx/revista/46/estudio-salarios-2014 <span class="field field--name-title field--type-string field--label-hidden">Estudio de Salarios 2014</span> <div class="images-container clearfix"> <div class="image-preview clearfix"> <div class="image-wrapper clearfix"> <div class="field field--name-field-image field--type-image field--label-hidden field__item"> <img src="/sites/default/files/images/salary.jpg" width="742" height="233" alt="" typeof="foaf:Image" /> </div> </div> </div> </div> <span class="field field--name-uid field--type-entity-reference field--label-hidden"><a title="View user profile." href="/user/1" lang="" about="/user/1" typeof="schema:Person" property="schema:name" datatype="" class="username">sg</a></span> <span class="field field--name-created field--type-created field--label-hidden">Tue, 12/16/2014 - 23:27</span> <div class="field field--name-field-numrevista field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Publicado en</h3> <ul class='links field__items'> <li><a href="/revista/46" hreflang="und">SG #46</a></li> </ul> </div> <div class="field field--name-field-seccion field--type-entity-reference field--label-hidden field--entity-reference-target-type-taxonomy-term clearfix"> <ul class='links field__items'> <li><a href="/revista/secciones/carrera" hreflang="und">Carrera</a></li> </ul> </div> <div class="field field--name-field-autor field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Autor</h3> <ul class='links field__items'> <li><a href="/buzz/autores/pedro-galvan" hreflang="und">Pedro Galván</a></li> </ul> </div> <div class="text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>Durante noviembre de 2014 realizamos una edición más de la ya tradicional Encuesta de Salarios de SG. Compartimos aquí los principales resultados.</p><p>Vale la pena mencionar que este año también estamos publicando los datos para que puedas accederlos y generar tus propias estadísticas. Al final de este artículo encontrarás información para hacerlo.</p><h3>Consideraciones para interpretar las cifras</h3><p>Las cifras y estadísticas que mostraremos en este artículo se generaron en base a una muestra de 1,550 respuestas obtenidas durante noviembre de 2014 en una encuesta abierta realizada por medio de internet.</p><p>Los datos mostrados reflejan en su mayoría la situación en México, dado que 95% de los participantes en la encuesta indicaron radicar en el país.</p><p>Todos los datos se refieren a salario bruto mensual, expresado en pesos mexicanos.</p><p>A diferencia de otros años, donde nos guiamos principalmente por la media aritmética (promedio), para este año hemos decidido guiarnos por la mediana, ya que así las estadísticas no son tan afectadas por aquellos salarios que distan mucho del promedio. También estamos incluyendo información de la desviación estándar para que puedas tener en cuenta la dispersión de los datos en cada caso.</p><h3>A los números</h3><p>Es así que de acuerdo a los datos recopilados este año, <strong>el salario medio de un profesionista de software en nuestra región es de $26,000</strong> pesos brutos mensuales (para los aferrados que de todos modos quieran conocer el promedio, éste es de $30,986.98). La tabla 1 muestra los principales datos estadísticos para el salario.</p><div class="figura"><img src="/images/revista/sg46/salarios2014-tabla1.png" alt="" width="500" /><p>Tabla 1. Estadísticas descriptivas del salario</p></div><p>El cuartil 1 indica la marca de 25%. Es decir, que 25% de las personas gana abajo de $16,000 pesos. El Q2 es 50%, es decir la mediana, y el Q3 es 75%. Así que según estos datos 75% de los profesionistas de software en México gana menos de $38,750 pesos de salario bruto mensual.</p><p>Comparando estos datos con los de 2013, donde obtuvimos una mediana de $22,000 y media de $26,310, podemos entonces deducir que los salarios de los profesionistas de software en México aumentaron alrededor de un 15% durante 2014.</p><p>Además del salario bruto mensual, los participantes también indican si reciben una compensación extra tal como bonos de desempeño, aguinaldo u otras prestaciones económicas. En este caso, la mediana reportada es de $20,000 pesos anuales de compensaciones extra y el promedio es de $51,000 pesos. Esta disparidad nos hace ver que mientras un gran número de personas reciben a fin de año su aguinaldo de una quincena, hay quienes reciben bonos y paquetes de compensación por varios cientos de miles de pesos. Sin duda, el salario mensual no lo es todo.</p><h3>Actividades y roles</h3><p>Aunque la encuesta de salarios es contestada por personal que labora en la industria de software, sabemos que hay muchos roles distintos en esta industria, y el salario entre ellos varía de forma considerable. Así que antes que nada comencemos desglosando los salarios de acuerdo al principal rol que desempeñan las personas. La tabla 2 muestra esto.</p><div class="figura"><img src="/images/revista/sg46/salarios2014-tabla2.png" alt="" width="500" /><p>Tabla 2. Salario por rol.</p></div><p>Cada participante podía escoger un máximo de tres roles, es por eso que la suma de las muestras es mayor al número de participantes (1,550).</p><p>Como es de esperarse, los roles de dirección y venta son los que perciben los salarios más altos, mientras que quienes se dedican al soporte técnico perciben los salarios más bajos. Los roles con mayor participación son los de programación, análisis de requerimientos, project management y arquitectura. Vale la pena aclarar que el rol de arquitectura considera también a quienes hacen diseño lógico de programas o componentes individuales, solo que no le llamamos “diseñador” para que no se confunda con diseño gráfico ni UX.</p><h3>Geografía</h3><p>La tabla 3 muestra el desglose de acuerdo al estado de la República Mexicana donde radican los participantes. Solo se muestran aquellos estados de donde obtuvimos 15 o más respuestas.</p><div class="figura"><img src="/images/revista/sg46/salarios2014-tabla3.png" alt="" width="500" /><p>Tabla 3. Salario por entidad federativa.</p></div><p>Desde la edición número uno del presente estudio, el Distrito Federal y Nuevo León se pelean la posición del primer lugar. En años anteriores nos había extrañado que Jalisco no quedara más arriba (en 2013 apareció en sexto lugar), pero esta ocasión ya aparece en tercero cercano. Sinaloa, al igual que en 2013 aparece como el estado con salarios más bajos para profesionistas de software. Nos extraña un poco ya que se han abierto centros de desarrollo de software en los últimos años en esta región, y al parecer los salarios no se han visto favorecidos con ello.</p><h3>Tipo de empresa y esquema</h3><p>La tabla 4 muestra la descomposición de los participantes de acuerdo al tipo de organización en la que laboran. Al igual que hace un año, las startups son las que reportan los mejores salarios brutos. Tal parece que esta es una particularidad en nuestra región, donde los empleados de startups sen enfocan más en el salario que en tener participación de la propiedad. En el caso de empresas de outsourcing vs. áreas usuarias, las primeras tienen una mediana más alta, pero las segundas tienen un promedio mayor. Suponemos que es porque en las áreas usuarias típicamente hay más niveles jerárquicos que en las empresas de outsourcing, las cuales buscan tener estructuras más horizontales.</p><div class="figura"><img src="/images/revista/sg46/salarios2014-tabla4.png" alt="" width="500" /><p>Tabla 4. Tipo de empresa.</p></div><p>Por otro lado, la tabla 5 muestra los esquemas de compensación más populares entre los participantes. Aunque la mayoría (66%) continúa en un esquema de nómina, el esquema mixto o híbrido (una parte en nómina y otra en honorarios) cada vez es más utilizado.</p><div class="figura"><img src="/images/revista/sg46/salarios2014-tabla5.png" alt="" width="500" /><p>Tabla 5. Esquema de contratación.</p></div><h3>¿Cómo vamos con la igualdad de género?</h3><p>La tabla 6 muestra un desglose de salario en base al género. Aunque los números siguen reflejando una alta proporción de hombres y una diferencia significativa en salario (las mujeres perciben 22% menos), la buena nota es que estos números son mejores que los obtenidos en años anteriores, donde típicamente teníamos una relación de 84/16 y una diferencia de salario de 30%. Habrá que poner atención en este dato para el próximo año y ver si continúa la tendencia.</p><div class="figura"><img src="/images/revista/sg46/salarios2014-tabla6.png" alt="" width="500" /><p>Tabla 6. Salario por género.</p></div><h3>Habilidades y conocimientos</h3><p>Sabemos que entre la información que genera mayor interés (y morbo) de este estudio cada año es la descomposición de salarios de acuerdo a las tecnologías utilizadas.</p><p>La tabla 7 presenta la lista de salarios de acuerdo a lenguajes de programación. Aunque la encuesta tenía muchas otras opciones de lenguajes (Lua, Swift, Scala, etc.) solo dejamos los que tuvieron más de 15 respuestas. Es importante notar que únicamente las personas que indicaron “programación” entre sus actividades actuales tuvieron la opción de escoger lenguajes. Esto evita que personas que programaban hace muchos años y hoy en día son gerentes o directivos con altos salarios, afecten las estadísticas. Otra aclaración pertinente es que sabemos que Node no es un lenguaje de programación (en realidad es javascript), pero consideramos adecuado ponerlo por separado.</p><div class="figura"><img src="/images/revista/sg46/salarios2014-tabla7.png" alt="" width="500" height="594" /><p>Tabla 7. Salario por lenguaje.</p></div><p>Tal como sucedió en 2013, Objective C se mantiene como el lenguaje mejor pagado, derivado de la alta demanda que hay de desarrollo móvil, y la escasez de personas que dominen este lenguaje. Apple lanzó Swift este año (que de hecho era opción en la encuesta pero muy pocos participantes lo marcaron), así que veremos que pasa para 2015.</p><p>Otro aspecto interesante de esta tabla es que la desviación estándar refleja qué tan “hipster” es cada lenguaje. Mientras que lenguajes principalmente usados en apps departamentales como VB, Delphi o C# tienen baja desviación, lenguajes como Objective C, Node, Ruby y Python tienen desviaciones estándar altas.</p><p>La tabla 8 lista las plataformas para las que los participantes han desarrollado o mantenido aplicaciones durante el último par de años.</p><div class="figura"><img src="/images/revista/sg46/salarios2014-tabla8.png" alt="" width="500" /><p>Tabla 8. Salario por plataforma.</p></div><p>Llama la atención que en los primeros lugares tenemos a dos plataformas que son polos opuestos. Por un lado tenemos al mainframe, ícono del cómputo centralizado de alto desempeño; sabemos que se paga bien porque son sistemas de misión crítica en sectores como financiero, telecomunicaciones, retail y gobierno. En contraste, tenemos la plataforma de Internet de las Cosas (IoT), altamente novedosa y optimizada para dispositivos con bajo poder de cómputo. También es curioso ver que web, que era la plataforma “novedosa” hace 15 años, hoy es la más común y con los salarios menores.</p><p>Otro dato interesante que arroja esta tabla que hay más trabajo para Android, aunque iOS es mejor pagado.</p><p>La tabla 9 lista algunas de las certificaciones más populares en nuestra industria, y los salarios correspondientes. Como podemos ver, las certificaciones relacionadas con cuestiones más “cerca del negocio” son mejor pagadas que las certificaciones técnicas.</p><div class="figura"><img src="/images/revista/sg46/salarios2014-tabla9.png" alt="" width="500" /><p>Tabla 9. Salario por certificación.</p></div><p>Estos datos nos dan oportunidad de hacer una estimación a grandes rasgos del valor económico de una certificación. La tabla 9 nos dice que participaron 172 programadores Java certificados con un salario medio de $31,000. De la tabla 7 obtenemos 321 programadores Java (certificados y no certificados) con un salario medio de $25,000. En base al tamaño de las muestras, podríamos estimar que el salario medio de un programador Java no certificado ronda los 20 mil pesos, lo cual indica una diferencia de alrededor de 10 mil pesos contra un programador Java certificado.</p><p>Otro factor ampliamente debatido es qué tanto impacto tienen los estudios universitarios en el salario. La tabla 10 nos da un poco de luz sobre este tema.</p><div class="figura"><img src="/images/revista/sg46/salarios2014-tabla10.png" alt="" width="500" /><p>Tabla 10. Salario por nivel de estudios.</p></div><p>Tal parece que lo más rentable es realizar estudios de posgrado (ej. diplomados) y maestrías. Adicionalmente, tal parece que la industria en México no aprecia (o no tiene necesidad) de personas con estudios de doctorado. Otro dato interesante es que al parecer quienes cuentan con estudios técnicos perciben mayores ingresos que los universitarios sin titular.</p><p>Para terminar, revisemos la tabla 11 que nos muestra el desglose de acuerdo al nivel de inglés. Ya sabemos que en nuestra industria este es un factor con gran impacto en el desarrollo profesional, así que no es sorpresa ver que el nivel de inglés tiene una clara correspondencia con mejores salarios. En todo caso lo que habría que estudiar es si a través de los años estamos mejorando el nivel de inglés de nuestros profesionistas. Los resultados de 2013 arrojaron que 21.3% de los participantes tenía un nivel de principante y 21.4% avanzado. Así que parecería que poco a poco estamos mejorando en este aspecto.</p><div class="figura"><img src="/images/revista/sg46/salarios2014-tabla11.png" alt="" width="500" /><p>Tabla 11. Salario por nivel de inglés.</p></div><h3>Satisfacción</h3><p>La buena noticia es que a pesar de nuestras quejas, parece ser que la mayoría de los profesionistas de software está contento con su trabajo actual. La tabla 12 muestra este índice.</p><div class="figura"><img src="/images/revista/sg46/salarios2014-tabla12.png" alt="" width="250" /><p>Tabla 12. Satisfacción con empleo actual.</p></div><p>Por otro lado, la tabla 13 nos muestra cuales serían las principales razones por las que los participantes cambiarían de empleo.</p><div class="figura"><img src="/images/revista/sg46/salarios2014-tabla13.png" alt="" width="250" /><p>Tabla 13. Razones para cambiar de empleo.</p></div><h3>Acceso a datos</h3><p>Los datos con los que se generó el presente estudio están disponibles para consulta. Puedes accederlos a través de los siguientes enlaces.</p><p>Cuestionario utilizado: <a href="http://swgu.ru/salarios2014-estructura">http://swgu.ru/salarios2014-estructura</a></p><p>Datos en Fusion Tables: <a href="http://swgu.ru/salarios2014-datos">http://swgu.ru/salarios2014-datos</a></p><p>Video explicativo de cómo interactuar con Fusion Tables: <a href="http://swgu.ru/salarios2014-video">http://swgu.ru/salarios2014-video</a></p><hr /><h3>Agradecimientos</h3><p>Agradecemos el patrocinio de las siguientes empresas que contribuyeron a hacer posible el estudio de salarios SG 2014.</p><p><a href="http://www.mexico-first.org" target="_blank"><img src="/images/revista/sg46/salarios-MexicoFirst.png" alt="" width="200" /></a></p><blockquote><p>Los resultados obtenidos en la encuesta de SG son muy consistentes con los obtenidos en los monitoreos de MexicoFIRST. En cuanto a los niveles de sueldo por certificación podemos notar que hay muchísimos cambios respecto al año pasado, lo que demuestra el dinamismo de la industria y el interés por Administración de Proyectos y Arquitectura Empresarial que nos han expresado las empresas que piensan obtener certificaciones de clase mundial.</p><p>MexicoFIRST está igualmente apoyando para el mejoramiento del idioma inglés, ya que no solo es necesario para apuntalar la posición de México como destino preferido para Offshoring sino que adicionalmente beneficia a las personas al habilitarlas para mejorar sus niveles de percepciones.</p><p style="text-align: right;">Juan A. Saldívar. Director de Promoción de Capital Humano, MexicoFIRST</p><p>&nbsp;</p></blockquote><p><a href="http://www.kellyservices.com.mx"><img src="/images/revista/sg46/salarios-KellyServices.png" alt="" width="200" /></a></p><blockquote><p>Pudimos observar que 2014 fue un año difícil para la industria de TI, pues se mostró un freno en las inversiones como efecto a la Reforma al Sector de Telecomunicaciones.</p><p>Kelly Services, líder mundial que ofrece Soluciones Integrales en Recursos Humanos, reconoce la importancia de la industria de TI en México. Nuestra experiencia y servicio nos permite desarrollar al talento ideal en las empresas con el fin de optimizar a la industria. Es nuestro compromiso contar con los mejores especialistas en la búsqueda del talento para acercarlo a las mejores compañías, con el objetivo de traer mayor eficiencia y productividad en sus procesos, para que, tanto para las empresas como el talento mexicano se desarrolle con éxito.</p><p>En Kelly Services estamos seguros que este año 2015 será de gran crecimiento y proyección para esta industria, ya que, se están vislumbrando inversiones que permitirán la modernización de infraestructura, siendo uno de los impulsores de la industria de TI en México el desarrollo del cómputo en la nube, donde se espera un crecimiento acumulado en cinco años aproximado de 52%.</p><p style="text-align: right;">Monserrat Mendoza. Marketing Coordinator, Kelly Services Mexico.</p></blockquote><p><a href="http://softtek.com"><img src="/images/revista/sg46/salarios-Softtek.jpg" alt="" width="200" height="149" /></a></p><blockquote><p>Hoy somos testigos de la evolución de las empresas hacia el mundo digital: sus procesos, sus productos, sus servicios se encuentran basados cada vez más en algún software; lo mismo sucede con el contacto a clientes a través de medios digitales, de tal manera que la tecnología se está convirtiendo en la empresa misma. Ante este escenario, el valor de las personas que crean y ayudan a evolucionar las TI ha ido en ascenso. En Softtek estamos conscientes de esto, trabajamos para impulsar a nuestros colaboradores, acelerar su desarrollo y prepararlos para acompañar a nuestros clientes en esta etapa de transformación.</p><p style="text-align: right;">Gilberto Romero. Director de Marketing, Softtek Mexico</p></blockquote><p><a href="http://www.dawcons.com"><img src="/images/revista/sg46/salarios-Dawcons.png" alt="" width="200" /></a></p><blockquote><p>En Dawcons sabemos que para poder dar lo mejor a nuestros clientes, debemos basar nuestra estrategia en la formación humana y tecnológica de cada una de las personas que colaboran con nosotros. Es por eso que en Dawcons, además de contar con un equipo directivo con más de 20 años de experiencia en las Tecnologías de la Información, buscamos rodearnos de personas expertas en su área que aspiren a la mejora continua, proporcionándoles un plan de desarrollo profesional en la empresa.</p><p>Si estás en busca de una oportunidad laboral y te apasiona el desarrollo tecnológico, envíanos tu información para que te desenvuelvas y crezcas junto a Dawcons.</p><p style="text-align: right;">Jorge Valadez. Director Comercial y de Marketing, Dawcons.</p></blockquote><p>Agradecemos a todas las empresas y personas que nos ayudaron con sus respuestas, así como a los organismos que nos apoyaron en la difusión; especialmente IJALTI, CSoft, AMITI, CANIETI y Prosoftware.</p></div> <section class="field field--name-comment field--type-comment field--label-above comment-wrapper"> </section> Wed, 17 Dec 2014 05:27:56 +0000 sg 5553 at https://sg.com.mx https://sg.com.mx/revista/46/estudio-salarios-2014#comments Mejores Empresas para Trabajar https://sg.com.mx/revista/46/mejores-empresas-para-trabajar <span class="field field--name-title field--type-string field--label-hidden">Mejores Empresas para Trabajar</span> <div class="images-container clearfix"> <div class="image-preview clearfix"> <div class="image-wrapper clearfix"> <div class="field field--name-field-image field--type-image field--label-hidden field__item"> <img src="/sites/default/files/images/ING_17215_10332.jpg" width="881" height="587" alt="" typeof="foaf:Image" /> </div> </div> </div> </div> <span class="field field--name-uid field--type-entity-reference field--label-hidden"><a title="View user profile." href="/user/1" lang="" about="/user/1" typeof="schema:Person" property="schema:name" datatype="" class="username">sg</a></span> <span class="field field--name-created field--type-created field--label-hidden">Tue, 12/16/2014 - 22:43</span> <div class="field field--name-field-numrevista field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Publicado en</h3> <ul class='links field__items'> <li><a href="/revista/46" hreflang="und">SG #46</a></li> </ul> </div> <div class="field field--name-field-seccion field--type-entity-reference field--label-hidden field--entity-reference-target-type-taxonomy-term clearfix"> <ul class='links field__items'> <li><a href="/revista/secciones/carrera" hreflang="und">Carrera</a></li> </ul> </div> <div class="text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>Al igual que en la edición anterior del estudio de salarios SG, hemos aprovechado esta oportunidad para detectar cuáles son las empresas cuyos empleados se sienten más satisfechos. En otras palabras, cuáles son las mejores empresas para trabajar en TI en nuestra región.</p><h3>Metodología</h3><p>Los participantes en la encuesta tuvieron la opción de indicar el nombre y url (para identificarla más fácilmente) de la empresa donde laboran, y llenaron una matriz donde indicaron su nivel de satisfacción con la empresa donde actualmente laboran. La satisfacción considera los siguientes rubros:</p><ul><li>El trabajo que realizo provee un reto intelectual que me ayuda a crecer profesionalmente.</li><li>Trabajo con gente muy capaz y eso contribuye a mi aprendizaje.</li><li>La empresa ofrece facilidades para tomar capacitación/entrenamiento.</li><li>La empresa ofrece facilidades para participar en eventos de la industria.</li><li>Sé hacia donde voy con esta empresa, confío en que puedo crecer mucho en ella.</li><li>Mi trabajo me ayuda a vincularme con personas fuera de mi empresa.</li><li>Cuento con el equipo y herramientas (hardware y software) adecuado para realizar mi trabajo.</li><li>La empresa tiene finanzas estables y paga puntualmente.</li><li>Me agrada mi estación e inmobiliario de trabajo (oficina, escritorio, silla, etcétera).</li><li>Estoy satisfecho(a) con la ubicación donde se encuentra la empresa/oficina.</li><li>Me gustan las opciones que tengo para comer.</li><li>Estoy satisfecho(a) con el horario de trabajo (o flexibilidad de horario).</li><li>Me siento valorado(a) por mis superiores.</li><li>Laborar en esta empresa me facilita estar saludable.</li></ul><p>La calificación en cada uno de estos factores se promedió para generar una calificación global por cada participante. A su vez, las calificaciones globales de los distintos participantes de una empresa se promediaron para obtener el puntaje de la empresa. Solamente tomamos en cuenta a empresas de donde obtuvimos un mínimo de 5 participantes distintos.</p><h3>Ganadores</h3><p>Presentamos entonces la lista de las 20 mejores empresas para trabajar de acuerdo a los participantes en la encuesta de salarios SG 2014.</p><ol><li>Tacit Knowledge</li><li>Crowd Interactive</li><li>Oracle</li><li>Nearsoft</li><li>Globant</li><li>InnovaWeb</li><li>Scio Consulting</li><li>Tiempo Development</li><li>DotNET Desarrollo de Sistemas</li><li>HP</li><li>IDS Comercial</li><li>Dawcons</li><li>Definity first</li><li>EBCOMM</li><li>UNAM</li><li>IBM</li><li>BBVA Bancomer</li><li>Extend Solutions</li><li>Tata Consultancy Services</li><li>Softtek</li></ol><p>La lista está ordenada de acuerdo a la calificación obtenida (es decir que la empresa en 1er lugar tuvo la mejor evaluación por parte de sus empleados).</p><p>Felicitamos a estas empresas y nos quitamos el sombrero ante ellas. A varias las conocemos de cerca, y sabemos que trabajan mucho en brindar las mejores condiciones posibles a sus colaboradores.</p><p>Reconocemos especialmente a aquellas empresas que repiten de la lista de ganadores del 2013. Estas son: Crowd Interactive, Oracle, Globant, InnovaWeb, Scio Consulting, Tiempo Development, HP, IDS Comercial, BBVA Bancomer y Softtek.</p><p>Dado que la gran mayoría de los participantes en la encuesta radican en México, casi todas las empresas listadas son de México o se refieren a su subsidiaria en México. Al igual que en 2013, la excepción es Globant, que aunque ha aumentado su presencia en México, la mayoría de los participantes que la evaluaron para esta encuesta indicaron radicar en Argentina y Colombia.</p><p>Recalcamos que dada la metodología utilizada, esta no es una lista exhaustiva de empresas de la industria. Es decir, el hecho de que una empresa no aparezca en la lista no necesariamente es porque no haya sido bien calificada, sino que también puede ser porque no hubo suficientes respuestas de parte de empleados de esta empresa, como para ser considerada. Invitamos a todas las empresas que quieran aparecer en este ranking el próximo año a que se ocupen en mejorar la satisfacción de sus empleados y en noviembre de 2015 se aseguren de invitarlos a que contesten el estudio de salarios de SG.</p></div> <section class="field field--name-comment field--type-comment field--label-above comment-wrapper"> </section> Wed, 17 Dec 2014 04:43:00 +0000 sg 5554 at https://sg.com.mx https://sg.com.mx/revista/46/mejores-empresas-para-trabajar#comments ¿Donde está el Talento? https://sg.com.mx/revista/46/donde-esta-el-talento <span class="field field--name-title field--type-string field--label-hidden">¿Donde está el Talento?</span> <div class="images-container clearfix"> <div class="image-preview clearfix"> <div class="image-wrapper clearfix"> <div class="field field--name-field-image field--type-image field--label-hidden field__item"> <img src="/sites/default/files/images/shutterstock_921142311.jpg" width="1299" height="1005" alt="" typeof="foaf:Image" /> </div> </div> </div> </div> <span class="field field--name-uid field--type-entity-reference field--label-hidden"><a title="View user profile." href="/user/1" lang="" about="/user/1" typeof="schema:Person" property="schema:name" datatype="" class="username">sg</a></span> <span class="field field--name-created field--type-created field--label-hidden">Tue, 12/16/2014 - 19:10</span> <div class="field field--name-field-numrevista field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Publicado en</h3> <ul class='links field__items'> <li><a href="/revista/46" hreflang="und">SG #46</a></li> </ul> </div> <div class="field field--name-field-seccion field--type-entity-reference field--label-hidden field--entity-reference-target-type-taxonomy-term clearfix"> <ul class='links field__items'> <li><a href="/revista/secciones/personas" hreflang="und">Personas</a></li> </ul> </div> <div class="field field--name-field-autor field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Autor</h3> <ul class='links field__items'> <li><a href="/buzz/autores/erick-camacho" hreflang="und">Erick Camacho</a></li> </ul> </div> <div class="text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item"><p><em>Nota del editor: El presente artículo fue originalmente publicado por Erick en su blog y lo hemos retomado con su permiso para publicarlo en esta edición de SG.</em></p><p>En cualquier charla con personas del medio de TI, tarde o temprano saldrá el tema de lo complicado que es encontrar “recursos competentes” en el área de desarrollo. En otras palabras, es difícil encontrar programadores buenos, lo que no quiere decir que no existan. En México el talento no escasea. Hay muy buenos programadores y, a diferencia de otras profesiones, no solemos buscar salir al extranjero. Así que en teoría hay una buena base con cual trabajar.</p><p>¿Pero dónde están esas perlas? Pues primero empezaré por decir donde no están: buscando trabajo. Seamos sinceros, los buenos programadores están, pues, programando. Dado que hay mucha demanda, seguro están ganando buen dinero y/o en un empleo que les satisface. Así que aquí va la primera mala noticia para los reclutadores: no van a leer tu anuncio en la bolsa de empleo. De hecho, si han aprendido como yo, a la mala, ni por curiosidad mirarán las ofertas de esas bolsas.</p><p>No importa cuantos anuncios con un “Urge” pongan, de esa forma no lograrán atraerlos. No importa cuantos mails pidiendo CVs envíen, tampoco lo lograrán. Esas técnicas de spam sirven para conseguir otro tipo de profesionistas pero a los programadores no les atraen. Si no están buscando trabajo, no les importa que a ti te urja un desarrollador, o que necesites que llenen un CV con el formato de tu empresa para facilitarte el trabajo. Así que de entrada, hay que esforzarse más para conseguir a un buen programador.</p><p>¿Dónde sí están? Los buenos programadores están … con otros programadores. A continuación doy algunos ejemplos.</p><h3>En reuniones de programadores</h3><p>Las reuniones de programadores reúnen a gente con intereses similares para hablar de temas en torno a la programación. Una constante que he observado en reuniones en varias partes del mundo es que la gente que suele asistir a ellas son de muy buen nivel. Esto resulta obvio, cuando te das cuenta que estás hablando de gente que trabaja al menos 8 horas diarias programando y aún así se reúne después del trabajo o en fines de semana para hablar sobre cómo programar. Así que debe de encantarle lo que hace (otra opción es que lo dejó la novia y no tenía nada que hacer) y si te encanta lo que haces, sueles volverte bueno en ello.</p><p>Así que asiste a estas reuniones, pero sin tu playera de reclutador. Asiste como participante, habla con ellos, conócelos. Nosotros desconfiamos de quien llega a ofrecer empleo sin más. Hay varias estrategias que funcionan, como por ejemplo patrocinar las cervezas o llevar libros para rifar. Eso derribará la primer barrera y podrás hablar sobre lo que necesitas. Es más, si puedes llevar a programadores de tu empresa a exponer cosas técnicas, mucho mejor. De esta forma estás demostrando que en tu empresa valoran el talento y fomentan que su personal se vincule con otros colegas.</p><h3>En congresos</h3><p>Caso similar al arriba citado, pero con una gran diferencia. Los congresos cuestan, ya sea simplemente la entrada, ya sea faltar unos días al trabajo o desplazarte hasta ellos. En países como México, las empresas no le pagan eso a los empleados; así que normalmente verás que los programadores de su propia bolsa se pagan todo el show y hasta pierden días de vacaciones para asistir. Si tienes presencia en un congreso como patrocinador, esto es muy bien visto por los programadores. Nos damos cuenta que tienes un interés por este tipo de eventos y que a lo mejor no amenazas con despedir a tus empleados si asisten a ellos (lo que en países latinos ya es ganancia).</p><h3>En foros de programación</h3><p>¿Conoces javamexico, javahispano, stackoverflow, programming reddit, etc? Estos sitios están llenos de buenos programadores ayudando y colaborando entre sí. Las comunidades juegan un importante rol en la vida de un programador, quienes las mantienen con sus contribuciones en forma de artículos, respuestas a preguntas de foros, son gente de buen nivel. ¿Por qué? Porque lo que escribas ahí estará bajo el escrutinio de miles de programadores. Así que o tiene sentido lo que pones o te comen vivo a la primera tontería que digas, este miedo a la humillación pública resulta un importante filtro de talento en estas comunidades.</p><p>Estos lugares sirven para detectar a gente buena, pero no tanto para hablar con ellos. No hay nada peor que un anuncio de “URGE desarrollador .NET” en un foro de programación, es ponerte la soga al cuello. En javaHispano en cambio, hemos colaborado con empresas a llegar a los programadores de la comunidad de forma más amigable. Por ejemplo, haciendo concursos de programación (la JavaCup) donde se dan premios en efectivo patrocinados por empresas que quieren contactar al talento habitual en esa comunidad. Así que va la misma lección: tienes que aportar algo y dejar ver que te interesa el talento para que te hagan caso. Software Guru también tiene iniciativas similares.</p><h3>En proyectos open source</h3><p>Muy parecido al caso anterior pero aún más extremo. Cuando un programador colabora a un proyecto open source, no sólo es su opinión o conocimiento el que se pone a prueba, es su posesión más valiosa: su código. Está exponiendo el producto de su talento, de una forma tal que no caben ni comentarios, ni poses. Así que aquellos que colaboran con estos proyectos, por el simple hecho de hacerlo, han mejorado su nivel de programación. Estos proyectos open source son una gran ventana al pool de talento. Así que una buena opción es mirar en los sitios de repositorios de código como github y bitbucket que han indexado todos esos proyectos y te dan acceso a los datos agregados de los mismos.</p><p>¿Cómo contactas a programadores en estos proyectos? La opción más viable es que si necesitas gente que conozca de cierta tecnología, digamos una librería, pues contacta a los responsables de esa librería. La mayoría de los colaboradores open source lo hacen por necesidad (está usando ese proyecto) o por gusto. Así que si les ofreces un trabajo donde parte del trabajo será seguir manteniendo y creciendo su proyecto open source, lo ven con buenos ojos. Alguien les pagará por algo que están haciendo de a gratis.</p><h3>Encerrados en el piso más escondido de las grandes empresas</h3><p>No todos los buenos programadores asisten a las reuniones, ni van a congresos, ni colaboran con proyectos open source. Muchos están muy ocupados sacando la nueva versión del sistema core de un Banco o programando la última versión de un sistema CAD 3D para una empresa extranjera. Estos son los más difíciles de detectar porque no salen al sol muchas veces. Para estos casos, lo más fácil es asumir que detrás de todo buen sistema hay programadores buenos e intentar detectarlos.</p><p>Siempre que veo algo bien hecho, desde un sitio de un banco estable y funcional, hasta un producto de mesa de regalos en una tienda departamental que funciona bien; asumo que hay un buen programar detrás. Pregunta por ellos, ¿quién creó el menú para cambiar de sección en el módulo de edición impresa en la aplicación de iPhone del periódico Reforma? ¿Quién diseñó el sistema de SPEI que procesa millones de transacciones al día? A esos son a los que quiero conocer.</p><p>Así que no pongas anuncios en bolsas de empleo, no pongas un anuncio en un foro con la palabra URGE (así en mayúsculas). A los buenos programadores no les importa eso. Dedícate a detectarlos, a hablar con ellos. Una vez hecho esto, no todo está servido. Falta convencerlos de que dejen a su actual empresa, falta corroborar que estos programadores puedan desempeñar un buen papel en tu equipo, falta ver si realmente tendrán el nivel necesario.</p><p>Lo que estoy tratando de decir es que si quieres encontrar al talento, te tiene que importar el talento. No les faltes al respeto con spam enviando un formulario para que te lo llenen, o con llamadas al celular para pedirle su sueldo actual (los dos casos me ha pasado). Primero tienes que participar en su mundo y demostrar que te interesa, de esa forma te aceptarán una charla sobre un posible empleo.</p></div> <div class="text-formatted field field--name-field-autor-bio field--type-text-long field--label-above"> <div class="field__label">Bio</div> <div class="field__item"><p>Erick Camacho es CTO en Nubleer Media. Cuenta con amplia experiencia en la arquitectura de aplicaciones JEE así como el desarrollo de aplicaciones nativas para iOS. Erick es Maestro en Tecnologías de la Información con especialidad en Ingeniería de Software por la Universitat Politècnica de Catalunya.</p> </div> </div> <section class="field field--name-comment field--type-comment field--label-above comment-wrapper"> </section> Wed, 17 Dec 2014 01:10:18 +0000 sg 5552 at https://sg.com.mx https://sg.com.mx/revista/46/donde-esta-el-talento#comments Incluyamos a las Mujeres https://sg.com.mx/revista/46/incluyamos-las-mujeres <span class="field field--name-title field--type-string field--label-hidden">Incluyamos a las Mujeres</span> <div class="images-container clearfix"> <div class="image-preview clearfix"> <div class="image-wrapper clearfix"> <div class="field field--name-field-image field--type-image field--label-hidden field__item"> <img src="/sites/default/files/images/shutterstock_204352588_0.jpg" width="1299" height="1630" alt="" typeof="foaf:Image" /> </div> </div> </div> </div> <span class="field field--name-uid field--type-entity-reference field--label-hidden"><a title="View user profile." href="/user/1" lang="" about="/user/1" typeof="schema:Person" property="schema:name" datatype="" class="username">sg</a></span> <span class="field field--name-created field--type-created field--label-hidden">Tue, 12/16/2014 - 19:04</span> <div class="field field--name-field-numrevista field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Publicado en</h3> <ul class='links field__items'> <li><a href="/revista/46" hreflang="und">SG #46</a></li> </ul> </div> <div class="field field--name-field-seccion field--type-entity-reference field--label-hidden field--entity-reference-target-type-taxonomy-term clearfix"> <ul class='links field__items'> <li><a href="/revista/secciones/personas" hreflang="und">Personas</a></li> </ul> </div> <div class="field field--name-field-autor field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Autor</h3> <ul class='links field__items'> <li><a href="/autores-sg/raquel-hernandez" hreflang="und">Raquel Hernández</a></li> </ul> </div> <div class="text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>Durante los 10 años que llevo trabajando como ingeniero de software en México y Estados Unidos, un común denominador en los proyectos en que he participado es que soy la única mujer en el equipo de desarrollo. Muchas empresas no se dan cuenta de lo importante que es tener un equipo de trabajo incluyente, especialmente cuando se están creando productos que serán utilizados por una gran diversidad de personas. Las empresas deben buscar que su equipo refleje las distintas formas de pensar de sus consumidores, sobre todo se debe crear un ambiente laboral donde todas las ideas se escuchen, valoren y se tomen en consideración. Tener mujeres en el equipo de trabajo, no es solo necesario por equidad de género, sino que es fundamental cuando se desean generar las mejores ideas y que se reflejen en la calidad de los productos que las empresas producen.</p><p>Desafortunadamente, encontrar este balance de género no es una tarea nada sencilla, porque es muy difícil encontrar talento femenino. El mundo de la tecnología puede ser un ambiente hostil para las mujeres por cuestiones culturales, machismo y sobre todo porque es un terreno totalmente dominado por hombres. Esto causa que muchas mujeres se sientan inseguras ya que para poder sobresalir se tiene que esforzar aún más, y muchas veces por la misma condición de ser mujer no se valora su trabajo o sus conocimientos como se hace con un hombre. De ahí que la mayoría de las mujeres en esta industria sufran del “síndrome del impostor”, que les provoca tener expectativas demasiado altas respecto a ellas mismas y baja autoestima. Se ha comprobado que las mujeres ganan menos que los hombres en esta industria, solo por el simple hecho de que fallan al negociar por la falta de confianza en sí mismas.</p><p>También las mujeres suelen ser bastante cautelosas cuando se trata de cambiar de empleo —especialmente si se han tenido malas experiencias en el proceso de reclutamiento— y un buen número toma mucho tiempo para decidirse a cambiar de empleo y buscar mejores oportunidades. El problema con el proceso de reclutamiento, es que varias de las entrevistas técnicas están diseñadas para probar de una forma muy rápida qué tan “inteligente” es el candidato o candidata. Este tipo de entrevistas, casi siempre hacen fallar a las mujeres. El no poder programar un algoritmo que nunca se utiliza en la vida profesional en 15 minutos sin consultar en Internet, no significa que el candidato no es apto para el puesto.</p><p>La inclusión de las mujeres se está convirtiendo en un tema muy importante y cada vez vemos más iniciativas que buscan tener una fuerza laboral diversificada. Algunas empresas están verdaderamente preocupadas por la falta de mujeres en sus equipos de desarrollo. Etsy es un gran ejemplo, ellos se han dado a la tarea de contratar diversidad, particularmente diversidad de género. 80% de los usuarios de Etsy son mujeres, lo que demuestra que la inclusión debe ser una prioridad, además, una de las iniciativas que lanzaron es un programa de becas para mujeres ingenieras. Este programa fue muy exitoso para ellos y lograron incrementar 500% el número de mujeres ingenieras en su equipo. Google también ha realizado esfuerzos en el tema de inclusión y ha creado una gran iniciativa llamada “Made with Code” que trata de reducir la disparidad de género, esta iniciativa destinará 50 millones de dólares a incrementar el número de mujeres programadoras en los próximos tres años. Google confía en que ésta iniciativa ayudará a que más adolescentes y mujeres jóvenes se interesen por el campo de la programación y desarrollo de tecnologías.</p><p>También las mujeres desarrolladoras se han organizado en grupos y se apoyan mutuamente. Un ejemplo es DevChix, un grupo super diverso de mujeres programadoras de todos los niveles de experiencia, en donde se puede hablar libremente de todo tipo de temas técnicos, se ofrecen tutorías y cuentan con bolsa de trabajo. En México ya también se están formando grupos como estos, un ejemplo es @CodificadasMx.</p><p>Muchas empresas que están interesadas en contratar mujeres desarrolladoras no tienen éxito, y a veces se preguntan cómo pueden solucionar este problema. Lo mejor es empezar lo más temprano posible, algunas empresas no se preocupan de la equidad de género hasta que ya es demasiado tarde. Es mucho más difícil que una mujer se una a un equipo de 20 hombres que a un equipo de menos de 10 personas.</p><p>Otro de los grandes errores de muchas empresas es que cuando crean sus ofertas de trabajo, incluyen palabras como “rockstar”, “ninja”, “jedi”, etc., que son términos muy comunes en la cultura geek, pero que son términos que excluyen totalmente a las mujeres. El uso de estos términos puede implicar que se tiene la expectativa de un nivel de experiencia muy alta. Hay un gran número de programadoras muy talentosas, que no se sienten con la confianza necesaria en sus habilidades, aunque tengan la capacidad requerida. Y el solo uso de esta terminología está causando que tal vez una excelente candidata desista.</p><p>Otro error común es incluir prestaciones que son totalmente orientadas para atraer talento masculino, como pueden ser “full bar”, “cerveza y pizza todas las noches”, “mesa de billar”, etc. Este tipo de incentivos hacen parecer a la empresa como si tuviera una cultura de “club de Toby”. Empresas como Google que se caracterizan por ofrecer los más ridículos incentivos a sus empleados, además de “full bar”, también ofrecen “servicio de guardería”, “gimnasio”, “masajes”, “yoga”, entre otros; prestaciones mucho más atractivas para cualquier género.</p><p>Es muy recomendable que cuando se inicie el proceso de reclutamiento, alguna mujer del equipo participe en las entrevistas. Es intimidante ser entrevistada sólo por hombres, y más si se tiene que entrevistar con un grupo grande de personas. El tener diversidad en el primer contacto con los candidatos y candidatas, muestra a la empresa diversa e incluyente, y los aspirantes tienden a relajarse y mostrarse más seguros de sí mismos.</p><p>A pesar de la gran disparidad, es un gran momento para las mujeres de trabajar en el mundo de la tecnología porque está evolucionando constantemente, haciéndolo mucho más interesante y divertido. Un gran beneficio de trabajar en este rubro es que puedes aplicar tus conocimientos en industrias que te apasionen. Por ejemplo si tu gran pasión es la moda, música, cine, bienes raíces, salud, entre muchas otras industrias, hay un gran campo laboral en todas ellas.</p><p>Otra de las grandes ventajas de trabajar en empresas tecnológicas es que hay una gran oportunidad de crecimiento laboral, compañías que empiezan desde cero el día de hoy, el día de mañana se pueden transformar en grandes empresas. La alta demanda de programadores también ha beneficiado para que los salarios se hayan disparado; en la actualidad desarrolladores de aplicaciones móviles pueden ganar más de lo que ganaba un CEO de una empresa hace 10 años, por ejemplo. Y la demanda laboral seguirá creciendo en el futuro inmediato. El departamento de trabajo de Estados Unidos calcula que para el año 2020 habrá más de 1.4 millones de trabajos relacionados con el campo de tecnologías de la información, pero al paso que vamos, solo se podrán cubrir un 30% de estos puestos con universitarios estadounidenses. Lo que abre la puerta a talento de muchos países, incluyendo México.</p></div> <div class="text-formatted field field--name-field-autor-bio field--type-text-long field--label-above"> <div class="field__label">Bio</div> <div class="field__item"><p>Raquel Hernández es co-fundadora y Co-CTO de Glimpse, una aplicación móvil de citas que conecta usuarios de Instagram. Es Licenciada en Matemáticas Aplicadas y Computación por la UNAM. Desde 2007 radica en Nueva York, donde ha tenido un rol integral en el desarrollo de diferentes startups y empresas de gran escala.</p> </div> </div> <section class="field field--name-comment field--type-comment field--label-above comment-wrapper"> </section> <div class="field field--name-field-tags field--type-entity-reference field--label-above field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label">Tags</h3> <ul class='links field__items'> <li><a href="/sg4w" hreflang="und">sg4w</a></li> </ul> </div> Wed, 17 Dec 2014 01:04:40 +0000 sg 5551 at https://sg.com.mx https://sg.com.mx/revista/46/incluyamos-las-mujeres#comments El Cómputo con Rostro Femenino https://sg.com.mx/revista/46/el-computo-rostro-femenino <span class="field field--name-title field--type-string field--label-hidden">El Cómputo con Rostro Femenino</span> <div class="images-container clearfix"> <div class="image-preview clearfix"> <div class="image-wrapper clearfix"> <div class="field field--name-field-image field--type-image field--label-hidden field__item"> <img src="/sites/default/files/images/shutterstock_1483651821.jpg" width="1299" height="1630" alt="" typeof="foaf:Image" /> </div> </div> </div> </div> <span class="field field--name-uid field--type-entity-reference field--label-hidden"><a title="View user profile." href="/user/1" lang="" about="/user/1" typeof="schema:Person" property="schema:name" datatype="" class="username">sg</a></span> <span class="field field--name-created field--type-created field--label-hidden">Tue, 12/16/2014 - 19:01</span> <div class="field field--name-field-numrevista field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Publicado en</h3> <ul class='links field__items'> <li><a href="/revista/46" hreflang="und">SG #46</a></li> </ul> </div> <div class="field field--name-field-seccion field--type-entity-reference field--label-hidden field--entity-reference-target-type-taxonomy-term clearfix"> <ul class='links field__items'> <li><a href="/revista/secciones/personas" hreflang="und">Personas</a></li> </ul> </div> <div class="field field--name-field-autor field--type-entity-reference field--label-inline field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label inline">Autor</h3> <ul class='links field__items'> <li><a href="/autores-sg/fabiola-calderon" hreflang="und">Fabiola Calderón</a></li> </ul> </div> <div class="text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>La computación que se hace hoy en día dista mucho de la manera en que se hacía en la década de los 90, cuando realicé mis estudios universitarios en este campo. La estructura organizacional de las empresas y de los equipos de trabajo ha ido evolucionando conforme a la necesidad de mejorar los procesos computacionales.</p><p>Pero lo que no ha cambiado es la ausencia de las mujeres en dicho campo del conocimiento. Quisiera enfocar este artículo en reflexionar sobre qué podemos hacer para acercar a las mujeres a las carreras profesionales relacionadas al cómputo.</p><p>Cuando fui profesora de bachillerato en la preparatoria No. 6 “Antonio Caso” de la UNAM, tuve a mi alcance la oportunidad de conocer los intereses de las adolescentes. A muchas de ellas les motivaba ser económicamente independientes, tener una carrera profesional exitosa, contar con una vida personal satisfactoria y ser estables. La materia que impartía entonces era Opción Técnica en Computación; tenía una duración de dos años y los alumnos del quinto grado la cursaban de manera opcional, egresando del bachillerato con un extra que les abría la puerta laboral, les permitía recabar información valiosa en cuanto a su vocación profesional y, si decidían ingresar a alguna licenciatura en el ramo del cómputo, se integraban a ella con conocimientos sólidos en el tema.</p><p>Más de una de las alumnas egresadas de la Opción Técnica en Computación decidía estudiar alguna de las carreras alusivas que la UNAM ofrece, pues en su paso por la materia, descubría el gusto por la computación o detectaba habilidades para estudiar una carrera de ese tipo.</p><p>La labor educativa de la opción técnica se respaldaba con la realización de diversas actividades organizadas por los profesores que formábamos parte de la planta docente; como los concursos de programación que eran espacios donde tanto hombres como mujeres ponían a prueba los conocimientos adquiridos hasta el momento, además representaba la oportunidad de interactuar con jóvenes cuyos intereses eran similares. Por lo regular, las adolescentes se mostraban entusiastas y comprometidas al participar en las actividades relacionadas a los concursos de programación, poniendo el esfuerzo y tiempo necesarios para hacer un buen papel.</p><p>Entonces, si existe el talento en las mujeres para ejercer la computación, ¿por qué no hay un mayor número de ellas incursionando en este campo? ¿Qué les puede brindar el ejercicio de esta profesión?</p><p>Además de independencia económica: la oportunidad de trabajar en casi cualquier sector laboral en el país y en el extranjero; la conquista de diversos retos profesionales, cuya velocidad y sentido quedan pautados por el ritmo en el avance y el crecimiento de la tecnología; empleos bien remunerados; calidad de vida y cumplimiento de metas personales al alcance de sus bolsillos.</p><p>Siendo testigo de la labor vocacional que ejercía la Opción Técnica en Computación, considero indispensable llevar a cabo acciones cuyo objetivo sea proponerle a la mujeres ingresar al mundo de la computación y despertar en ellas el interés por esta emocionante actividad.</p><p>Tales acciones podrían ser:</p><ul><li>Aprovechar diversos foros para brindar conferencias dirigidas a las adolescentes y, en general, a las mujeres interesadas en la tecnología y en la computación.</li><li>Invitar a mujeres exitosas en el tema para que hablen o escriban sobre su decisión de estudiar y ejercer alguna carrera en cómputo, de tal forma que sus historias muestren que la computación es un camino lleno de retos y satisfacciones y que puede representar una forma de vida accesible a cualquier mujer.</li><li>Aprovechar espacios como ferias de libros, ferias sobre tecnología, hackatones, encuentros, ciclos de conferencias y exposiciones fotográficas en las diversas escuelas secundarias y bachilleratos.</li><li>Diseñar cursos de programación enfocados a este sector de la sociedad.</li><li>Trabajar en conjunto con el gobierno local de cada entidad y con el gobierno federal para diseñar acciones y programas que beneficien al mayor número de niñas, adolescentes y mujeres en general que pudieran encontrar en la computación el desarrollo y el aprovechamiento de sus habilidades y talentos. ¿Qué pasaría si, así como hay campañas de alfabetización hubiera también campañas para la enseñanza del cómputo? Estoy segura que más de una mujer respondería al llamado.</li></ul><p>Cada acción debe realizarse bajo la perspectiva de sensibilizar a la sociedad sobre el papel que la mujer debe interpretar hoy en día en la sociedad, para percibirse como un agente de cambio, como parte fundamental en el desarrollo económico del país y del mundo.</p><p>De acuerdo a los Objetivos de Desarrollo del Milenio que conforman el Proyecto del Milenio de las Naciones Unidas [1], dar a las mujeres más espacios y oportunidades de desarrollo no sólo representa un beneficio para el género, sino también para la sociedad en general.</p><p><strong>Referencias</strong></p><p>[1] “Objetivos de Desarrollo del Milenio y Más allá de 2015”. Organización de las Naciones Unidas. <a href="http://www.un.org/es/millenniumgoals/gender.shtml">http://www.un.org/es/millenniumgoals/gender.shtml</a></p></div> <div class="text-formatted field field--name-field-autor-bio field--type-text-long field--label-above"> <div class="field__label">Bio</div> <div class="field__item"><p>Fabiola Calderón cuenta con 20 años de experiencia profesional en la industria de software. Actualmente es desarrolladora independiente especializada en aplicaciones web y móviles, y cursa la Maestría en Ciencia e Ingeniería de la Computación, en el Instituto de Investigaciones en Matemáticas y Sistemas (IIMAS) de la UNAM.</p> </div> </div> <section class="field field--name-comment field--type-comment field--label-above comment-wrapper"> </section> <div class="field field--name-field-tags field--type-entity-reference field--label-above field--entity-reference-target-type-taxonomy-term clearfix"> <h3 class="field__label">Tags</h3> <ul class='links field__items'> <li><a href="/sg4w" hreflang="und">sg4w</a></li> </ul> </div> Wed, 17 Dec 2014 01:01:34 +0000 sg 5550 at https://sg.com.mx https://sg.com.mx/revista/46/el-computo-rostro-femenino#comments