¿Cuánto tiempo lleva la autodidacta de codificación y ser lo suficientemente bueno para ser ingeniero de software?

¿Que tan larga es una pieza de cordon? misma respuesta Su pregunta implica que cree que un ingeniero de software es un codificador. Un buen ingeniero de software es un diseñador primero, un implementador segundo. No son exactamente lo mismo. Su pregunta es por naturaleza muy generalista, por lo que trataré de responder en especie.

El tiempo que tome dependerá de varias cosas, como sus aptitudes, las habilidades que ya posee, etc. Por ejemplo, si no conoce la teoría de grafos, entonces tiene toda una clase de problemas para los que no sabrá la mejor respuesta. . Si tienes el tipo correcto de mente, reconocerás cuando te encuentres con ese concepto y aprenderás teoría de grafos. Si no tienes el tipo correcto de mente, de todos modos no serás bueno en eso.

Conocí a personas con excelentes habilidades en áreas específicas que los fascinaron, y cuando se expusieron a nuevas áreas que aún no habían encontrado, lo absorbieron como esponjas y se volvieron expertos en esas nuevas áreas de manera notablemente rápida.

Conocí a personas con excelentes habilidades en áreas específicas que los fascinaron, y cuando se expusieron a nuevas áreas que aún no habían encontrado, realmente lucharon porque no “encajaba en su pensamiento”.

También he conocido a personas que se ganan la vida con la codificación, que a pesar de haberlo hecho durante años, nunca desarrollan habilidades de alto nivel en ninguna área.

Así que creo que la respuesta a su pregunta es “depende”, principalmente de sus aptitudes y motivación.

Además, el título de “ingeniero de software” es algo impreciso. Por ejemplo, podría ser un fabricante de herramientas que crea las herramientas para que los desarrolladores de soluciones las usen, o podría ser un desarrollador de soluciones que usa esas herramientas. La mayoría están en algún punto intermedio, por supuesto.

Otra cosa: no importa qué tan bueno seas, siempre * hay * más para aprender.

Grandes respuestas todo el tiempo.

Siendo yo mismo un programador autodidacta, puedo darte la respuesta breve:

Toda tu vida.

¿Por qué? Porque un ingeniero de software nunca es “suficientemente bueno”. Vivimos en un estado constante de aprendizaje, mejora, refinación y perfeccionamiento. Lo que es “suficientemente bueno” para algunos podría ser “no lo suficientemente bueno” para otros.

Como ingeniero de software, su trabajo es crear productos . Una vez que crea un producto de software que otros pueden usar y tiene un valor de herencia (no necesariamente me refiero a dinero), entonces, y solo entonces, puede llamarse a sí mismo un ingeniero de software.

Tu primer producto es tu graduación. Y tú vas desde allí. Lo que es lo suficientemente bueno hoy te parecerá una programación torpe en el futuro.

Por lo tanto, no se concentre en “lo suficientemente bueno”. Concéntrese en excelentes productos.

Buena suerte.

Pregunta difícil de responder. Probablemente necesite ser más específico sobre lo que cree que es realmente un “ingeniero de software”.

Se ha dicho mucho sobre el uso de “ingeniería” como la misma oración que “software”. Estoy de acuerdo con la mayor parte. La ingeniería es un tipo especial de disciplina y rigor que la programación de software y el diseño simple no emplean.

Si te refieres a “programador de software” o “diseñador de software” sigue siendo una pregunta difícil. Desde mi primera programación de hello world hasta mi primera venta de una aplicación comercial me llevó años. Probablemente podría haber llegado más rápido. Sin entrenamiento formal, incursioné mucho antes de ponerme serio.

Si está hablando de conseguir un trabajo, es diferente nuevamente. Lucharás con grandes empresas. Suelen gustarles una educación formal y desean una regurgitación en gran medida inútil de soluciones de algoritmos en una entrevista en la pizarra. Puedes aprender a hacer esto, pero es principalmente desechar el aprendizaje.

Lo mejor es comenzar a construir cosas. Aprenderás mucho en el proceso. Hará un buen portafolio para mostrar. Probablemente incluso puedas vender algunas cosas. ¿Cuánto tiempo llevará? Eso sigue siendo difícil de decir. Si está realmente concentrado y dedicado, podría hacerlo en un año. Eso es optimista, pero lo he visto hecho.

Algunas semanas a algunos meses. Aprender a programar no es difícil. Mantenerse interesado en él y ser bueno en eso es difícil, ya que tienes que disfrutarlo y necesitas aptitud para hacerlo.

More Interesting

¿Cuál es la importancia de la simplicidad en la arquitectura de software?

¿Puedes decir qué tan bueno es un programador dependiendo de su habilidad para hablar?

¿MIT es bueno para futuros desarrolladores de software, específicamente front-end?

En una compañía de software financiero, ¿qué tan inteligente sería despedir a todo su equipo de control de calidad y comenzar a confiar en pruebas totalmente automatizadas escritas por los desarrolladores?

¿Es cierto que Infosys asigna tecnologías al azar basadas en los requisitos del negocio? ¿Qué pasa si alguien se atasca en una tecnología que no tiene alcance futuro? ¿Cómo se pueden cambiar las tecnologías, cuando todas las empresas piden experiencia en lugar de habilidad?

¿Debo aprender C, C ++ u Objective C?

¿Cómo aprendió Brad Friedman las habilidades de ingeniería en ingeniería de software?

¿Existe una capacitación específica relacionada con la capacitación en pruebas de software?

¿Comenzar un nuevo proyecto desde cero es mejor que unirse a un proyecto en GitHub?

¿Hay algún recurso en línea que ofrezca buenos ejemplos de escenarios para que yo practique escribir historias de usuario o casos de uso?

¿Cuáles son las mejores universidades en Alemania para la ingeniería de software? ¿Cuáles son las mejores universidades en Alemania que enseñan en inglés y tienen buenas oportunidades de colocación para estudiantes internacionales?

¿Qué temas debo estudiar para obtener un trabajo de probador de software como nuevo?

¿Cuáles son los nombres de software más divertidos en Ciencias de la computación?

¿Por qué pude exceder el máximo de 'Preguntar para responder'?

¿Dónde y para qué se utiliza Java en la industria?