Famosos que lucen mejor a sus 40 que a sus 20
Con la recesión económica en la mente de todos, las suposiciones sobre la seguridad laboral se cuestionan y todos comienzan a reexaminar sus habilidades. Hay muchos y valiosos trabajos realizados en TI, pero algunas habilidades se valoran aún más que otras. Con toda la agitación que experimentamos en TI, muchas nuevas habilidades tienen una gran demanda o un valor que aumenta rápidamente. Estas son mis principales 7 habilidades que podrían ayudarlo no solo a mantener ese trabajo, sino también a asegurar un nuevo trabajo aún mejor, posicionándolo para trabajar en la próxima generación de aplicaciones de TI y productos de software en la era de las aplicaciones en línea entregadas por la Web.
Diseño de aplicaciones web: Me apasionan los diseños de productos excelentes y las personas que saben cómo hacerlo realmente bien. Diseñar una gran aplicación web es muy diferente de diseñar un gran sitio web. No podrían ser más diferentes en mi libro. La mayoría de los diseñadores de UI deben poder trabajar en circunstancias difíciles: la mayoría de las personas a su alrededor no entenderán lo que hacen, cómo lo hacen, cuándo deben ingresar, qué información y recursos necesitan, y cuánto trabajo necesitan. lleva a crear no solo un diseño UI utilizable sino también un útil. Tienes que ser una persona ingeniosa, alguien que pueda REPLACEarse en las conversaciones entre arquitectos, desarrolladores, usuarios, control de calidad, pruebas, gestión de productos y todos los que piensan que pueden diseñar una mejor trampa de UI. El diseño de UI es como el fútbol de la NFL: todos pueden reconocer un buen juego cuando lo ven, pero muy pocos pueden jugarlo. Y todos tenemos una opinión al respecto.
Una de las mejores críticas que recibí de un cliente que miraba mi producto fue: "Esta interfaz de usuario parece diseñada por un desarrollador". Eso más o menos lo dijo todo acerca de lo que pensaban sobre la facilidad de uso de esa aplicación. Ahora, si usted es un desarrollador que cree que podría interesarle el diseño de la interfaz de usuario, podría ser una declaración bastante insultante de un cliente. Tal vez eres un desarrollador que es un diseñador de UI bueno, decente o adecuado, pero eres, de lejos, la rara excepción. Si crees que el diseño de UI es fácil y no entiendes de qué se trata toda esa alharaca, definitivamente necesitas la ayuda de un diseñador de UI.
Si quieres desarrollar tus habilidades como diseñador de UI, busca grupos de usuarios en diseño de información, desarrollar algunas habilidades de factores humanos, aprender a planificar y realizar entrevistas a los usuarios, desarrollar perfiles de usuarios y ejecutar sesiones de prueba de productos bien diseñadas con los usuarios. Lo más importante es comenzar por saber quiénes son los usuarios del software que está creando. Es sorprendente la frecuencia con que se sabe muy poco sobre el verdadero usuario de un producto o sistema de TI.
Desarrollo de aplicaciones web: Si escribe aplicaciones que dependen de un cliente pesado o instalado, tengo que creerlo. Probablemente no esté al frente del desarrollo de aplicaciones. Las aplicaciones web son hacia donde se dirige el software, con una pizca de SaaS y PaaS (plataforma como servicio) para arrancar. Entregar aplicaciones a través del navegador web es donde está ocurriendo el desarrollo de aplicaciones más interesante, ya sea con aplicaciones ASP.NET, aplicaciones de portal Sharepoint, LAMP (Linux Apache MySQL PHP), Java o Ruby on Rails. Agregue a eso las capacidades que ofrecen los proveedores de PaaS, tales como Amazon, Salesforce / Force.com y Google, y las cosas se vuelven bastante interesantes.
Las interfaces web en las aplicaciones pueden ser algo gracioso. ¿La interfaz de usuario web es algo que se despliega sobre una aplicación bien diseñada? ¿El diseño de la IU web controla el resto del diseño de la aplicación? ¿Qué se diseñó primero, la interfaz de usuario o la interfaz de usuario frontal? Bueno, es probable que sea una mezcla de ambos, con un factor de manejo muy significativo. 7 El gurú de la productividad de los hábitos Steven Covey dice: "Comience con el fin en mente". Es una especie de idea de que no te puedes perder si no sabes a dónde vas. Adapto el dicho de Covey: Comience con el usuario final en mente. Crear ese equilibrio efectivo de diseño de aplicaciones para el usuario y servicios de fondo en una aplicación web es una habilidad ingeniosa que deben valorar aquellos desarrolladores de aplicaciones web que descubrieron no solo cómo encontrar eso mantener el equilibrio, pero también ayudar a otros en el equipo a verlo, apreciarlo y valorarlo.
La cantidad de aplicaciones web que crearemos en los próximos meses solo aumentará. Los equipos y los líderes técnicos que pueden hacer esto bien valen su peso en oro. Haga esto bien y tendrá su elección de proyectos y compañías para trabajar.
Apalancamiento de la virtualización: El otro día estaba hablando con algunos colegas sobre los factores financieros detrás de la virtualización. Hay un par de formas en que me gusta demostrar esto, y lo primero que diría es; Virtualization es el mejor amigo de un CFO (hablé de esto en mi podcast hace un tiempo.) Lo segundo que digo es: Hay tres tipos de CFO: los que preguntan TI cómo la virtualización puede ahorrar dinero, aquellos a quienes la TI les ha demostrado cómo la virtualización puede ahorrar dinero y, por último, aquellos que buscan su próximo jefe de TI.
¿Quiere ganar puntos con la empresa? Logre grandes avances en el hardware, el centro de datos, el software y los ahorros en las instalaciones aprovechando la virtualización donde sea que pueda. No siempre es gratis, particularmente para obtener las capacidades de administración que necesitará para implementar la virtualización a cualquier escala, pero el ahorro de costos en comparación con las compras normales de hardware debería justificar fácilmente los costos de software en un ROI de consolidación. Ahora tome el siguiente nivel y demuestre cómo puede obtener balanceo de carga, recuperación de fallas, recuperación ante desastres y otras capacidades a través de la virtualización, y su director financiero lo convertirá en un titular honorífico de la hoja de cálculo de oro en el siguiente visor verde convención contable.
La virtualización no es solo para el centro de datos. Como desarrollador de aplicaciones, planee cómo puede aprovechar la virtualización en la arquitectura de su aplicación, las opciones de implementación, las pruebas unitarias y las pruebas de control de calidad. La virtualización es una gran caja de arena al probar ideas de diseño, simular configuraciones de redes y servidores, y cargar grandes cantidades de máquinas simuladas para usuarios finales. Los beneficios de QA por sí solos son un argumento tan convincente para el ahorro de costos de la virtualización como lo es en el centro de datos. Si su QA y entornos de laboratorio son cada vez más grandes en lugar de más pequeños, está haciendo algo mal.
Si está buscando un lugar para comenzar a hundir los dientes en la virtualización, vaya a descargar las versiones gratuitas de Hyper-V, Xen y VMware. Pronto verá la necesidad de capacidades de administración adicionales, pero las cosas gratis son geniales para empezar.
SaaS multi-tenant y escalabilidad: SaaS está donde está, ya sea que esté hablando de aplicaciones empresariales a pedido o productos y servicios entregados en la web. Es una de las áreas más candentes de nuestra industria en este momento. Pero SaaS trae algunos nuevos desafíos que no se enfrentaron anteriormente, lo que lleva a algunas carencias de habilidades en nuevas áreas. Probablemente el más ominoso es lo que se conoce como multi-tenant: la capacidad de admitir completamente a múltiples clientes (empresas) dentro de una aplicación alojada en línea.
¿Cuál es el problema, usted dice? ¿Ya admitimos estructuras organizativas complejas en nuestras aplicaciones? Bueno, recuerde que probablemente haga esto dentro de una empresa, o SME / SBM. Ahora, imagine acomodarse a los complejos requisitos de cientos o miles de empresas. O bien, si su servicio se vende a particulares, se trata de manejar esos requisitos para miles de clientes pequeños. Multi-tenant también significa que todas las opciones de configuración son modificables por el usuario. No hay valores predeterminados del sistema que funcionen para todos los usuarios porque no todos somos una gran familia corporativa feliz. Se deberán exponer muchas más opciones de configuración para que los usuarios puedan personalizarlas para satisfacer sus propias necesidades individuales u organizativas. El tercer desafío que veo en entornos multi-tenant es la escalabilidad. Imagine que ejecuta todos esos clientes en su software. La misma base de datos, diseño de clúster, diseños de gestión de transacciones (por nombrar algunos problemas) podría no funcionar a la escala de un servicio SaaS.
Si comprende estos problemas y, aún mejor, los ha resuelto en una aplicación SaaS desplegada, se encuentra entre los pocos de élite. Incluso si no lo ha hecho como una aplicación SaaS, las mismas habilidades y experiencias de arquitectura de sistemas y software son la base para construir y pasar al entorno SaaS. Si su próxima generación de aplicaciones son aplicaciones web y puede incluir un componente SaaS (o será completamente SaaS), ahora es el momento de perfeccionar esas habilidades y dejar que otros sepan que las tiene. Le hará mucho más valioso.
Escribir código de seguridad: Todo desarrollador escribe código, pero no todos los desarrolladores escriben código de seguridad. Si bien no es una habilidad que muchos gerentes entienden (u otros, para el caso), los desarrolladores que no solo pueden escribir código seguro sino también enseñar y enseñar a otros desarrolladores cómo crear código seguro pueden ser un miembro valioso del equipo.
Escribir código seguro es más que solo preocuparse por oscuros ataques de desbordamiento de búfer o condiciones de carrera. Obviamente ha visto mi tema de que cada vez más aplicaciones son aplicaciones web, y cada vez más esas se están convirtiendo en aplicaciones SaaS en muchos casos. Los ataques web están a la vanguardia de los riesgos donde se deben aplicar prácticas buenas y seguras de desarrollo de software. Inyección SQL, scripts entre sitios, URL mágicas y formularios ocultos, prevención de fuga de datos, seguridad de servicios web y malas implementaciones de SSL son todos ejemplos de problemas de seguridad que el desarrollo de software debe considerar y adaptarse cuando se escribe código seguro.
Estoy buscando buenos recursos para comenzar a crear un código seguro, recomendaría dos libros: 19 pecados capitales de la seguridad del software de Howard, LeBlanc y Viega, y seguridad de los servicios web de O'Neill.
Automatización y métricas de QA: Si es una persona de QA, tiene un lugar especial en mi corazón. Si usted es una persona de QA que vive para automatizar las pruebas de control de calidad, capturar métricas y utilizar esos datos para mejorar el desarrollo de software y las prácticas de control de calidad, ¡entonces tiene un lugar especial en el cielo! Como puede ver, valoro mucho las habilidades de control de calidad de alta calidad, particularmente aquellos profesionales capacitados que no solo encuentran todos esos desagradables errores de software antes de que cualquier software se les escape, sino que también saben cómo automatizar las pruebas y usar el conocimiento adquirido para mejorar cómo se crea el software en el proceso. Los desarrolladores de software pueden ser los principales cantantes y guitarristas de la banda, pero como sabe cualquier músico experimentado, son los tambores y el bajo los que hacen o rompen la banda. Me gusta decir; ama a los desarrolladores y confía en QA. (De hecho, también me encantan las personas de QA).
¿Quieres convertirte en alguien indispensable para el control de calidad? Automatice, automatice, automatice. Los mejores proyectos en los que he trabajado tenían pruebas automatizadas en el 90% superior, y las pruebas se realizaron cientos y cientos de veces antes de que se enviara el software. ¡Ahora, eso es lo que llamo pruebas de regresión! La nueva funcionalidad podría probarse manualmente, pero las pruebas siempre se automatizaron antes de que se realizara el diseño en la próxima versión del software. Esa es la única forma en que los CTO y los vicepresidentes de ingeniería pueden dormir. Ahora, vaya un paso más allá y proporcione a sus colegas, líderes técnicos y administración los conocimientos y las conclusiones que está obteniendo de todas esas pruebas y alcanzará el estado de nirvana en mi libro. El conocimiento contenido en todos los resultados de las pruebas puede llevar incluso a las mejores organizaciones de desarrollo a nuevas alturas.
CERTS, bienvenido: Me gusta decir: Nunca se puede equivocar con CERTS. Eso es válido tanto para las pastillas para el aliento como para las certificaciones técnicas. A todo el mundo le gusta discutir sobre el valor de las certificaciones: si se valora la certificación A +; si vale la pena obtener un MCTS vs. ir por el MCSE completo; si tener un CISSP lleva el mismo peso que una vez; y cuánto valoran los gerentes cualquier certificación sobre la experiencia laboral. Pero al final del día, podría marcar la diferencia entre obtener el trabajo sobre el otro candidato final. ¡Obtener esa certificación de seguro no va a doler!
Los CERTS demuestran que ha logrado algo que demuestra que tiene algún nivel de habilidad, y se ha demostrado cumpliendo con los requisitos de la certificación. No necesariamente le permitirán volar el avión, pero es posible que tenga una mejor oportunidad de conseguir un puesto a bordo con una organización de TI. Siempre preferiría ser demasiado valioso para perder que prescindible cuando los tiempos económicos son difíciles.
Si desea obtener más información sobre las certificaciones de Microsoft, visite la sección de aprendizaje del sitio de Microsoft para obtener certificaciones. También recomendaría algunos libros de capacitación sobre certificación de Microsoft Press, como el Kit de capacitación en administración de Windows Server de McLean, el Kit de capacitación de clientes de Windows Vista de McLean y el Kit de recursos de servicios de información de Internet (IIS) de Volodarsky.
Después de la fama temprana, DataPortability Project madura

Su función incluye mantener a los vendedores de redes sociales al borde de la portabilidad de datos
Reemplaza la pantalla de tu laptop sin gastar una fortuna

Cuando la computadora portátil de Carlene Primus cayó y rompió su pantalla, alguien quería cobrarle $ 1,200 por la reparación. Ella preguntó sobre alternativas más baratas.
Adivinación de Google: difundir la conciencia de un buscador de fortuna en un ...

El sitio web Google Fortunetelling no predice, pero educa y tiene como objetivo difundir la conciencia sobre las situaciones de los refugiados en todo el mundo.