
Hola pinguinos! 🐧Hoy 13 de mayo, es una fecha muy especial para mí, ya que cumplo exactamente 20 años de comenzar a trabajar en desarrollo de software. Han sido dos décadas de mucho aprendizaje, de grandes esfuerzos y de muchas y diferentes experiencias programando, diseñando, liderando, gestionando proyectos de software, pero principalmente compartiendo y aprendidiendo mucho conocimiento relacionado con el desarrollo y la ingeniería de software con quienes han sido mis jefes, mis compañeros y mis colaboradores a lo largo de estos años.
Este post tiene dos propósitos: El primero, agradecer con toda mi alma a quienes me han acompañado durante estos 20 años, tanto a mi familia, amigos, profesores y compañeros de trabajo. El segundo, compartir con Uds. una serie de consejos y reflexiones a las que llego tras todo este tiempo, principalmente dirigida a todos aquellos que hasta ahora están comenzando en esta grandiosa área del desarrollo de software.
A todos aquellos que inician esta genial aventura de programar y construir software, les aconsejo y recomiendo con todo mi cariño:
- Nunca dejen de aprender, de estudiar. Nuestra profesión avanza a gran velocidad y en cualquier momento, si nos descuidamos, nos podemos quedar atrás. Esto no significa que debamos ser expertos en cuanta tecnología salga al mercado, pero sí al menos, dedicar un espacio de nuestro tiempo, para revisar qué nuevo ha salido, y conocer los conceptos que pudiesen ser de ayuda para nuestro crecimiento profesional más adelante.
- Los cursos on-line son imporantes, y en la actualidad, son una gran ventaja respecto a quienes fueron nuestros precursores en esta profesión, quienes no tenían esa posibilidad, o a quienes, aunque ya empezamos en la época de crecimiento de Internet, no teníamos tanta facilidad de acceder a ellos como ahora. Este tipo de cursos les da la oportunidad a quienes aún no tienen claro si desean dedicarse a esto, tomar una decisión informada si el desarrollo de software deberá ser su profesión. Sin embargo, les recomiendo no únicamente quedarse con los cursos. Si han decidido que este será su camino profesional, busquen realizar la ingeniería, profundizar en esta área de conocimiento obteniendo un título profesional. Es cierto que en la actualidad se puede conseguir trabajo sin tener un título de ingeniero, un trabajo como programador, que incluso puede ser bien remunerado. Pero les aconsejo que inviertan parte de su salario, en la mejor inversión que pueden realizar, en su formación profesional. El tiempo pasa, los años llegan, y el mismo mercado a medida que Uds. sean mayores, les exigirá que se hagan cargo de tareas más allá de la programación y la forma en la que pueden aspirar a avanzar laboralmente es con un título profesional. Un título no les garantiza que les abran todas las puertas, pero la falta de un título profesional, en algún momento, les cerrará muchas puertas.
- Si ya se encuentran cursando la ingeniería o cuando tengan la oportunidad de hacerlo, concéntrense en estudiar y en el objetivo principal: obtener su título profesional. La vida universitaria es muy entretenida, y créanme, dentro de tanto entretenimiento, hay mucho distractor. Con el tiempo, la reflexión es que esos distractores no valen la pena. No arriesgen su tiempo, sus energías, su disposición y concentración en otras cosas que los aleje del objetivo principal. Entre más rápido obtengan el título profesional, más rápido las oportunidades que llegan con dicho logro les aparecerán.
- Muchos no contamos con los recursos económicos para poder únicamente estudiar, así que debemos trabajar para poder pagarnos nuestros propios estudios, y en muchos casos ayudar a nuestras familias. Sé, por experiencia propia, que es algo bastante difícil, que nos demanda mucho esfuerzo y dedicación, pero mi consejo es que no desfallezcan, no abandonen el objetivo de obtener el título profesional y de ser unos empleados destacables. Creánme, este esfuerzo es bien recompensado con tiempo, y la satisfacción de alcanzar la meta es inmensa, además que si así hemos logrado dar bienestar y prosperidad a nuestra familia, es una alegría indescriptible. No son los únicos que están en esa situación, otros hemos estado y estamos haciendo lo mismo, así que mucho ánimo! Sé que lo van a lograr! 💪
- A quienes he tenido oportunidad de enseñarles algo de lo poco que sé, van a reconocer este consejo: Pregunten! Nunca que se queden con una pregunta por algún tipo de pena o vergüenza. Simplemente levanten la mano y lancen la pregunta. No hay pregunta tonta. Una pregunta, por más simple que sea, puede salvar un proyecto. En los ambientes académicos, sus profesores están precisamente ahí para resolver todas sus preguntas; en ambientes laborales, sus jefes, sus compañeros de trabajo, sus colaboradores y hasta sus clientes, todos están ahí con el mismo objetivo de Uds.: hacer un proyecto exitoso. Todos están dispuestos a ayudar para que todo salga de forma correcta, como se espera. Y gracias a sus preguntas, Uds. aprenden, otros aprenden, quienes responden afirman su conocimiento, e incluso aprenden en caso que su respuesta esté equivocada. En conclusión, todos ganamos. Así que no dejen de preguntar.
- El anterior consejo también lo brindo con especial atención a los miembros de la iniciativa “Devs Latam” de la comunidad Try-Catch en la cual estoy colaborando de forma gratuita y voluntaria en mis tiempos libres como consultor. Por favor, no dejen de preguntar. Los miembros con más experiencia estamos precisamente para colaborarles con sus dudas y ayudarles a resolver cualquier situación que se presente en la construcción de sus proyectos de estudio. A cada pregunta que realicen, aprendemos y avanzamos todos.
- Los lenguajes, frameworks y tecnologías van y vienen; cada cierto tiempo aparecen novedades en estos aspectos y tanto las “modas“, las tendencias del mercado y los requerimientos de conocimiento en el ámbito laboral, también cambian según diversas circunstancias. Por tanto, aunque es bueno especializarse en saber dominar un lenguaje, framework o tecnología, la capacidad de adaptación y lograr poder trabajar en cualquier tecnología tiene mucho mayor valor. Para lograr esto, es más importante que estudiemos, repasemos y tengamos más presente los fundamentos base de programación y de la ingeniería de software, el conocimiento de algoritmos y de patrones de diseño y arquitectura, más que la totalidad de características de varios lenguajes específicos. Al tener claros estos fundamentos, lograremos tener más capacidad de adaptación y ayudar a construir soluciones, sin importar cuál sea la tecnología específica a utilizar. Quienes me conocen, me han escuchado que ante esto, yo digo “Al son que toquen, bailo 🎵🎶😁”, porque aunque durante todo este tiempo, considero que he aprendido bastante de mi lenguaje de programación favorito, Java ☕, nunca he tenido problema en aprender y trabajar en otros lenguajes de programación, tales como Pascal, C#, PHP, Visual Basic, Python, Javascript, entre otros, y también con diferentes y variados frameworks, tanto de mi lenguaje favorito, como de otros lenguajes.
- Respecto al punto anterior, quiero hacer énfasis, que la mejor forma de estudiar los fundamentos de nuestra profesión, se encuentra en los libros. Gracias a Internet, tenemos cientos de miles de páginas web, que hablan de variados temas de nuestro interés profesional, pero son muy escasas aquellas que profundizan en los temas que tratan a niveles que nos permitan alcanzar el dominio de los principios fundamentales del desarrollo de software. Y este conocimiento, sí se encuentra disponible al grado que requerimos en los libros, en los cuales, autores importantes y destacados de la ingeniería de software, con gran experiencia tanto académica como laboral, han plasmado su sabiduría en las páginas de sus obras escritas. Podemos utilizar la ventaja de Internet, para utilizar las tiendas on-line de las librerías tanto físicas como digitales para comprar de forma sencilla los mejores libros de nuestra profesión. Y hay que leer, y leer bastante para avanzar en nuestro conocimiento de la profesión. Deben buscar dentro de sí, la motivación para leer, a aquellos que no les gusta, porque es el mejor camino para aprender. Los videos, y post, deben ser un complemento a nuestro estudio, pero no el eje de aprendizaje, el cual sí debe ser la lectura de libros.
- Inglés! Deben estudiar inglés. No hay otra opción. La mayoría de contenido de calidad relacionado con nuestra profesión se encuentra en este idioma (Libros, cursos, tutoriales, etc). De igual forma, las mejores opciones laborales se encuentran disponibles para quienes tienen conocimento y cierto dominio de este idioma. No es necesario ser absolutamente angloparlante nivel nativo, pero entre mejor nivel de inglés tengamos, mejores oportunidades tendremos y mayor acceso a contenido de calidad tendremos. Y si está en sus posibilidades, un tercer idioma ayuda aún más a obtener mejores oportunidades de empleo. Pero antes de dar este siguiente paso, concéntren sus esfuerzos en aprender inglés.
- Podemos llegar a ser unos genios de la programación, la ingeniería y la tecnología, pero si no desarrollamos nuestras habilidades blandas, nos será muy complicado avanzar profesionalmente, ya sea como empleados, como independientes o como empresarios. Desarrollar nuestras habilidades de comunicación, de gestión del tiempo, resiliencia, liderazgo, adaptabilidad al cambio, entre otras muchas habilidades blandas, nos permitirá destacar, lograr que nuestras ideas sean escuchadas, y permitirnos alcanzar nuevos retos.
- Y finalmente, cuando vayan avanzando en este maravilloso mundo de la programación y el desarrollo de software, busquen alguna forma de colaborar a quienes están comenzando. Y también a los demás colegas que necesiten una mano amiga para continuar en su camino profesional, por más avanzados y experimentados sean. Todos en algún momento, necesitamos una ayuda. Grandes retos tenemos por delante como miembros de la comunidad de desarrollo de software, y únicamente estudiando, trabajando y colaborando entre nosotros, saldremos adelante y brindaremos productos y soluciones para hacer a nuestra sociedad mejor cada día.
Cualquier duda que consideren, les puedo ayudar a resolver, me pueden encontrar en mis redes sociales: https://linktr.ee/george_the_penguin 🐧
Y los invito a estar atentos a la continuación de este post, cuando cumpla 40 años trabajando en desarrollo de software. 😉
Muchas gracias por compartir tu experiencia y conocimientos con nosotros. Aunque me falta mucho para alcanzarte :p estoy muy de acuerdo con todo lo que dices y los consejos que nos das .. hay cositas que ya estoy haciendo pero otras voy a tratar de poner más en práctica. Felicitaciones por tus primeros 20 años!🍾🥳🥳
¡Gracias George, por tan excelente e inspirador relato, Never GIve up!!