Muy buenas, soy Luis y para hoy les traigo este tutorial.
Cada año hay miles de aspirantes a ingenieros de software que se gradúan de universidades, campamentos de entrenamiento y diferentes cursos.
Dado que se han esforzado mucho en estudiar y aprender a codificar, la mayoría de ellos son realmente talentosos. Merecen estar en mejores lugares y tener una buena vida pero, lamentablemente, muchos de ellos se quedan fuera por no saber cómo funcionan las cosas en este campo.
En esta publicación, compartiré cosas que me ayudaron a llegar a una mejor posición en mi carrera, por lo que es posible que también funcionen para ti.
Como todos los campos, la ingeniería de software es competitiva. Necesita ser realmente bueno en ciertas cosas para ganar visibilidad en este dominio.
Es posible que haya escuchado muchas sugerencias y consejos de mucha gente para ser contratado o para aumentar sus posibilidades de empleo. Sí, es una realidad que construir una reputación o una cartera en línea requiere mucho trabajo.
No es algo que puedas lograr de la noche a la mañana. En cambio, creo que se necesita un enfoque sistemático y es necesario identificar las áreas en las que se queda atrás y luego trabajar en consecuencia.
Permítanme exponer algunos de los puntos importantes a este respecto:
Índice
Conceptos teóricos
Como ingeniero, necesitas entender los conceptos subyacentes detrás de todas las cosas que haces.
Las Estructuras de Datos y los Algoritmos son los conceptos más importantes que necesitas entender. Casi todos los marcos, bibliotecas o paquetes que utilices en tu trabajo diario utilizarán una o más estructuras de datos.
También necesitas ser bueno en el conocimiento de los grandes sistemas de software. Esto se conoce más comúnmente como Diseño de Sistemas. La mayoría de las compañías que entrevistes normalmente esperarán que tengas un buen entendimiento de cómo funcionan estos sistemas.
Algunos desarrolladores experimentados argumentan que como no usamos estructuras de datos en nuestro trabajo diario, aprenderlas no sirve de nada. Creo que podría existir la posibilidad de que algunos desarrolladores no los utilicen en absoluto, pero aún así, la mayoría de las empresas utilizan estructuras de datos y algoritmos para probar su capacidad de resolución de problemas. Por lo tanto, no hay ningún daño en aprenderlas.
Contribuciones de código abierto
Las contribuciones de código abierto son a menudo subestimadas por los jóvenes desarrolladores, pero en mi opinión, pueden ser una gran prueba de sus habilidades técnicas sin siquiera mostrar su código a alguien o hablar con ellos.
Contribuir al código abierto no sólo demuestra que eres técnicamente competente sino que también refleja tu pasión por la codificación y la programación, que es un rasgo de los buenos programadores.
Usualmente, los nuevos desarrolladores están confundidos sobre cómo empezar a contribuir con el código abierto.
Diré que la mejor manera para ti es participar en competiciones de código abierto como el Hacktoberfest, el Google’s Summer of Code, y otras competiciones respaldadas por gigantes de la tecnología y las empresas.
Portafolio
Tener un buen portafolio de proyectos es muy importante para tu carrera de ingeniería de software.
Lo más importante es que te ayuda a mostrar tus habilidades técnicas relacionadas con las diferentes pilas de tecnología. Así, si construyes algunas cosas usando el MERN stack, serás capaz de demostrar que eres competente en ReactJS.
Además, también demuestra que no solo eres bueno en teoría, sino que también puedes construir cosas usando lo que has aprendido y puedes resolver problemas del mundo real usando eso.
Otra ventaja de tener tu portafolio de proyectos es que cualquiera puede ver tu código y trabajar en GitHub. Pueden saber lo bien que sigues las mejores prácticas, tu estilo de codificación y otras cosas.
Más importante aún, puedes venderlo como un SaaS o hacerlo de código abierto para ayudar a otros.
Comunidad
Comprometerse con las comunidades locales es otra forma de destacar como ingeniero de software.
Puedes tener diferentes capítulos de comunidades de programación locales. Puedes unirte a ellos para encontrar individuos y personas con ideas afines.
Las comunidades locales organizan regularmente hackathons, concursos y competiciones en las que tienen diferentes premios para los ganadores. Algunos incluso ofrecen trabajos. Conozco personalmente a un jefe de equipo de mi anterior empresa. Fue contratado de manera similar después de ganar un hackathon.
Además de eso, también puedes tener oportunidades de hablar en público en esos eventos comunitarios. Ya que el criterio para hablar en los eventos comunitarios no es tanto el hi-fi, así que puedes tener una oportunidad. ¡Inténtalo!
Conexiones
Todos los consejos anteriores te ayudarán a ponerte en contacto con las fuentes más olvidadas que pueden ayudarte con consejos valiosos, búsqueda de trabajo, o incluso contratarte, es decir, conexiones.
Los eventos, los compromisos con la comunidad y las contribuciones de código abierto te ayudan a establecer una red de contactos con otros ingenieros y desarrolladores de software. La creación de redes a través de estos eventos conduce a conexiones significativas.
Las conexiones significativas son las personas que pueden ayudarte de muchas maneras. Si te conocen a ti y a tu trabajo, pueden responder por ti. Nunca se sabe, pueden ser los que incluso te ayuden a conseguir un trabajo en la empresa para la que trabajan.
Es un hecho que en el mundo real la mayoría de las contrataciones en puestos importantes se hacen a través de conexiones personales. Nadie quiere contratar a una persona para un puesto importante que no conozca ya. Por lo tanto, la creación de redes no sólo te ayuda a conseguir trabajo, sino que también puede ser un catalizador para el progreso de tu carrera.
Para llevar
Estar técnicamente bien es bueno, pero junto a eso, también necesitas promover y mostrar tu trabajo para que todo el mundo pueda conocerlo.
Si eres el mejor programador del mundo trabajando en aislamiento, nadie lo notará y tu trabajo permanecerá oculto.
El trabajo en red abre muchas oportunidades que puedes imaginar. Personalmente, yo también he experimentado esto. Si miro a mi carrera antes de mi presencia en línea y de la creación de redes con la gente, no tuve muchas oportunidades de conocer a diferentes personas e interactuar con ellas.
Después de eso, no sólo he conocido algunas de las personas más asombrosas, sino que también he obtenido oportunidades de trabajo y ayuda de ellas en todo el proceso.
Te sugiero que lo intentes y veas la magia por ti mismo.
Buena suerte con tu viaje de marca propia.
Añadir comentario