Del otro lado del código

Como complemento a nuestra labor, en Taltere tenemos particular interés en conocer la formación y experiencia del talento que desarrolla y/o implementa tecnologías y darla a conocer con el objetivo de informar e incentivar a los jóvenes con inquietud por explorar el mundo TI.

Charlando con Leonardo Carrillo, (32 años) Desarrollador Sr iOS; Lic. En Informática, Universidad Autónoma de Querétaro

Hola Leo, gracias por regalarme este espacio y permitirnos conocer un poco de tu vida y tu andar profesional.

Un viaje de mil millas comienza con un solo paso, Leo cuéntame ¿Cómo se presentó tu primer empleo?

Fue en el 2009, un año antes de egresar de la Universidad y fue en el museo regional de Querétaro como asistente en el área de sistemas, mis funciones consistían en revisar las redes, los equipos, la red interna de entre las varias oficinas de los museos, dar mantenimiento al equipo en general.

Mi segundo trabajo fue durante mis prácticas profesionales, ahí busqué algo más relacionado con el desarrollo de software; buscando en páginas de empleo es que encontré una empresa francesa en Querétaro, que buscaba desarrolladores jr para hacer aplicaciones móviles, y ahí empecé como desarrollador para Android.

En este trabajo estuve dos años, me fue bastante bien la empresa se llama Latin 3G, y aquí venían a trabajar y hacer sus prácticas gente de Francia y de ellos aprendí bastante, traen un nivel muy alto; gente con varios años menos que yo conocían mucho más que yo, en todo; traen un nivel bastante avanzado.

Tu mexicano, ellos franceses ¿En qué idioma se comunicaban?

En inglés, recomiendo ampliamente que de ser posible se aprenda a temprana edad; ya que la mayoría del material está en inglés: tutoriales, artículos, manuales; hay poco material en español, sobre todo para tecnologías; cuando aprendes inglés se abre más el mundo en cuanto a las fuentes de donde puedes obtener el conocimiento; en TI prácticamente todo está en inglés.

Mencionas que te contrataron como desarrollador para Android ¿Lo aprendiste en la universidad?

No, cuando tuve la oportunidad de ser desarrollador móvil yo no tenía la experiencia en desarrollo en nada, y me interesaba el desarrollo móvil porque era de lo más novedoso, así que una semana antes de contactar con ellos me di a la tarea de estudiar todo lo que tuviera que ver con Android, para poder presentar el examen, y en la siguiente semana ya estaba con ellos.

Mi aprendizaje fue prácticamente por internet, en tutoriales, haciendo pequeñas aplicaciones de ejercicios y en un libro que se llama Desarrollo de Aplicaciones para Android, el libro quizá ya no está actualizado, pero sirve como base general.

¿Qué siguió después de esta empresa?

Tuve la inquietud de iniciar como freelance para ver que tanto podía aprender por mi cuenta, para ver que tantas posibilidades tenía; a través de algunos contactos empecé a tener varios proyectos; a mí me ayudó mucho, me parece muy recomendable que la gente se dé la oportunidad de ser freelance de tecnología, porque ahí aprendes mucho más que cuando estás dentro de una empresa, porque al enfrentar por tu cuenta tienes que meterte a profundidad en lo que estás haciendo.

Luego regresé a una empresa y después retorné como freelance de lleno a un proyecto.

Después de tu experiencia como freelance ¿Qué competencias consideras debe contar alguien bajo este formato?

Aparte de ser técnicamente “bueno”, debes de ser responsable con tus conocimientos, tener claro lo que sabes y lo que no; ser paciente, tolerante ante la frustración, estar consciente de que es probable que al cliente puede no gustarle lo que haces y no responderá como tú lo esperas, perseverante en todos tus proyectos.

Debes de aprender a manejar tu tiempo, porque es muy fácil no hacer nada, o dejarlo para después, esto considero es uno de los principales riesgos en que muchos caen, porque se toman muchas libertades con el tiempo y aquí es donde muchos han fracasado.

Estar como freelance es como vivir siempre en el límite, uno busca sus proyectos, designas tus tiempos y por supuesto mientras más rápido, mejor; uno discute directamente con cliente, estar de freelance te puede volver loco, tanta urgencia en todo no es sano.

Estar en este formato me dio idea de lo que es la planeación, organizar tus tiempos, espacios para los diferentes clientes, además de lo técnico.

