¿Qué es más importante que un ingeniero informático sepa? ¿Conceptos técnicos o codificación?

Los conceptos técnicos y la codificación son como marido y mujer: si posee exactamente uno de ellos, no es útil para la empresa, ambos son esenciales.

Ahora, ¿a quién defines como codificadores ? No te declares un buen programador a menos que realmente hayas escrito un par de proyectos / software no triviales. No importa la cantidad de programación competitiva que hagas, y si eres fuerte, no estarías calificado como codificador. Estos pequeños programas de resolución de problemas no superan los 100 LOC, y a menos que realmente escriba un proyecto lo suficientemente grande, no sabría cómo organizar el código src, cómo escribir un código src que sea fácil de mantener y abrir para la extensión, cómo depurar softwares grandes, escribir makefile y muchos más. Si no sabes todo esto, ¿qué te hace declararte un codificador?

Parte de los conceptos técnicos : si eres bueno en el conocimiento conceptual, pero te cuesta codificar, es como si tuvieras la habilidad de liderar, pero no sabes cómo pelear la batalla. Ahora, este aspecto es aceptable en la posición de gestión técnica en TI, pero no como alguien que busca ser elegido por las multinacionales como desarrollador. Si es elegido como desarrollador, espere que desarrolle (código). Y no puede unirse a MNC directamente como gerente técnico, tiene que pasar por la misma cartera de designaciones.

Ahora, brindándole la perspectiva de la industria sobre las dos habilidades que ha mencionado: codificación y conocimiento técnico conceptual en términos de qué habilidad es obligatoria según su experiencia en la industria, en los primeros años de su carrera, debe sea ​​bueno en la codificación, no se le pedirá que diseñe cosas desde cero. Después de pasar entre 8 y 10 años, se espera que seas bueno en la codificación y el diseño (es decir, bueno con los conceptos técnicos). Cuando alcanza el nivel de administrador, no se espera que codifique, pero es posible que deba diseñar, analizar o brindar orientación a los ingenieros sobre el desarrollo de software.

Al final, las dos habilidades son requisitos previos el uno del otro. No puede ser un excelente programador a menos que sea realmente consciente de los conceptos técnicos, y no puede ser bueno en los conceptos técnicos a menos que realmente los haya codificado antes y sepa dónde aplicar qué concepto en caso de tener múltiples opciones.

More Interesting

Cómo explicarle a mi madre la diferencia entre un archivo instalador y el software instalado real

¿Dónde puedo encontrar listas de software accesible, por ejemplo, la Sección 508, etc., preferiblemente agrupadas por propósito?

¿Cómo es trabajar para Code for America como diseñador?

Si tiene que crear objetos para cada número de enrutador en un archivo, ¿cuál es la mejor manera si no sabe cuántas líneas obtendrá para cada enrutador?

¿Qué pasará si leo un libro que no entiendo? ¿Seguirá siendo valioso?

¿Es la interfaz un patrón de diseño o una característica orientada a objetos?

No tengo el talento de un diseñador de experiencia de usuario, pero me gustaría tenerlo. ¿Podría un desarrollador back / front-end convertirse en un gran diseñador de UX? ¿Cómo se puede adquirir este talento UX?

¿Por qué los productos de software de IBM son caros en comparación con otros?

¿Cómo se desarrolla exactamente el software de la computadora?

¿Cómo es pasar de un programador de estudiantes a trabajar en un entorno profesional?

¿Cuándo se debe documentar?

Cómo convencerme de tolerar un código imperfecto que creé para poder dedicar tiempo a cosas más importantes

¿Cuáles son algunas de las razones por las que un profesional de la tecnología se mudaría del Área de la Bahía a Seattle?

¿Cuáles son las habilidades necesarias para administrar un equipo de desarrollo de software?

¿Cuál es la validación empírica de la opinión de que scrum funciona mejor que la gestión de proyectos tradicional para el desarrollo de software?