¿Cómo llegar a ser desarrollador mobile freelance? Descíbrelo en este post con Brais Moure. Un KeepCoder que ahora goza de mucha popularidad en el mundillo del desarrollo, en parte gracias a su canal de Youtube.
¿Por qué decidiste estudiar programación?
Creo que la gente que me conoce bien me definiría como una persona a la que siempre le han gustado “los ordenadores” y además todo lo friki (con todo el orgullo del mundo).
No tengo claro si en mi vida existió un momento concreto en el que decidí que la programación era lo mío, en realidad, mi primera opción era la de convertirme en una estrella del Rock (sí, soy un músico frustrado 😂).
Bromas a parte, creo que hace unos 23 años (cuando yo tenía 7 u 8 años), desde que vi por primera vez el Amstrad CPC 464 de mi vecino (en ese entonces ya era un ordenador obsoleto) descubrí que la informática era algo que sobrepasaba mi capacidad de entendimiento de lo tangible.
El poder escribir instrucciones, que una máquina era capaz de interpretar, llamaba mi atención de una manera que solo muchos años después comprendí. A este instante comenzaron a unirse otros como mi primer contacto con MS-DOS, el iniciar Windows 95 o incluso flipar cuando vi la cabeza de Mario en 3D en Nintendo 64.
En resumen, que cuando me di cuenta, era un chaval pegado a un ordenador intentando trastear con la poca información que podía conseguir, y teniendo que reinstalar el S.O. cada pocos días por culpa de llegar a puntos de no retorno.
Creo que la unión de todas esas vivencias (y muchas otras) me llevaron poco a poco a creer que la programación podría ser esa vocación profesional que, muchas veces, tanto cuesta encontrar. La verdad es que en mi caso creo que he tenido suerte, ya que cada día me divierto más programando.
¿Cuáles fueron los primeros pasos que diste para formarte?
Antes de comenzar a estudiar de forma oficial, ya había intentado chapucear con HTML, PHP, JS o Visual Basic. Creo que me ahorré una sorpresa con el que muchos estudiantes se encuentran cuando ven por primera vez lo que significa programar hoy en día.
Habiendo pasado por Grado Superior e Ingeniería, mi percepción (mía y solo mía, como dice Gollum) es que, fuera de conseguir una buena base y una manera de pensar y afrontar resolución de problemas, gran responsabilidad recae en uno mismo para aprovechar o no esa formación.
Creo que la programación es un mundo con un ritmo frenético, en el que cuanto antes debemos aprender que únicamente con trabajo diario constante, y teniendo presente que no podemos acomodarnos de por vida en una tecnología, podemos llegar al éxito.
De todas formas, no todos son inconvenientes. Hoy en día somos unos privilegiados dada la cantidad de fuentes de conocimiento de calidad que tenemos online.
¿Sigues formándote a día de hoy? ¿Qué estudias? ¿Cómo?
Volviendo al punto anterior, veo esencial el no desconectarse nunca del aprendizaje, sobre todo si eres un culo inquieto. Siempre que me es posible, intento seguir las noticias relacionadas con el medio y los avances en tecnologías en las que estoy interesado.
Creo que el sentimiento por compartir conocimiento del sector informático es uno de nuestro pilares más importantes, y lo he convertido en una de mis principales fuentes de aprendizaje, hasta tal punto que he creado hace unos meses un canal de YouTube para compartir yo mismo mi propio conocimiento.
A parte, intento formarme con cursos y tutoriales. Durante 2018 (de principio a fin, y algo más) cabe destacar mi formación en el Bootcamp Mobile que el propio KeepCoding imparte, y en el que pasas por todos los “stacks” que conforman al full-stack developer de tecnologías mobile.
Sobre cómo estudio, creo que solo me planteo formaciones que sean online, principalmente por 2 motivos:
- Flexibilidad de horarios. Asisto a clases cuando mi tiempo así lo permite.
- Amplísima oferta y de mayor calidad. Creo que la enseñanza online especializa los conocimientos y acabará derrocando a cierta “titulitis” frente al conocimiento.
¿Cuáles son tus herramientas/lenguajes predilectos? ¿Por qué?
Por experiencia, Java ha sido durante muchos años mi lenguaje predilecto. Sí es cierto, que poco a poco me parece que se ha quedado atrás frente a muchos otros con capacidades funcionales, reactivas. nativas…
Actualmente Swift es mi lenguaje favorito, comencé a trabajar con él desde su versión 1 y, a pesar de todos los dolores de cabeza producidos por su rápido versionado, se ha convertido en mi día a día al descubrir su gran versatilidad y potencia.
Como programador mobile que soy, Kotlin me tiene también maravillado. Como tarea, tengo pendiente mejorar en JavaScript (soy terrible actualmente), ya que lo veo como uno de los mejores y versátiles del mercado.
¿Qué lenguaje recomendarías para comenzar a programar?
El primer lenguaje que me enseñaron fue C, entiendo el valor que aporta conocer que existen punteros o reservas de memoria, pero creo que la industria de software mayoritaria actual no tiene eso en cuenta (solo a nivel muy teórico o a niveles muy especializados).
Creo que Java es una buena opción, ya he dicho que ha sido uno de mis lenguajes favoritos. Con él aprenderás POO y podrás realizar gran cantidad de desarrollos multiplataforma.
También creo que puede generar una base sólida para afrontar prácticamente cualquier tipo de lenguaje. Básicamente, si sabes hacer un “for” en Java, y tienes claro para lo que sirve, tienes el 90% del camino andado para reproducir ese mismo código en otro lenguaje (aunque no tengas ni idea de la nueva sintaxis).
Al final, mi percepción es que el programador bueno es el que tiene claro el camino óptimo para llegar a una solución, no el que conoce un lenguaje concreto de principio a fin. Aunque muchas veces estas 2 figuras puedan ser una sola.
¿Qué características son necesarias para convertirte en un buen programador?
Lo primero, que te guste programar, es más, que te divierta hacerlo.
Segundo, no descuidar nunca tu formación. Creo que nunca sabemos lo suficiente sobre un lenguaje, tecnología, arquitectura…
Tercero, no perder hacia donde tiende el mercado. En mi opinión, un buen programador tiene que saber nutrirse de los caminos que va tomando el mercado a lo largo de los años (cada vez más rápido) y saber reciclarse constantemente.
Por último, no tener amigos ni familia, que el día dure 40 horas y que el estado nos subvencione café (es broma, más o menos 😂).
¿Qué es lo más guay que has programado?
Tengo la suerte de programar diversos productos y muy diferentes entre ellos.
Guardo especial cariño a mi primera app, GoKeep (ya no está disponible), la encargada de abrirme paso en le mundo del desarrollo mobile y reconducir mi carrera como programador.
También pude dedicar 1 mes completo a cumplir uno de mis sueños, crear un juego, se llama Speedy Whales. He llegado a crear 3, pero este es mi favorito.
Pero si soy honesto, mi orgullo queda reservado a Mr Jeff, startup de la que tengo la suerte de formar parte como desarrollador iOS y que me descubrió el mundo del emprendimiento en su máximo exponente.
Cuéntanos un poco sobre tus proyectos actuales. Mouredev, Pilbeo…
MoureDev ha sido la marca comercial en la que me amparado como desarrollador mobile freelance. No es más que mi ilusión por crecer como desarrollador dentro de la industria del software.
En 2014 publiqué mis primeras apps propias, comenzando a percibir mis primeros ingresos de las tiendas de Apple y Google. Desde ese momento, comencé a dedicar todo mi tiempo libre a formarme (ahí Fernando Rodriguez, CLO de KeepCoding, ha tenido un papel muy importante) y descubrir el mundo de la programación mobile mientras trabajaba en una multinacional como arquitecto de software.
Es ya cuando el 1 de marzo de 2015 decido abandonar mi trabajo y dedicarme “fulltime” a MoureDev, emprendiendo carrera como desarrollador mobile freelance.
A día de hoy, por dar algunos números, he finalizado más de 60 proyectos de empresas de España, Estados Unidos, México, Bélgica y Australia, superado el millón de descargas en apps, llegado a número 1 de descargas en 34 países y bebido más de 5840 cafés.
En mi web cuento todo esto en detalle.
Mi otro gran proyecto es Pilbeo, startup que he cofundado en 2016 junto con 2 personas más y que se encarga de digitalizar el transporte de equipajes en el Camino de Santiago. Hemos sido la primera empresa en crear una experiencia 100% online.
Desde nuestras apps o web, puedes planificar el transporte de tu equipaje día a día, punto a punto a lo largo del Camino.
Actualmente, hemos transportado más de 20.000 mochilas a través de 3000 establecimientos (albergues, hoteles…) a lo largo de 370 localidades.
Puedes entrar en pilbeo.com para conocer más.
¿Qué es lo mejor y peor de ser desarrollador mobile freelance? ¿Cómo te organizas?
Para mí, ser freelance tiene muchas más cosas buenas que malas. En mi caso me ha permitido realizarme como profesional más allá de lo que había imaginado nunca. Puedo vivir donde quiera, gestionar mi tiempo de una forma más cómoda, trabajar en proyectos propios y de otras empresas de forma simultánea (sintiendo como mío el producto), tomar decisiones de peso y llevar a la práctica cada cosilla nueva que voy aprendiendo día a día.
Por supuesto, tiene cosas negativas, las jornadas pueden ser maratonianas, los clientes salirte rana y la soledad hacer mella. Pero nada que con el tiempo uno no pueda mejorar. Hay que aprender muy bien a gestionar el tiempo y las planificaciones, decidir si un cliente te conviene en base a tus ideales de empresa y procurar entablar relaciones aunque sean a distancia.
Volviendo sobre el tema de la organización, intento ser muy cuidadoso con las planificaciones y el trabajo que puedo abarcar. Me gusta definir cuales van a ser mis tareas a grandes rasgos, con todo el margen de tiempo que me sea posible.
Siempre acabo mi jornada dejando reflejadas todas las tareas que voy a llevar a cabo al día siguiente, contando que hay otras que surgirán “sobre la marcha”.
Para llevar a cabo esta gestión me apoyo sobre todo en el Email y las apps Trello y Todoist. No dejo nada sin reflejar como tarea, sea un trabajo que me lleve completar horas o simples segundos.
Trabajo casi siempre en remoto, aunque a veces me desplazo a las oficinas de mis clientes. Debido a que paso muchas horas en mi “oficina”, he intento generar el ambiente más cómodo y productivo posible: buena silla, 2 monitores de 27 y 24 pulgadas, mi batería eléctrica (la de tocar), cómics y un montón de frikadas, vamos, la oficina de mis sueños 😂.
¿Escuchas música cuando programas? ¿Qué grupos, cantantes, estilo?
Sí que escucho música, dependiendo de la tarea que esté realizando y la concentración que necesito, varío en el estilo y el tipo. Me gustan mucho las bandas sonoras (tengo la teoría que con la epicidad del “El Señor de los Anillos” no hay errores en producción), música de los 50 hasta la actualidad, desde soul o blues a metal, desde James Brown a Iron Maiden (por nombrar conocidos). Últimamente estoy escuchando muchísimo a Blues Pills, Greta Van Fleet, Prophets of Rage y Morgan (buenísimos! 🤘).
Pero después de esta parrafada, lo que más escucho programando son podcasts, aprender de los mejores, divertirme o todo a la vez ¿qué más puedo pedir? Cuánto le debo a Ivoox (a ver si tienen una oferta de empleo para desarrollador mobile 😜)
Por nombrar algunos podcasts:
- La Órbita de Endor (ellos son los culpables de mi afición a los podcast).
- La Manzana Mordida.
- TODOPODEROSOS, Cinemascopazo, Aquí hay dragones… (la fanquicia al completo).
- Apple Coding.
- La Vida Moderna.
Entre muchos más…
¿Nos recomiendas un libro, un cómic, una peli y una app?
- Libro: Clean Code de Robert C. Martin (el Martin bueno, no como ese de los dragones 😇).
- Cómic: Lobezno: Honor (menudo equipo al guión y los lápices).
- Peli: War Games (como si yo fuera cierto personaje de Ready Player One).
- App: Whakoom (me plantee hacer algo así hace ya años, menos mal que aparecieron ellos. Otra empresa con la que me volvería loco si pudiera trabajar).
Pues eso es todo o casi…
Puedes encontrar más de Brais Moure en todos estos sitios:
Brais Moure es un caso increíble, un alumno y un profesional como la copa de un ent, un ejemplo para todos los que quieren dedicarse a este sector del desarrollo de software. ¿Te gustaría ser desarrollador mobile como él? Prepárate para ser un Full Stack Mobile Developer con nuestro Desarrollo de Apps Móviles Full Stack Bootcamp. La IX edición arranca en mayo 2019.