Mi pasantía de ingeniería de software en Terraso

Imagen decorativa.

Mi primer encuentro con Tech Matters ocurrió hace aproximadamente un año, cuando iba de camino a clase y escuché un podcast sobre una aplicación inspirada en Tinder para jóvenes activistas políticos, un episodio del podcast Tech Matters. Siempre es refrescante ver el efecto dominó de los avances tecnológicos en industrias que históricamente no han sido urgentes en incorporar software en sus prácticas, siendo Tech Matters uno de los primeros dominós en el sector sin ánimo de lucro. Este fue uno de las cosas que más me atrajo a la hora de solicitar el puesto de pasante de ingeniería.

Desde la primera reunión de Revisión de Especificaciones, ya estaba inmersa en el diálogo dinámico y colaborativo entre los ingenieros, los jefes de producto, y los diseñadores de UX. Previo a esta experiencia, siempre había tenido la impresión de que los ingenieros tenían muy poco que decir en el diseño de una función; simplemente se encargaban de implementarla. Dado que Terraso crea software para usuarios no técnicos, me sorprendió la precisión y la atención al detalle con la que todo el equipo contribuyó para garantizar que aún la función más menor no tenga sobresaltos.

Uno de los aspectos más destacados de mi pasantía en el equipo de Terraso fue el increíble entorno de aprendizaje. Desde el primer día, tuve como mentor a Paul, el Director de Ingeniería de Terraso y gurú de Apple, quien me enseñó que, a pesar de mis 8 años de experiencia con MacBook, me faltaba aprender mucho sobre los MacBook. Una de las primeras cosas que me enseñó fue a ser eficiente con la plataforma GitHub y los comandos del MacBook, lo que me ahorró mucho tiempo a la hora de hacer mi trabajo. Segundo, me enseñó que nunca se debe detener un disco de hockey con el pie (a través de la experiencia personal, mencionó esto en nuestro primer 1:1). A lo largo del verano, pude observar su atención al detalle en el mantenimiento y la creación de funciones en la plataforma de Terraso. En el mundo del código abierto, donde los proyectos son impulsados por las contribuciones de la comunidad, la actualización de las dependencias, las convenciones de nomenclatura, los comentarios y la documentación no son sólo buenas prácticas; son vitales para la sustentabilidad y la seguridad de los proyectos. A lo largo del verano, pude aprender y aplicar estas buenas prácticas en mi propio proceso de desarrollo. A través de sesiones 1:1 y de programación en parejas con Paul, avancé en mis conocimientos sobre bases de datos relacionales, sistemas operativos, comandos de Linux y la reducir el desorden en mi máquina local (un GRAN cambio). 

Además, tuve la suerte de trabajar con David y Garo, ingenieros de software en la plataforma LandPKS de Terraso. A través de nuestro viaje de colaboración, tuve el privilegio de participar en sesiones semanales de programación en parejas con ellos, donde me introdujeron a Django, el marco de backend detrás de 1000P y LandPKS. Mis sesiones de programación en parejas con David se centraron en React Native y las mutaciones GraphQL, con las que no estaba familiarizada. Por otro lado, Garo y yo pudimos trabajar en modelos Django y traducir historias de usuario en código tangible. Una habilidad esencial que aprendí de estos dos ingenieros es la importancia de abordar problemas difíciles con múltiples soluciones. Tanto Garo como David me incentivaron a explorar las compensaciones y evaluar los pros y los contras de cada enfoque. Esto es especialmente valioso para abordar problemas complejos con creatividad y ofrecer soluciones de alta calidad para funciones fáciles de usar. 

Por último, pero no por ello menos importante, colaboré con José, el ingeniero de software sénior de la plataforma 1000P. Desempeñé un pequeño papel en la función de mapa de historias en 1000P, ya que trabajé con cargas de medios y la incorporación de nuevos mapas de historias de usuarios a la página de inicio de Herramientas. A pesar de tener mil preguntas sobre React (el marco web de Terraso), José siempre estuvo dispuesto a ofrecer explicaciones y aclaraciones detalladas. Me enseñó la importancia de la legibilidad del código y de consolidar el código repetitivo, especialmente en proyectos de código abierto. Cuando estás generando un ticket, es fácil olvidar que otros desarrolladores terminarán revisando algo que escribiste y tendrán que entender lo que hace. José facilita ese proceso haciendo hincapié en la importancia de la programación modular (una técnica de diseño de software que separa la funcionalidad de un programa en módulos independientes) y lo inculcó en las tareas frontend que realicé. 

Mi experiencia como pasante no se limitó únicamente a los ingenieros; tuve la oportunidad de interactuar con todo el equipo de Terraso -Lillian, Hana, Courtney, Derek, Steve y Amaya- y ser testigo de la dinámica que supone ofrecer soluciones elegantes a la medida de usuarios que no tienen tantos conocimientos técnicos. Estoy increíblemente agradecida por mi tiempo en Tech Matters y no veo la hora de aplicar lo que he aprendido en mis próximos viajes.

Author

Mi pasantía de ingeniería de software en Terraso
Scroll hacia arriba