Cómo freelance ¿Cuántos proyectos como máximo desarrollaste?

De forma simultánea, máximo 7 y mínimo uno, je. Trabajaba al menos unas 6 horas diarias, incluyendo sábados y domingos, lo cual significaba hablar con cliente casi a diario; por suerte no eran aplicaciones tan pesadas, por eso si las pude manejar. En total realicé un poco más de 25 apps como freelance.

¿Cómo te fue en tu retorno al colaborar de nuevo para una empresa?

A mí me gustó mucho sentir la diferencia, fue para bien, porque venir de donde no había limites, a estar en una empresa, todo se tranquiliza; saber que tenía mi quincena asegurada me dio tranquilidad; esa tranquilidad me permitió enfocar toda mi energía en hacer bien mi trabajo y aportar al equipo.

Después de venir del esquema freelance ¿Observaste alguna diferencia entre tú y tus compañeros?

Sí, en cuanto al nivel técnico, porque todo el tiempo estás investigando para los diferentes proyectos; al estar apoyando a una sola empresa estás bajo un sistema, SU sistema y aquí la empresa dicta cómo tiene que ser, cómo debe de funcionar, cómo se debe de ver, cuándo tiene que estar; y como free tu propones como debe de ser.

En tu andar como desarrollador ¿En qué punto nace en ti el interés por iOS?

En mi primer trabajo donde inicié como desarrollador Android, como a los tres meses me cambiaron a iOS y como que estaba muy primitivo y no me gustaba tanto, pero después me gustó demasiado; y a partir de ahí, decidí especializarme en la plataforma de iOS.

¿Qué es iOS?

iOS es el sistema operativo de los iPhone, que es como el Windows de las computadoras, y el Android es para todos los demás teléfonos digamos de varias marcas, la diferencia es que iOS es exclusivo de los sistemas Apple, la ventaja es que Apple tiene muy controlado eso, ellos saben cómo hacen su teléfono físicamente y como hacen el iOS para que sea compatible con el teléfono y uno lo pueda manejar como usuario y  Android pues hay muchas marcas y miles de modelos, Nokia, Samsung, LG, Xiaomi, etc.  que usan Android, la desventaja es que cada uno arma   su propio modelo de teléfono y Android trata de adaptarse a él y ahí es cuando inician los problemas de que algunas aplicaciones no soportan algo porque esa marca de teléfono no lo tiene o cosas de este tipo.

En cuanto a funcionalidad como usuario encuentro mucho más atractivo Android y mucho más limitante iOS,  pero como desarrollador es todo lo contrario, el  iOS  lo hicieron pensando desde un principio en cómo sería, Android por el contrario, es como una plataforma no muy bien planeada e iban improvisando al principio, por eso tiene muchos cabos sueltos, muchas cosas tan complicadas  cosas que no deberían de ser;   cosas muy fáciles de hacer en iOS, en Android no lo son,  en iOS hacer modificaciones no toma mucho tiempo, en Android si,  te quita mucho tiempo y  esfuerzo;  te distraen del desarrollo real de tu aplicación; aparte de que el servicio de asistencia a los desarrolladores es mucho mejor en iOS que en  Android.

A través de tu recorrido como desarrollador iOS ¿Qué diferencias observas del iOS de tu ayer al de hoy?

Los dos han mejorado, iOS antes usaba un lenguaje de programación que es como escribe uno las aplicaciones, el software,  que se llama Objective C, ese  está basado en un lenguaje de los 70´s que lo adaptaron con funcionalidades de los 90´s entonces es como un híbrido extraño, Objective C es poco amigable digamos, es  difícil de aprender ya en estos tiempos porque es “antinatural” por así decirlo, es confuso, por eso la curva de aprendizaje es muy alta; y del 2015 para acá cambiaron su lenguaje, o más bien ya se pueden hacer aplicaciones en un  lenguaje es actual desde el principio, no adaptado que se llama Swift y ese es un lenguaje con el que muchos están familiarizados, ya no es antinatural, es muy intuitivo, ese es quizá el cambio de mayor impacto para los desarrolladores.

¿Cómo percibes el futuro del iOS?

En la comunidad de los programadores nos lo tomamos a broma que ya no encuentran como hacer propositivas las marcas de teléfonos, por

