Esta es una gran pregunta ya que muchas personas me han preguntado si la programación competitiva es realmente necesaria para conseguir un trabajo en tecnología. La respuesta corta es que no es necesario. Hay tantas personas que he visto y con las que he trabajado que no son ganadores de programación competitivos.
Sin embargo, la respuesta larga es más interesante de la siguiente manera. La verdad es que, aunque la mayoría de los buenos ingenieros no son ganadores competitivos de programación, más o menos tienen algo de experiencia en competencias de programas. Por ejemplo, pueden haber asistido al menos a una competencia en el pasado, o algunos de ellos tienen calificaciones en TopCoder (probablemente no alto).
Por lo tanto, lo que recomendaría es que no necesita ser un experto en programación competitiva para obtener un trabajo de gigantes tecnológicos, pero será mejor que lo intente. Puedes jugar con TopCoder o practicar con competiciones pasadas. Hay un par de beneficios al hacerlo:
- ¿Qué importancia tienen las estructuras de datos y los modelos gráficos para el aprendizaje automático?
- ¿Qué tipo de empresas necesitan / necesitarán ingenieros de Machine Learning?
- ¿Qué hace que una computadora sea única? ¿Es el HDD? Si es así, ¿eliminarlo y ponerlo en otra máquina hace que esa máquina sea la misma que la original?
- ¿Cuál es la motivación de Google para el código abierto del modelo de TensorFlow para problemas ML / NLP como el resumen automático de texto?
- ¿Qué especificaciones de computadora se recomiendan para entrenar redes neuronales?
- Hay mucho en común entre la competencia del programa y la codificación de entrevistas, como limitación de tiempo, preguntas relacionadas con algoritmos, etc. Así que esto definitivamente puede ayudarlo a estar mejor preparado para las entrevistas.
- Aunque la programación competitiva parece irrelevante para el aprendizaje automático / ciencia de datos, le ayuda a comprender mejor la programación y los algoritmos, que son realmente la base de todos los campos relacionados con la informática. Por ejemplo, sin buenas estimaciones de la eficiencia de un programa, no podrá comprender los algoritmos de ML profundamente.
Compartí más consejos en este artículo: ¿es útil la programación competitiva para obtener un trabajo en tecnología? En resumen, animo a la gente a que pruebe la programación competitiva, aunque no es necesario. No duele si no eres bueno en absoluto, ya que no perderás nada. Sin embargo, existe una gran posibilidad de que se beneficie mucho.