Tengo 10 años de experiencia en Java. No he hecho ningún buen proyecto hasta ahora. ¿Cómo puedo mejorar mi Java?

Wow, 10 años de experiencia laboral deberían tener algunos grandes proyectos. Espero que hayas tenido una experiencia laboral increíble. Incluso si no, Echart Tolle dice “El pasado es algo muerto” es igual a una persona que está muerta. Ni siquiera pienses en lo que pasó.

Dado que el tiempo es una construcción emocional (una especie de ilusión). No importa, porque el período de tiempo no es un factor aquí, pero la profundidad de la comprensión (fundamentalmente) es un factor.

Mis fuertes recomendaciones aquí para ti, aprende a fondo los algoritmos y las estructuras de datos. Lea lo que Robert Love sugiere sobre cómo evolucionar como un buen programador (¿Cómo fortalezco mi conocimiento de las estructuras de datos y algoritmos? Ambos me han dejado con un conocimiento fracturado del tema con muchas lagunas en el medio. ¿Cuál sería una buena idea? ¿Cómo hacer para llenar los vacíos y progresar?)

Simultáneamente, preste más atención a una idea y al aspecto de resolución de problemas de la misma. No te apegues a un lenguaje de programación. Java es excepcionalmente bueno para el backend. Del mismo modo, cada lenguaje de programación es excepcionalmente bueno en algún aspecto de la construcción de un proyecto excepcionalmente bueno. Python es increíblemente útil y fácil de aprender. Así como muchos. No puede construir un proyecto excepcionalmente bueno con solo Java.

No subestimes la importancia de los algoritmos y las estructuras de datos. Recuerde, la programación se trata de resolver problemas de la vida real de alguna manera, para hacer nuestra vida más fácil y mejor. Entonces, aprende algo, lo que sea que lo haga de una mejor manera. No somos programadores de Java, solo somos programadores. Nuestro objetivo es ser infinitamente mejor en la programación.

Una vez que mejore en las estructuras de datos. Sugiero ir y tomar clases (página en coursera.org) en aprendizaje automático o inteligencia artificial. Es el futuro por ahora. Únete al Top Coder o Hacker Rank. Compite con los mejores programadores del mundo.

Hay algunas formas de encontrar buenos proyectos.

  1. Busque nuevas empresas en su lugar, estoy seguro de que están desesperadas por contratar a alguien como usted. Cada empresa de nueva creación tiene un gran proyecto. He visto startups que pagan 5000 $ solo por recomendar a alguien como tú.
  2. También puedes unirte a algunos proyectos de estudiantes en ivy league college’s. He visto a algunos estudiantes de la UG trabajando en grandes proyectos.
  3. Proyectos independientes. También se le paga aquí (Trabajos y proyectos independientes)
  4. Algún otro sitio para freelance (donde las startups encuentran talento)

Todo lo mejor. Antes de comenzar a trabajar en algún proyecto, pregúntese, ¿es un gran proyecto para mí (no para otros para mí)?

Si cada átomo de tu cuerpo está convencido de que este proyecto es genial. Confía en mí, obtendrás algunos resultados sobresalientes.

Mejora sus habilidades en Java mediante el desarrollo de aplicaciones robustas, en otras palabras, “la prueba del budín está en la degustación”. Una forma de hacer esto que tiene una comunidad detrás de usted es participar en un proyecto de código abierto. Esto puede llevar tiempo porque primero debe ser aceptado en esa comunidad. La forma habitual de hacer esto es comenzar ayudando al proyecto de maneras pequeñas (como documentación). En segundo lugar, comienza a examinar el código fuente en detalle y busca errores. Si ofrece una corrección de errores aceptada, esa es una buena manera de presentarse a la comunidad. Finalmente, asumiría una función o implementaría parte de una API para el proyecto y confirmaría su cambio. Tenga en cuenta que una parte clave de esta solución es LEER CÓDIGO: hay un montón de código y para los proyectos muy buenos (muchos, muchos en Apache) es un código muy bueno. ¡Entonces, comience su proyecto paralelo ahora y mejore sus habilidades de Java! ¡Los mejores deseos!

Trabaja en buenos proyectos.

Además, aléjate solo de Java. No porque Java sea de ninguna manera malo, o deba evitarse, sino porque llamarse a sí mismo un “desarrollador ________”, donde _________ es el nombre de algún lenguaje, es increíblemente limitante. Llegue a donde puede llamarse desarrollador y trabaje cómodamente con las herramientas que tenga a su disposición. No puedes llamarte mecánico maestro si solo eres bueno con una llave inglesa.

Sin embargo, no ha trabajado en un buen proyecto, ¿parece que no se siente más cómodo con el desarrollo o la codificación? , sin embargo, este es un buen momento para aprender algunas otras tecnologías / herramientas como Pega, Salesforce, AWS, que tienen menos codificación y más demanda en el mercado. Debido a que Java es como un mar que tiene muchas características, incluso cada 6 meses vendrán nuevos cambios en el mercado. Además, si eres bueno en Java central no es suficiente, debes tener conocimiento / experiencia en arranque de primavera / primavera, Mircoservice, Hibernate, UML , Patrón de diseño, Maven, Ant, Jenkins, Angular JS, Git Hub, Team city, Jquery, React js, Mockito, WebLogic, Tomcat. y muchos más . Tienes 10 años de experiencia, por lo que las expectativas son muy altas, puedes pensar en esto.

Estoy de acuerdo con Immanuel George. Simplemente tome un proyecto de buen tamaño y hágalo usted mismo. Realmente aprenderás mucho.
Cuando quería saltar a C desde FORTRAN (hace mucho tiempo, alrededor de 1988), tomé un gran proyecto personal: resolver crucigramas utilizando las estadísticas de Markovian. Me tomó unas buenas 3 semanas, pero disfruté tanto el aprendizaje de idiomas como la resolución de problemas.
O trabaje para alguna ONG local u organización de servicios sociales que apreciarán su esfuerzo.

Tengo 10 años de experiencia en .NET y 5 años de experiencia en Java y durante este tiempo tuve el mismo problema. Luego me cambié a Erlang y me convertí en autor del proyecto de los 10 mejores Erlang en GitHub.

Por lo tanto, sugiero dejar Java.

Si trabajó durante 10 años con algo y aún no puede encontrar la manera de mejorarlo, está haciendo algo muy malo, lea más sobre esto, descubra qué hicieron las personas que admira.

Supongo que si te concentras en hacer cosas basadas en la lógica de sentido común y la experiencia del usuario puede ayudarte, ya que sabes Java, es solo que estás atascado en la codificación de lo que sabes hacer, en lugar de intentar hacer lo que no sabes cómo hacer. Por ejemplo, sé que Java y puedo crear un programa para mostrar URL parece que no es gran cosa ahora, digamos que creo un programa en Java para agregar la identificación de correo electrónico de los usuarios como URL en la barra de direcciones. Piense e intente crear dichos programas con los conocimientos básicos y lo romperá

La mejor manera de mejorar su Java es aprender un lenguaje más avanzado, como Scala o Haskell.

Haz buenos proyectos.

Haciendo algo por 10 años ≠ 10 años de experiencia.

Podrías desarrollar alguna aplicación de Android, no solo hello world, sino una gran aplicación como Quora.