ejemplo, el iPhone que sale con una cámara, después le ponen 2, después son 3 y luego 4, como que se está acabando la imaginación y entonces iPhone ha estado perdiendo un poco de mercado, precisamente por eso, porque las propuestas en los teléfonos se han  limitado al incremento de cámaras, ahí es que mucha gente dice es que Apple tiene que salir con algo mucho más propositivo a parte de las cámaras, como que se tiene que pensar en algo  “fuera de la caja”; fuera de eso le siguen poniendo más capacidad a los teléfonos, más potencia, puedes hacer más cosas con las  aplicaciones, meterle más funcionalidades, realidad aumentada, cosas de esas.

Y en México ¿Cómo percibes el panorama para el mundo del desarrollo TI?

De dos años para acá, he observado un crecimiento inesperado, quizá ustedes en Taltere también lo han observado, de  varias empresas de Estados Unidos buscan y contratan recursos de forma remota, lo que está pasando es que una empresa te puede ofrecer un sueldo muy alto en México que no se compara con el sueldo que le tendría que pagar a alguien  allá, casi casi que lo que te pagan aquí en un mes, es lo que te pagan allá en tres días y parece que ese mercado es el que se está abriendo aquí en México, el de contratación remota y eso permite oportunidades a los egresados.

De acuerdo con lo que me compartes ¿El talento mexicano está preparado para desarrollar un proyecto vendido e implementado para una empresa extranjera?

El éxito depende precisamente del reclutamiento, muchas veces el extranjero espera el mismo nivel de ellos, que es muy avanzado y quiere que conozcas todo lo que se requiere; es un nivel que se puede alcanzar, pero ellos esperan que recién egresado lo tengas y eso no es posible.

Muchos lo tienen y se logra en base al trabajo, al estudio y experimentando por su cuenta, no es cosa del otro mundo, pero al extranjero si tienes que llegar muy bien preparado en tu especialidad para no generar dudas.

Venir de una cultura de trabajo diferente, no mejor, no peor, solo diferente, ¿Hace diferencia?

Culturalmente en cuanto al trabajo si hay una diferencia; te cuento cuando trabajé con los franceses y en el tiempo que no tenía experiencia en iOS y me acerqué a mi jefe inmediato para hacer una preguntar y me responde: –“esa pregunta no te la voy a responder y si me vuelves a preguntar algo que no sea algo tan estúpido como eso”-, me pareció muy grosero y después aprendí que su cultura laboral es así; entendí que tenía razón, eso lo pude haber investigado antes sin preguntar; y precisamente esa parte de mi historia es de las que más me ha ayudado, tener esa proactividad es ese “ok está bien, no sé, pero hay muchas cosas que puedo hacer para saber” y que valgan la pena mis preguntas; aprendí que preguntas hacer y cuáles no.

También es común que te expliquen algo y te pregunten- ¿entendiste? – y si dices que – “no”-, responden – “sino entendiste, es porque no sabes del tema, es porque no estas preparado”-; son personas muy directas y esperan tú 100%, que estés al mismo nivel, en un tú por tú.

Ellos plantean un proyecto, un problema, una funcionalidad y si no tienes respuesta, entonces no les sirves; aquí es común que ante un planteamiento y no se cuente con respuesta, uno pueda decir,” lo voy a investigar y te aviso mañana” y no pasa nada.

Siempre he pensado que haber colaborado de recién egresado para una empresa extranjera cambio mi forma de trabajar, me permitió no estar en mi zona de confort.

He observado que el extranjero tiene la mentalidad de “nosotros estamos aquí, pero podríamos estar en cualquier momento donde está Marck Zuckerberg, podríamos hacer un proyecto tan grande como Facebook o Google en base al trabajo” ellos trabajan para eso, ellos tienen esa mentalidad, ese impulso, para ellos es una propuesta real, en México no se si no estamos acostumbrados o vemos las cosas muy lejanas, que pensar así no se nos hace realista. Ellos sí, quizá por la cercanía con esas empresas, también pareciera que tienen ideas mucho más intrépidas.

Leo, tienes 32 años ¿Cuál es tu experiencia al colaborar con chicos 10 años menos que tú?

Para mí ha sido muy positiva, pienso que al estar tan en contacto con el área de tecnología, ha impulsado que el nivel técnico aumente, esto ha ocasionado que los chavos conozcan más cosas antes, que se especialicen más pronto y sobre todo que se les prenda la chispa de la competencia, porque, así como tú vas avanzando, tu competencia también.

