Como desarrollador experimentado de Java, ¿qué habilidad debo agregar UI (HTML, CSS, JS, Bootstrap y Angular) o Big Data (Hadoop, MongoDB, Spark, PIG, Hive). ¿Qué será lo más útil en el futuro?

Ambos son igualmente buenos a partir de hoy.

Como desarrollador Java experimentado, lo más probable es que haya trabajado en la Web.

En lo que respecta a la interfaz de usuario,

  • A pesar de cualquier crecimiento del aprendizaje automático o Big Data que impulsa el back-end, la Web todavía necesita un front-end. Y por extensión, desarrolladores front-end.
  • Parece que la Web no desaparecerá pronto, que es lo que usará su interfaz de usuario. Entonces, estás cubierto en ese frente.
  • Y para que no tenga una visión limitada, acostúmbrese a referirse a la UI como UX (abreviatura de Experiencia del usuario), y eso también se aplica a las aplicaciones que no son de la Web. De hecho, el futuro necesitaría modos de interacción muy diversos y, por lo tanto, necesitamos desarrolladores de UX innovadores.

En lo que respecta a Big Data,

  • Es una tecnología importante, más bien una plataforma sobre la que pueden basarse otras tecnologías, que parece estar creciendo de manera saludable durante los últimos 3 a 4 años. Entonces, tendrías mejores beneficios uniéndote ahora que más tarde.
  • Parece que la Web no desaparecerá pronto, que es en realidad la fuente de los datos en Big Data. Entonces, estás cubierto en ese frente.
  • Y para que no tenga una visión limitada, Big Data (que es más una plataforma) también puede extenderse a aplicaciones que no son web. Entonces, tendría opciones más amplias para expandir su carrera y encontrar especializaciones a largo plazo.

Objetivamente, no estarías haciendo una mala elección con ninguno de los dos.
Subjetivamente, si eres bueno o estás entusiasmado con alguien, puedes atender tu llamada.


Creo que el secreto del crecimiento está en encontrar las oportunidades en lugar de concentrarse en la herramienta / marco / lenguaje.

No aprendas simplemente Pig / Spark / Hadoop.
Aprenda la arquitectura de Big Data (que es simplemente un almacenamiento de base de datos de múltiples máquinas con / sin un sistema de restricciones relacionales).

No aprenda simplemente Bootstrap / Angular / Angular2.
Aprenda qué hace una buena interfaz de usuario y cómo contribuye a una experiencia de usuario intuitiva.

Concéntrate en el oficio. No las herramientas.

PD: La parte “HTML / CSS / JavaScript” requiere una sección propia. Son una combinación bastante expansiva. Hay personas que se han pasado la vida convirtiéndose en maestros de esta combinación. No estoy seguro de que te des cuenta de lo grandes que pueden llegar a ser. Si realmente quiere ser un desarrollador web completo, use JavaScript. Te lo agradecerás más tarde.

En primer lugar, creo que comparar estos dos conjuntos de habilidades ortogonales lado a lado es un poco … demasiado mundo aparte, pero, si son las opciones que estás considerando, bueno, ¿por qué no?

Ambos son valiosos: si aprende la interfaz de usuario, puede convertirse en algo así como un “desarrollador de pila completa de Java” que trabaja en los componentes de back-end y front-end de las aplicaciones web de Java (existen marcos de front-end que hacen que la tarea de la interfaz de usuario sea tan compleja como escribir Java simple en el lado del servidor, por ejemplo, Vaadin, para que tenga una buena influencia allí), que siempre puede ser una apuesta futura buena y segura, porque Java no se desvanecerá de noche en día. Quiero decir, incluso si aparecen nuevas tecnologías más calientes o mejores (lo cual ocurrirán, es una cuestión de cuándo no si) habrá un montón de código Java “heredado” y muchas aplicaciones web Java existentes que deberán mantenerse y trabajó y mejoró, por lo que es bueno saberlo, poder trabajar con aplicaciones web Java, back-end y front-end.

Según Big Data … Claro. Es el nuevo “hot” ¿verdad? Todo el mundo habla de eso (aunque he visto muy poco que se HAGA realmente, pero eso es lo mismo con casi todo en esta industria) y la gente incluso argumenta que algunos de los enfoques más empíricos y experimentales podrían ser muy importantes en el futuro cuando la adopción de computadoras cuánticas aumenta (piense en los períodos de tiempo de la década aquí, 10-20 años) como una posible forma de trabajar con estas nuevas computadoras será algo así como una mezcla de experiencia empírica y análisis de datos a través de prueba y error, un poco como parámetros de ajuste en modelos ML o similares – fuente aquí: las primeras computadoras cuánticas necesitan software inteligente).

Como nota al margen: los grandes datos, el análisis ML y las áreas relacionadas NO son solo marcos y no veo cómo mongoDB se relaciona directamente con ellos. Se trata de análisis y procesamiento de datos utilizando métricas / análisis estadísticos relevantes, por lo que aprender Hadoop, Spark, etc., por sí solo, aporta muy poco o ningún valor para la idea de aprender realmente Big Data.