Si el trabajo duro nunca puede vencer al talento, ¿qué debo hacer para llegar tan cerca como un desarrollador genio?

El talento parece estar estrechamente relacionado con el interés, la curiosidad y, en general, se dirige hacia las cosas intelectuales. Si no tiene ninguno de estos, es posible que necesite encontrar algo que realmente le interese en el campo en el que ya está comprometido o cambiar de campo.

En el caso de la programación, hay varias direcciones que uno puede tomar; Por mi parte, realmente me ha encantado el viaje a la programación funcional pura, los tipos dependientes, la verificación formal (muy superficialmente) y todo lo que conlleva (todo lo relacionado con Haskell, Coq, Agda, Idris, ML, etc.); por otro lado, puede ser impulsado por una codificación súper optimizada de bajo nivel o sistemas altamente paralelos / escalables. O tal vez descubra que su cerebro está totalmente interesado en los gráficos 3D y las UI altamente interactivas y hermosas. ¿Quizás lo tuyo sea la física computacional u otro método de números? Aprendizaje automático, PNL e IA? O tal vez te gusta incrustado.

De todo lo anterior, también hay posibles combinaciones de 2 o más, como FP puro verificado verificado o procesamiento 3D paralelo, o procesamiento de números de bajo nivel, o paralelismo de nivel de instrucción para 3D (computación GPU), etc. Todo lo que necesita realmente es explorar y descubrir si algo que no has considerado hasta ahora te interesa.

Independientemente de lo que decida, debe tener en cuenta que el aprendizaje constante, y cuanto más mejor, es clave para todo lo que desee lograr; Aprendo durante varias horas la mayoría de los días, incluidos los días de trabajo y durante el trabajo: cada vez que implemento algo, rápidamente pienso y hago una búsqueda en Google para averiguar si hay algo que aprender de lo que acabo de implementar, o si podría mejoralo. Esto a veces te lleva a descubrir categorías completamente nuevas de cosas que te habías perdido antes, o que no parecían interesantes debido a la falta de contexto.

Y no intente encontrar aplicaciones prácticas (es decir, de pago) de inmediato; puede pasar 1 o incluso 5 años aprendiendo algo por el simple placer de hacerlo, hasta que comience un proyecto, o sea contratado en un proyecto por la experiencia que ha aprendido.

Alternativamente, si nada de esto resuena contigo, quizás estés tratando de ser algo que no eres.