Parece que traen más conocimiento técnico y que agarran más rápido la onda a las cosas y pienso que los chicos que egresan de la universidad ya no se quedan con lo que aprenden en la universidad, sino que también investigan, precisamente porque hay tantas fuentes, creo que investigan mucho más por su cuenta y así conocen mucho más; así que con los que me ha tocado trabajar son mucho más eficientes en ese aspecto.

El rasgo más negativo que percibo en la rama de la tecnología es quizá la pereza de al presentar un proyecto, me explico, como muchas veces el cliente que solicita una aplicación no conoce de código, al final yo te puedo dar una aplicación que funcione y me puede dar la libertad de no hacer un código limpio, y conque tú veas que funcione, yo puedo decir – “ya la armé”- y recibir el pago.

¿Consideras que las universidades están preparando de forma actualizada al estudiante?

Mantengo contacto con el que fue mi asesor de tesis que aún es maestro de la universidad y me ha dicho que en sí el programa no ha cambiado, lo que ha cambiado es que ahora hay una gran variedad de fuentes de información, ahora si quieres saber sobre un lenguaje existe la posibilidad muy real de preguntar una duda a quien creo ese lenguaje y quitar de en medio al profesor, que no sabes si te enseñó bien o mal.

Lo que observa mi profesor es que ahora los chavos se ponen más al brinco e identifican más rápido un error de parte del profesor y se lo hacen saber.

Frente a los encargados de los programas educativos ¿Qué propondrías?

Es curioso porque en mi carrera lleve como tres grados de contabilidad, dos de economía, recursos humanos, administración financiera, administración de empresas y como que no te suena a que es informática, uno espera que al salir seas capaz de hacer programas o de reparar computadoras o cosas así; pareciera que van desfazados las necesidades de afuera con lo que están ofreciendo las escuelas.

El año pasado me interesó ver desarrollo móvil y revisé en varias escuelas los programas e identifiqué que no lo están presentando bien, o sea dan lo que está de moda y de forma muy superficial y seguro al salir te vas a dar cuenta que lo que sabes es solo lo de “encima” por así decirlo.

Parece que en las escuelas les falta investigación para sondear las necesidades reales del mercado. Por eso muchas veces los técnicos salen mucho mejor preparados que los profesionistas

En mi experiencia un egresado sale con una idea y a partir de dos años de estar trabajando en el área, como que ese egresado ahora sí está listo para trabajar en el área, cuando se supone al salir debería de estar listo.  Por eso a veces pienso que la escuela parece no acabar nunca.

¿Cuál es el proyecto más complicado que has hecho?

No tengo uno en específico, pero siempre los más difíciles son aquellos en los que no se tiene bien definido hacia dónde va el proyecto y mucho menos el cómo. Se pierden muchos recursos en proyectos que trabajan a base de la improvisación. Creo que es muy recomendable tener definido el propósito y el camino que debe tomar un plan de trabajo para anticipar puntos débiles del desarrollo.

¿Cuál es el proyecto del que más sientes orgullo?

Un proyecto para iOS en el que sigo trabajando. Se trata de una app para descargar mapas a tu iPhone y realizar búsquedas de lugares y recomendaciones offline. Me gusta mucho porque es un proyecto que inicié con la intención de tomar algo muy retador para mí y con el que he aprendido mucho.

Leo como padre ¿Qué consideras ayuda al niño a conservar la curiosidad?

Alentando al niño en su sueño de ser “astronauta”, el “astronauta” no nació siendo “astronauta”, con empeño y trabajo lo logró.

Creer y crear su propio camino, ayudándolo a probar sus propios sus límites, así se fabrican los “astronautas”, creyendo y porque transgredieron el “no”.

Al recién egresado

La cualidad que considero más importante sería la curiosidad para investigar, que busqué pasar sus límites, seguir buscando las fuentes, no pensar “el trabajo que estoy haciendo es lo mejor que puedo hacer y no voy a poderlo hacer mejor” cuando siempre hay formas de mejorarte a ti mismo; yo como desarrollador iOS pienso “las capacidades que no estoy explotando ahora, las está explotando alguien más, alguien más puede estar donde yo estoy ahora”,  más en esta época donde hay personas que ni siquiera fue a la escuela y son desarrolladores excelentes, precisamente por ser autodidactas.

Tener siempre la intención de mejorarte a ti mismo sin estar esperando que nadie te esté empujando