¿Cuál es la mejor manera de empezar una carrera como programador/codificador/desarrollador de software? ¿Puedo omitir algunos de los lenguajes de programación «antiguos» como C++ y saltar a aprender otros más nuevos como Ruby o Swift? Tablero de arte

Aquí están mis consejos, todavía en progreso y sin ningún orden en particular:

  1. Tenga unos 6 meses de ahorros en el banco antes de dejar su trabajo diario. Cuando te quedes sin dinero (o casi) entrarás en pánico y aceptarás trabajos peor pagados que pueden no tener nada que ver con tu pasión. Si puedes gestionar el flujo de caja, puedes ser un trabajador autónomo.
  2. Haz amigos. Es una gran sensación cuando alguien que te conoce y conoce tus habilidades te recomienda para un trabajo. Encuentra un mentor. Únete a grupos de usuarios. Sé amable con tus clientes. Un antiguo compañero de trabajo me puso en contacto con un grupo de consultoría, que ha funcionado muy bien. Todas esas cosas sensibleras y sociales tienen su lugar cuando estás construyendo una práctica de consultoría.
  3. Entiende la contabilidad. Si no le gusta hacer el balance de un talonario de cheques, tendrá que encontrar un buen contable o tenedor de libros que sea más eficiente en eso. Aunque lleve usted mismo todos los registros, recibos y envíe las facturas, comunicarse eficazmente con su profesional de la fiscalidad le ahorrará mucho dinero cada año. Su contable le explicará la diferencia entre S-Corp, LLC, sociedades y otras formas contables y legales. También tomé cursos de contabilidad y finanzas corporativas cuando soñaba con obtener un MBA. A mitad de mi MBA me di cuenta de que mi vocación en la vida era trabajar con bases de datos y formatos de archivo, no con intereses y depreciaciones.
  4. Entender los contratos. Tengo un abogado amigo de la familia que me creó una sociedad anónima. Tomé una clase de contratos como optativa en la universidad. También he pasado por un divorcio y he gestionado el patrimonio de mis padres. Estoy familiarizado con el sistema legal más de lo que quiero ser.
  5. Conoce tus cosas en frío. Has enumerado muchas cosas buenas en tu descripción, como C++ y Python. No sé esas cosas, pero sí sé Oracle PL/SQL y Unix shell scripting, y he estado haciendo esas cosas durante más de 20 años. Leo todo lo que puedo. He aprendido Powershell, usándolo en mi proyecto actual. Te convertirás en un experto en más cosas a medida que agregues proyectos.
  6. Ve con el mercado. Empecé mi carrera como programador de FORTRAN en Vax/VMS. A nadie le importa. Estoy bien con VB en Visual Studio. Aprender C# probablemente sería una curva de aprendizaje demasiado empinada para mí. Conozco mis limitaciones. Aprender Oracle APEX podría ser un mejor uso de las neuronas que me quedan.
  7. Dar consejos gratis. Hago un trabajo no relacionado con la facturación para una organización benéfica que requiere MySQL y PHP. Estoy aprendiendo nuevas habilidades y ellos obtienen un sistema de trabajo que necesitan desesperadamente. Eso me hace sentir bien. Cuando un amigo me pide ayuda que me lleva menos de 15 minutos, simplemente respondo a la pregunta. Si ese consejo me va a llevar más de 4 horas de trabajo, es hora de sacar la hoja de tarifas.
  8. Entiende tu valor. Los asesores presenciales en Estados Unidos cobran más que los que envían el trabajo por correo. Si bajo de mi piso, no podré cubrir mi hipoteca y mi seguro médico. Tengo que gestionar mi tiempo de trabajo y ser capaz de decir no a aquellas actividades que me impidan pagar las facturas.
  9. Ser flexible con los viajes. Estoy dispuesto a volar a Nueva York desde Michigan semanalmente para estar en esos proyectos mejor pagados.

Supongo que lo que me ayudó ahora, décadas después, es que me metí en proyectos de programación interesantes cuando todavía estaba en el instituto y la universidad, en los días de las perforadoras de tarjetas y el papel plegado en abanico. No creo que hoy pudiera conseguir trabajo en COBOL, ensamblador S/360 o Pascal, ni tampoco querría hacerlo. Pasé años trabajando como empleado haciendo implementaciones y soporte. Ahí es donde me construí una buena reputación.

Cuando se redujo mi departamento hace dos años, se lo hice saber a mis amigos. Publiqué en LinkedIn cuándo estaría disponible para un nuevo trabajo. Viví de mi indemnización y de mis ahorros mientras trabajaba en mi primer trabajo. Hasta ahora ha funcionado. Your mileage will vary.

Good luck!