Ninguna tecnología lo hará todo por usted. Tampoco lo hará cualquier conjunto de tecnologías, si quieres ser un profesional independiente . Dicho esto, sin embargo, esto es lo que te recomiendo que aprendas, evaluado qué tan completo / ciertamente necesitas aprenderlo, dependiendo de si quieres ser un desarrollador de back-end (o no web), front-end o completa pila:
- HTML: medio si back-end, alto si full-stack o front-end. Incluso si afirma ser un rezagado, probablemente se le pedirá que genere páginas web; probablemente no se te llame para que se vean bien.
- JavaScript: bajo si es back-end, alto si es front-end, probablemente pueda salirse con la suya y reclamar full-stack. Una vez más, incluso si es back-end, es posible que se te solicite que realices algunos JS ligeros, o incluso que realices modificaciones menores en una aplicación front-end (ver más abajo).
- CSS: lo mismo que para JavaScript, excepto que puede evitar ignorarlo por completo si se especializa en el back-end.
- Procesamiento de solicitud HTTP: alto. Si desea trabajar en la web, aprenda cómo funciona la web.
- Diseño: no es necesario si es back-end, mediano para full-stack, alto para front-end.
- Bases de datos, que incluyen tanto relacional (incluido el aprendizaje de SQL) como no relacional (también conocido como NoSQL): alto si es back-end o full-stack, no es necesario si es front-end. Idealmente, siéntete cómodo con uno de cada uno, como Postgres y Mongo.
- Algún tipo de marco de aplicaciones web (por ejemplo, Ruby on Rails, que recomendaría) y su lenguaje (por ejemplo, Ruby): ídem. Desea aprender el idioma real para poder implementar una lógica más compleja que la que proporciona el marco. Sin embargo, puede acortar el paso de “lenguaje” haciendo Node.js como su marco de back-end.
- Algún tipo de marco de aplicación web front-end (por ejemplo, Angular, Ember, React, etc.): alto si es front-end o full-stack, no es necesario si es back-end.
Hasta aquí todo bien. Cualquier bootcamp decente puede enseñarle todo eso a un nivel razonable en unos pocos meses, o puede aprenderlo por su cuenta en menos de un año. Pero ahora dejamos el ámbito de la tecnología y nos adentramos en las cosas adicionales que necesitará para ser un profesional independiente , o mejor aún, realmente merece ser llamado consultor . Estas cosas definitivamente tendrá que aprender en un grado bastante alto, sin importar qué tipo de profesional independiente sea, no solo desarrollo web front-end, back-end o full stack, sino incluso un campo completamente diferente de un desarrollador :
- Negocios . Eso incluye todos los aspectos de la gestión de un negocio de una sola persona, como marketing, contabilidad, servicio al cliente, etc. Debe aprenderlos al menos lo suficientemente bien como para evaluar a quién externalizar, si no lo hace usted mismo.
- Comunicación. No solo tendrá que hacer el trabajo real, y el trabajo comercial , que implicará estas habilidades, sino que para ser un profesional independiente muy exitoso, tendrá que desarrollar su autoridad percibida , como enseñar, escribir libros o artículos o publicaciones de blog o respuestas de Quora, o hablando en grupos de usuarios y conferencias, etc.
- Liderazgo, especialmente de ti mismo . No tendrás un jefe parado sobre ti; probablemente ni siquiera tengas un cliente parado sobre ti. Tendrás que mantenerte encaminado y motivado, no hacer tonterías y mirar televisión en tus jammies todo el día. (A menos que de alguna manera domine el “precio de valor” tan bien que resuelva problemas costosos de una manera que le tome muy poco tiempo. Si es así, probablemente no seguirá siendo un problema costoso por mucho tiempo).
- Habilidades de otras personas. Tendrá que tratar con clientes y clientes potenciales, a menudo directamente. Debes aprender cómo hacer que te amen, no cómo hacerlos enojar, no importa cuán equivocados y estúpidos sean. 🙂
- Autoeducación continua. No tendrás un jefe que te asigne a proyectos que usen cosas que puedas aprender, y mucho menos que te envíen a un entrenamiento. (Incluso en un “trabajo regular”, eso es bastante raro. He dejado varios trabajos por carecer de eso.) Debes mantener tus habilidades afiladas, desarrollar nuevas habilidades (especialmente en un campo que cambia tan rápido como la tecnología) y calcular qué nuevas habilidades conseguir pronto.
- Todas las leyes aplicables de su jurisdicción. Cómo iniciar y registrar una empresa, mantener ese registro actualizado, obtener todas las licencias y permisos necesarios, presentar sus impuestos, etc.
- También necesitarás mucha confianza . Los clientes prácticamente pueden oler la desesperación. Lo mejor viene no solo de saber que tiene grandes habilidades, sino también de una red de seguridad financiera (también muy recomendable), como una gran cantidad de ahorros y / o un cónyuge bien empleado. (Por suerte, tengo ambas cosas. Incluso tiene un buen seguro de salud para los dos). De lo contrario, es posible que tenga que preocuparse por la clásica montaña rusa financiera de la fiesta / el hambre, ya que sus ingresos serán muy inestables durante al menos los primeros años. ; muchas personas simplemente no tienen estómago para eso. Probablemente no tengas mucha confianza al principio, pero eso vendrá con experiencia. Mientras tanto, puedes aprender a fingir eso, además de aprender comunicación y liderazgo, a un precio muy bajo, en un ambiente divertido y de apoyo, de Toastmasters International.
¿Suena duro? Está. Es por eso que la mayoría de las personas no son autónomos. 🙂
- ¿Cuáles son las mejores prácticas para un desarrollador independiente?
- ¿Por qué el trabajo independiente (a tiempo completo) no es muy común en China?
- Estoy preocupado por las nuevas tarifas de Upwork. ¿Qué otros sitios web independientes puedo buscar?
- ¿Puedo trabajar como freelance los fines de semana además de mi trabajo a tiempo completo?
- ¿Necesito la identificación de contribuyente EIN de EE. UU. Para completar correctamente un formulario W8-BEN?