Si quieres desarrollar tu carrera como programador, aquí hay consejos de expertos sobre cómo avanzar en el campo de la programación.
Mientras que los programadores expertos siguen siendo altamente valorados y su demanda va en aumento, los programadores novatos y veteranos se enfrentan a varias luchas dentro del campo de la programación.
A continuación se presenta 10 consejos para convertirse en un mejor programador y ayudarle a mejorar sus oportunidades de carrera. Además, se incluyen recomendaciones de libros en el consejo número 10.
10 Consejos para ser un Mejor Programador
1. Afilar sus habilidades blandas
Las habilidades interpersonales incluyendo la comunicación, la empatía y el humor son la clave para diferenciarse de otros programadores calificados cuando se trata de construir una carrera y subir escalones, esto de acuerdo con el coach ejecutivo Debra Benton.
«El carisma, la simpatía y otras habilidades blandas son importantes», dice Jim Baca, coach y desarrollador senior de Android.
Nadie quiere trabajar con personas poco carismáticas y desagradables, esas habilidades (blandas) son tan importantes como las habilidades tecnológicas, y en en efecto se vuelven más importantes a medida que su carrera avanza, estas habilidades generan más oportunidades, así que no las descuenten.
Aprender a hablar con los no programadores es también una habilidad de trabajo valiosa, dijo Gregory Golinski, un programador y especialista en SEO de YourParkingSpace.
«La jerga que usan puede ser muy críptica (poco comprensible) para otros miembros del equipo que no saben nada acerca de la programación», dijo Golinski. «Los programadores siempre deben recordar que la mayoría de la gente no sabe qué es una matriz o una función«.
2. Codifique el mundo real, y codifique con frecuencia
«No hay sustituto para las soluciones de codificación a los problemas del mundo real y la práctica que viene de estas experiencias», dijo Willie Tejada, principal Promotor de desarrollo en IBM. «Lo que codifica no es tan importante como codificar con la mayor frecuencia posible y desafiarse a sí mismo.»
Esto requiere plantearse horas para mejorar sus habilidades de programación, dijo Avi Flombaum, co-fundador y decano de Flatiron School. «No sólo es aprender a usar algo, sino saber cómo funciona», dijo Flombaum.
Pasa más tiempo aprendiendo cómo y por qué se construyen las cosas en lugar de usarlas, siempre intenta profundizar una capa más en los conceptos más importantes.
Puede utilizar GitHub para mostrar públicamente los proyectos o ejercicios pasajeros y hacer que otros desarrolladores de su red revisen su código y proporcionen comentarios sobre dónde puede mejorar o cómo puede abordar las cosas de manera diferente, dijo Paul Wallenberg, gerente de servicios de reclutamiento de tecnología en LaSalle Network.
«Los programadores que están en la búsqueda de un nuevo trabajo deben mostrar los proyectos en los que han trabajado», dijo Manu Singh, un desarrollador móvil en Clearbridge Mobile. «Esto te distingue de la competencia y muestra no sólo qué proyectos has trabajado, sino una mirada más profunda a quién eres, cómo has completado el trabajo y dónde quieres ir. Al conformar una cartera de tu trabajo, estás construyendo tu marca personal«.
3. Ser agnóstico del lenguaje
Aprender más de un lenguaje de programación puede aumentar dramáticamente las oportunidades de carrera y el potencial de ingresos, ya que la tecnología continúa evolucionando y se desarrollan nuevos lenguajes, según Willie Tejada.
«El lenguaje es una herramienta, por lo que es fundamental aprender otras nuevas», dijo Tejada. Es valioso tener una profunda experiencia en un lenguaje, pero también es importante conocer una amplia gama de lenguajes y elegir la herramienta adecuada para el trabajo».
4. Contribuir a la comunidad de código abierto
Si contribuyes a la comunidad de código abierto, ésta te fortalecerá, dijo Tejada. «Cuando contribuyes a un proyecto, presta atención a los comentarios que recibes de los usuarios y otros desarrolladores», agregó. «Cuando usted da a la comunidad, asegúrese de aprovechar también la oportunidad de recibir.»
«En lugar de perseguir la notoriedad de un desarrollador de ‘superestrella’, asegúrese de estar hablando en conferencias, escribiendo posts en blogs y participando en proyectos de mentoría que realmente te apasionan», dijo Charlie Robbins, director de ingeniería de GoDaddy y ex miembro de la junta directiva de la Fundación Node.js.
5. Unirse a un grupo de usuarios local
«Lo que más me ha ayudado a convertirme en un mejor programador es estar trabajando con programadores altamente calificados», dijo Antony Vitillo, desarrollador de VR y propietario del blog The Ghost Howls . «Trate de trabajar siempre con personas más hábil que usted, de esta manera aprenderá mucho.»
Esto es especialmente importante cuando comienza por primera vez en una carrera de programación, dijo Brad Davis, gerente de sucursal de TI en Addison Group. «Busque un equipo más grande, ya que esto asegura que usted tiene desarrolladores mayores que pueden ayudarle a crecer sus habilidades», dijo Davis.
La programación en pareja con otro desarrollador es una excelente manera de aprender a través de la retroalimentación instantánea, de acuerdo con Alyssa Mazzina, redactora de contenido de marketing para desarrolladores de Stack Overflow . Con este método, un participante puede escribe código, mientras que el otro observa como se hace el trabajo. Los dos cambian de papeles cada pocos minutos, y hablan entre sí durante todo el proceso.
La práctica es probable que le prepara para un mejor éxito, ya que es una experiencia de aprendizaje totalmente inmersiva, una integración más rápida en el equipo y un crecimiento más significativo como desarrollador.
6. Trabajar en un proyecto paralelo
Un proyecto paralelo puede sonar desalentador, pero debe considerar comenzar uno solo por diversión, dijo Mazzina. «La programación de algo que te apasiona es crucial para el desarrollo y al asumir un proyecto paralelo sin expectativas, además de divertirte y aprender, te sorprenderás de lo mucho que puedes crecer», dijo Mazzina.
Intente aprender un nuevo lenguaje de programación, o cree una aplicación para mejorar sus habilidades y ampliar su capacidad.
GitHub también está llena de proyectos grandes y pequeños que dan la bienvenida a las contribuciones, dijo Cynan de León, jefe de ingeniería de datos y análisis de Mint en Intuit. «Este es un gran lugar para ver si alguien ya ha comenzado a crear su idea, y ver de qué manera se puede mejorar», dijo De Leon. «También se obtiene el beneficio de tener a otras personas a ver lo que ha contribuido, continuar ese ciclo. Puede ser algo tan pequeño como un solver de Sudoku, o algo tan enorme como un proyecto de alto nivel de Apache.»
7. Desarrollar una especialidad
La programación cambia muy rápidamente-a menudo, se aprende una tecnología, y para la próxima semana, ha sido sustituido por algo mejor, dijo Alex Markov, desarrollador y fundador de Refersion. «Mi consejo es especializarse enfocándose en un segmento más pequeño de tecnología, como la administración de bases de datos, el desarrollo web de front-end, etc.-entonces mantente al día con esa industria, aprende todo, sé el mejor. Es tu carrera», dijo Markov. «Los empleadores te respetarán más cuando digas: «No sé nada de las otras cosas, pero cuando se trata de XYZ, te cubro la espalda todo el tiempo «.
Si usted está luchando para elegir un lenguaje para empezar, debe elegir uno y aprender bien, dijo Vassallo. «Si bien todos tenemos que recorrer varios lenguajes en el camino para convertirnos en un gurú de la programación, vale la pena tratar de brillar en un campo», dijo Vassallo.
8. Tomar la revisión del código en serio
La revisión del código no es sólo una manera efectiva de detectar errores, sino que también es una gran manera de generar discusión y compartir conocimientos entre los miembros del equipo, dijo Tigran Sloyan, CEO de CodeFights. «Como crítico, sea receptivo a la crítica constructiva y aproveche la experiencia de sus revisores para crear algo mejor de lo que podría haber hecho por su cuenta», dijo Sloyan.
Como revisor, manténgase constructivo, pero aproveche la oportunidad para difundir las mejores prácticas y la sabiduría acumulada, o incluso aprender algo nuevo del código que está revisando
9. Aprenda más sobre el lado del negocio
Si usted es parte de una organización con fines de lucro o sin fines de lucro, su software está potenciando un objetivo de negocio, dijo Sloyan. Aprender cómo su empresa gana dinero y sirve a los clientes, y la competencia básica que tiene en comparación con los competidores, puede ayudarle a descubrir nuevos enfoques y mejoras que apoyarán a los negocios.
«Hable con sus colegas en los departamentos de negocios y haga preguntas difíciles de negocios a sus altos ejecutivos», dijo Sloyan. «Por ejemplo, si trabaja para una plataforma de anuncios en línea cuya tecnología central es la personalización de anuncios, definir e innovar en el algoritmo de relevancia de anuncios efectuará o romperá su negocio». También puede obtener la previsión para diseñar un sistema que pueda escalar rápidamente con su negocio e identificar oportunidades que no son evidentes para los gerentes no técnicos.
10. Leer con voracidad
Muchas de las habilidades necesarias para ser un desarrollador fuerte no se enseñan en la universidad, dijo Sloyan. Sin embargo, una serie de libros escritos por los desarrolladores pueden darle información práctica que de lo contrario puede tomar años para aprender en el trabajo. Sloyan recomienda: (Haga clic sobre cada libro para mayor información)
- Code Complete: A Practical Handbook of Software Costruction (Dv Professional)
- Clean Code: A Handbook of Agile Software Craftsmanship (Robert C. Martin)
- The Mythical Man-Month: Essays on Software Engineering, Anniversary Edition
Para principiantes en el campo de la Programación, Flombaum recomienda:
- (Learn to Program (Updated, Revised)) By Pine, Chris (Author) Paperback on (03 , 2009)
- Programming Ruby 1.9 & 2.0: The Pragmatic Programmers’ Guide (The Facets of Ruby)
- Agile Web Development with Rails 6 (English Edition)
- [(Weaving the Web: The Original Design and Ultimate Destiny of the World Wide Web )]
Después de leer esto, es hora de ser el mejor como persona, como compañero, y como programador. ¡No se olvide para recibir! ¡Si te ha gustado el artículo comparte! 😉