Si ya has terminado de estudiar programación y sabes crear algunas aplicaciones, quizás creas que la única forma de ganar dinero es trabajando para una empresa de desarrollo.
Pero estos días también hay otras opciones que puedes considerar si quieres seguir siendo un solo desarrollador y mantener un horario flexible mientras ganas dinero.
Por supuesto, el no trabajar para una empresa también tiene desventajas, como no tener un pago fijo asegurado cada mes, no saber si en los próximos meses seguirás teniendo trabajo, o simplemente te gusta la simplicidad de recibir órdenes en lugar de tomar decisiones propias.
Pero para el tipo de persona que quiere la libertad de evitar un horario laboral fijo o busca ingresos extras, hay 3 opciones que pueden usar para mantener ingresos, mientras sigues trabajando como un solo desarrollador.
Empecemos hablando de la opción más popular.
1. Freelancing
No sé ustedes cómo lo perciban, pero el término freelancing a este punto está bastante quemado. Y es porque en algún momento todo el mundo lo usó como una forma de venderte que era la libertad financiera o algo así, y ahora suena mal mencionarlo.
Pero a mi modo de ver, ser Freelance no es una libertad financiera, porque si quisieras dinero seguro, trabajarías para una empresa. Es una forma de trabajar con flexibilidad de tiempo, es decir, poder saber que puedes trabajar en horarios distintos o desde cualquier lugar, que en la práctica tampoco es como se cree, de eso se trata ser freelance.
Ahora, esta es la forma más típica de ganar algo de dinero siendo un solo desarrollador. Puedes aprender a crear sitios web básicos, diseños UX/UI, aplicaciones, y a partir de ahí ofrecer tus servicios como desarrollador freelance.
El tema de aprenderlo es relativamente sencillo de lograr, con tantos videos, cursos, libros y contenido en general. Lo complicado es conseguir clientes, y para esto hay dos opciones:
- La primera es usar una plataforma que ya te permite captar clientes. Aquí están plataformas como Upwork, Fiverr, Workana y similares que te permiten crear un perfil y empezar a ofrecer tus servicios. El problema es que aquí compites directamente con otros freelancers que quizás ya empezaron, tienen reviews, historial y una reputación, lo que te obliga a ofrecer precios más bajos o mejores trabajos al mismo valor, además de que la plataforma se queda con una parte de tus ganancias.
- La segunda es crear tu web de portafolio, mostrando todos tus proyectos y colocando un contacto, ya sea correo, teléfono, etc., y usar redes sociales para obtener clientes. Esto lleva más trabajo, pero puede convertirte en un freelance exitoso. Aquí creas una web donde ofreces tus servicios, y usando redes sociales y anuncios tratas de captar clientes.
Ahora, la web de portafolio que te menciono está enfocada a clientes, es decir, muestras tu trabajo de manera que alguien también quiera ese tipo de proyectos. No es lo mismo que una web de portafolio donde muestras código o algo que está más enfocado en que alguien te contrate como programador, porque si le muestras eso a un cliente, no te sorprendas si no funciona.
Pero en ambos casos, el proceso de empezar como freelance es lento. Así que, a menos que ya estés estudiando y estés armando tu perfil de freelance mientras estudias, o ya estés trabajando en algo más y estés usando el freelance como una forma de obtener ingresos extras para eventualmente moverte allí, muchos no aguantarán el estrés de empezar con muy poco o nada de pago. Es decir, esto es una apuesta arriesgada.
En un punto, yo empecé buscando clientes de forma física, usando sitios y creando anuncios en la web, como en redes sociales, usando ahorros para aguantarme unos meses y confiando en que funcionaría.
El proceso de buscar clientes es todo un tema, y es por eso que incluso hay empresas de marketing que consiguen clientes a empresas de desarrollo.
Es decir, una empresa casi hace las mismas tareas que un freelance, solo que con muchos más pasos y con más personas trabajando, lo que hace que el costo aumente y que el desarrollo sea más caro de lo que debería ser estos días.
Un desarrollador freelance puede llegar a hacer lo siguiente:
- Desarrollar sitios o aplicaciones web.
- Desarrollar aplicaciones móviles.
- Desarrollar templates, es decir, solo el código HTML y CSS o también plantillas para sitios como WordPress y venderlos en plataformas como:
- Hacer diseños UX/UI.
En cuanto a los ingresos, estos siempre dependen de la cantidad de clientes. Por ejemplo, si tomas 3 proyectos al mismo tiempo por un horario de 8 horas diarias, y suponiendo que cuando empiezas cobras $400 por mes por proyecto, ya tendrías un sueldo de $1200. Y si vas mejorando, puedes aumentar el precio conforme a la calidad de tus proyectos. Pero el problema no es el precio, es encontrar clientes, y se vuelve más complicado cuando los proyectos no continúan o no funcionan, y tienes que seguir con más clientes o proyectos más complicados.
A pesar de todo esto, puede ser una opción para algunos, sobre todo si tienes la perseverancia y sigues mejorando.
2. Desarrollo de SaaS
Un Software as a Service o SaaS es uno de los proyectos más populares actualmente, y puede ser llevado por un solo desarrollador.
Básicamente funciona así: buscas un problema muy específico que puedes resolver creando algún tipo de aplicación o web, colocas un método de pago, lo promocionas y listo. Ahora tienes una aplicación que genera ingresos por sí misma, mientras tú haces otras cosas. Es decir, este es el ingreso pasivo de los programadores.
Suena simple, pero todo esto lleva un proceso que toma tiempo, y muchas veces o alguien ya resolvió el problema que encontraste, no llegaste a terminar tu proyecto o lo planteaste mal desde un inicio, y hay muchas variables que pueden hacer que tu proyecto nunca despegue.
Por esto, muchos desarrolladores lo llaman un side hustle, un proyecto secundario, porque si falla, pueden continuar con su trabajo principal. Y muchos lo intentan, pero pocos lo logran. De hecho, el side hustle tarde o temprano termina siendo o un proyecto principal o simplemente lo dejas de lado, y la mayoría termina en esta última opción.
Estos proyectos no tienen que ser aplicaciones web o móviles, también pueden ser extensiones para navegador que desarrolles y que resuelvan una tarea específica, o pueden ser extensiones de editores como Visual Studio Code o JetBrains que faciliten la vida a un desarrollador, o servicios o plugins que se integran con software para extenderse, como WordPress, Notion, Odoo, y otros CMS, para que un usuario pueda hacer más con lo que viene en la plataforma.
Algunos ejemplos de SaaS, extensiones o plugins exitosos son:
- NoteForm, que permite integrar formularios en Notion.
- WP Courseware, un plugin que permite vender cursos en tu sitio creado con WordPress.
- FormCraft, un plugin de WordPress para crear formularios.
- Remoteok, un sitio para encontrar trabajadores en remoto.
- Stripo Email, un creador de plantillas para emails.
- Analyzify, un sitio que te permite conectar tu tienda de Shopify con múltiples plataformas de análisis como Google Analytics, Microsoft Bing, Facebook Pixel, y TikTok Pixel.
Aunque hay una lista mucho más grande por supuesto de aplicaciones de este tipo.
Como puedes ver, estos software no son aplicaciones totalmente propias, sino que se basan en plataformas ya existentes, y sus clientes son la gran base de usuarios de estas plataformas.
Otra opción es crear extensiones para editores de código en donde los clientes son otros programadores. Por ejemplo, software como:
- Postman, que empezó como una extensión para Chrome.
- Extensiones como Console Ninja, que ofrecen un plan para desarrolladores.
- GitLens, que ofrece mejoras en las funciones de Git en VSCode.
La dificultad de este tipo de desarrollos es que tienes que estar en búsqueda constante de ideas para resolver problemas, implementarlas y monetizarlas para recuperar tu inversión de tiempo.
Tienes que hacerlo rápido antes de que una aplicación popular lo resuelva, y siempre tendrás la duda de si realmente gustará tu solución a usuarios reales. Sin embargo, hay desarrolladores que tienen tan asimilado este proceso que lo hacen constantemente, y puede ser muy beneficioso si aprenden a implementar soluciones de forma continua. A esto también se refieren como Indie Developer.
Otra opción es crear productos o servicios enfocados a empresas.
Por ejemplo:
- Software que transforma servicios SOAP en API REST. Esto es para servicios de facturación donde los gobiernos ofrecen la facturación, pero el servicio es tan complicado de usar que muchos ofrecen una API REST que facilita su uso.
- O quizás sabes cómo crear un modelo inteligente, lo despliegas y cobras a otros desarrolladores por el uso de tu API. Aquí puedes usar plataformas como RapidAPI para dar a conocer tus APIs.
La idea principal de este tipo de desarrollador es que siempre hay problemas que necesitan ser resueltos, y si puedes ofrecer una solución simple a un precio módico, pues ya has empezado.
3. Cursos y tutoriales
Hasta este momento, aún no he vendido un curso como tal, pero sí sé el proceso que lleva crearlo, y esta es otra forma en la que muchos desarrolladores obtienen ingresos. Algunos se dedican exclusivamente a esto, por ejemplo, muchos de tus creadores de contenido favoritos monetizan de esta manera. Crean sus cursos y los videos que publican les permiten seguir haciéndolo porque las personas compran esos cursos.
Y quién sabe, quizás alguno de ustedes también puede dedicarse a eso, o tenga vocación por enseñar, o le guste aprender sobre código y darlo a conocer. Esta puede ser otra forma de monetizar y seguir siendo un solo desarrollador.
Aquí es el mismo tema de siempre, puedes usar plataformas como Udemy, donde accedes a una gran base de estudiantes, pero a cambio de una parte de tus ganancias, y siempre te van a controlar todo lo que publiques. O puedes desarrollar tu propia plataforma, promocionarla con tus propios medios y hacerla crecer por ti mismo, usando redes sociales, publicidad o creando contenido viral.
Dado que hay mucho contenido actual de programación y temas similares, el mercado también está saturado de temas como programación básica. Por lo tanto, una opción válida es enfocarte en un nicho, es decir, crear cursos de solo un tema y volverte experto en ese tema. Por ejemplo, un curso solo de Java, solo móvil, y así, para demostrar tu experiencia en ese tema, y a partir de ahí ir creciendo.
Aunque algo que debes tener en cuenta es que, como experiencia personal, esto lleva más que solo aprender a explicar cosas. También debes aprender a editar videos, audio, hacer un guion, o una estructura de tu curso, y todo eso es un trabajo en sí mismo, por lo que considera que te puede tomar bastante tiempo al inicio para poder arrancar. Aun así, vale bastante la pena si es algo que te gusta.
Conclusión
En fin, como puedes ver, hay varias opciones para poder mantenerse como un solo desarrollador:
- La opción de freelance está bien para empezar, y si lo consigues, en algún punto puedes pasar de trabajar solo a trabajar con otros desarrolladores, y esto se convertiría en una agencia de desarrollo.
- Desarrollar SaaS constantemente puede ayudarte a entender cómo llevar quizás un negocio o convertirlo en una startup.
- Y por otro lado, si no tienes mucha experiencia creando código, también puedes crear cursos básicos y venderlos en plataformas como Udemy, o si eres muy experto en un tema, ofrecer un curso sobre un tema difícil de dominar.
Finalmente, estas son solo opciones adicionales para los que quizás buscan algo más que solo trabajar en una empresa. No crean que son fáciles, pero si te gusta mantener un horario flexible, trabajar desde cualquier lugar y disfrutar escribir código más allá de solo recibir un salario por eso, esto también es un apasionante modo de vivir del desarrollo.
Y si tienen otras opciones que quieran compartir sobre cómo vivir del desarrollo, pueden dejarlas en los comentarios. ¡Nos vemos en un siguiente video!