¿Qué debería seguir aprendiendo que sería una buena inversión de mi tiempo?

Dado que usted dice que quiere que su conjunto de habilidades sea neutral para la organización, supongo que está buscando construir su currículum para que pueda pasar a otros trabajos fácilmente.

Todo depende de la clase de otros puestos de trabajo a los que quieras mudarte, realmente.

Asumiré por el momento que estás interesado en expandir tus habilidades de programación principalmente.

Aprender diferentes lenguajes de programación es una vía. Podría ser cualquier cosa, desde script de shell, Python, etc. hasta Ruby, Java, Go, Rust, … lo que sea. Si está aprendiendo un nuevo idioma para obtener un tipo específico de trabajo, estudie qué idiomas se usan en ese dominio y estudíelos.

Si desea convertirse en un mejor programador, quizás se centre en aprender diferentes estilos de programación. Parece que está familiarizado con la programación imperativa y tal vez la programación orientada a objetos. Quizás estudie programación genérica, programación funcional, profundice en la programación orientada a objetos, etc.

La exposición a diferentes estilos de programación ampliará su forma de pensar acerca de la tarea de asignar un problema a un programa que aborde ese problema.

Si está interesado en habilidades más concretas, no necesariamente relacionadas con la programación, sino más bien relacionadas con lo que está de moda comercialmente, realmente no puedo ayudarlo. Mire a su alrededor todo lo que está actualmente “de moda” y vea qué puede aprender jugando con eso. Eso puede ser más fructífero para usted a corto plazo.

A la larga, considera ampliar tu enfoque. Usted se describe como un desarrollador de C ++ que trabaja en UNIX. C ++ es un lenguaje específico y UNIX es un sistema operativo específico. Considere lo que se necesitaría para aprender la programación como una habilidad general (es decir, no vinculada específicamente a C ++, aunque podría tener experiencia específica en C ++), y las computadoras como un objetivo general (es decir, no vinculado específicamente a máquinas UNIX, aunque podría tener experiencia específica en UNIX).

Mezcle otros idiomas y otros entornos informáticos en su dieta. Averigua qué aspectos son comunes entre ellos y qué aspectos son especializados. Si puede dar un paso atrás y comenzar a aprender el panorama general, eso lo hará más flexible y adaptable, que es lo que realmente importa a largo plazo.

Soy un desarrollador .net, tengo un poco de comprensión de la automatización web y PHP. He hecho softwares e incluso los he vendido en internet. Confía en mí, necesitas aprender un poco de frontend, backend y middleware para poder construir algo.

Si ve el requisito de las empresas, piden personas que conozcan (por ejemplo) node.js, HTML, CSS, PHP, MySQL, Java, Perl, etc. Los gerentes de contratación no saben mucho sobre las herramientas que se están construyendo. Su trabajo es elegir candidatos aptos para ese trabajo. Así que ponen tantas tecnologías relacionadas como sea posible en sus anuncios.

Verá que las empresas contratan a aquellas personas que pueden comprender el funcionamiento de diferentes tecnologías entre sí. Aparte de eso, debe comenzar a aprender cómo administrar su dinero (ahorros e inversiones, ambos).