¿Debo comenzar una carrera oficial como ingeniero de software a los 17 años, o esperar hasta que me gradúe de la universidad?

Depende de las ofertas de trabajo que obtenga.

Hay más de una pista en el mundo de la ingeniería de software, y no todas pagan lo mismo. Permítanme esbozar cuatro pistas o niveles de desarrollador, formando una jerarquía de pago. (Lectores gentiles, por favor no discutan conmigo sobre lo que hace estos roles. Solo son, por ejemplo).

  • Desarrollador de sistemas, normalmente escribiendo bibliotecas de software y aplicaciones centrales en C ++. Estas posiciones pagan más, pero requieren la mayor experiencia y el mayor conocimiento de los conceptos y algoritmos de CS. Este trabajo a menudo va donde ningún hombre ha ido antes, requiriéndole que escriba sus propios algoritmos, estructuras de datos y bibliotecas y luego los mantenga.
  • Desarrollador de pila completa, que normalmente escribe en Java, C # o C ++, que produce lógica empresarial y genera código HTML algorítmicamente. Los aspectos de programación de este trabajo a menudo son bastante intensos, pero rara vez requieren la creación de algoritmos novedosos. Hay un buen soporte de biblioteca para este trabajo.
  • Desarrollador front-end, que normalmente escribe HTML, CSS y, a menudo, un poco de javascript. HTML y CSS son lenguajes declarativos y proporcionan comentarios instantáneos sobre el relativo éxito o fracaso del esfuerzo de programación.
  • Probador, requiere conocimientos generales de programación, pero no requiere mucha experiencia. Las pruebas requieren más paciencia y perseverancia que un esfuerzo mental intenso.

Lo que pasa con estos cuatro niveles es que, una vez que entras en uno, tu experiencia te etiqueta. Es probable que el próximo trabajo que le ofrezcan esté en el mismo nivel o por debajo.

A los 17 años, te costará ser tomado en serio como adulto, cuando todos los que te rodean tengan un título universitario y tengan la edad suficiente para votar, beber, etc. A los 17 años y sin título de CS, no te tomarán en serio como un desarrollador de sistemas y probablemente no tenga la amplitud de conocimientos para un desarrollador de pila completa. Probablemente pueda obtener un trabajo como desarrollador front-end, y probablemente haga un excelente trabajo en ese rol. Pero … cuando solicite su próximo trabajo, se sentirá atraído y su experiencia lo preparará para otro trabajo inicial. Repita ese proceso durante cinco años, y puede ser todo lo que alguien le ofrecerá.

Los desarrolladores front-end ganan bastante dinero en comparación con los gerentes de turno en Denny’s (restaurante). El nivel de entrada para las cuatro pistas es casi el mismo. Pero los desarrolladores de sistemas ganan probablemente un 50% más durante la mayor parte de su carrera y superan con un salario más alto. En mi muy humilde opinión, los trabajos de programación de sistemas también son más interesantes.

Vaya a la universidad y estará mejor preparado para trabajos de nivel de entrada en las pistas mejor pagadas. Una licenciatura en CS es casi siempre una gran inversión de por vida, en términos de la remuneración que eventualmente obtendrá y también de lo interesante que será su vida laboral. Puedes hacer desarrollo front-end a tiempo parcial mientras estás en la escuela. Me mantendría alejado de las pruebas, porque muchas personas piensan que los evaluadores son aquellas personas que no están preparadas para roles de desarrollo convencionales, y los tratan como monos con máquinas de escribir.

Pero pareces impaciente. Ceder ante esta impaciencia puede costarle la mitad de sus ganancias de por vida. Si no estás absolutamente seguro de que no eres el genio de los chicos, podría ser una buena idea ingresar a la universidad.

Depende profundamente de qué tipo de persona eres. Comencé a programar a una edad temprana, lo mantuve como un pasatiempo en la escuela secundaria y comencé a trabajar como desarrollador solo un par de meses después de graduarme en junio de 2015. Ahora estoy trabajando a tiempo completo como ingeniero de software en un comienzo muy interesante. llamado Distelli en Seattle y ganando poco menos de 80k sin experiencia universitaria. Por lo tanto, definitivamente es posible hacerlo directamente desde la escuela secundaria si tienes las habilidades adecuadas. Tuve suerte porque JavaScript explotó y eso es justo lo que sabía y me gustaba.

Pero hay muchas cosas a considerar. Si comienzas tu carrera directamente desde la escuela secundaria, eres el camino de la vida y las experiencias que tengas serán significativamente diferentes a las de otras personas de tu edad. Es probable que sus colegas de trabajo sean mucho mayores que usted durante mucho tiempo, y si planea mudarse de su casa al trabajo, es probable que casi todas las personas con las que esté rodeado tengan al menos 3 o 4 años más que usted . Para algunas personas esto no es un problema, pero puede hacer que sea difícil encontrar amigos.

Algo más a considerar es que la universidad es mucho más que aprender algo para conseguir un trabajo. Muchas personas hacen conexiones en la universidad que duran toda la vida y muchas personas también comienzan la universidad con una idea de lo que quieren hacer y al final están haciendo algo completamente diferente.

Dicho esto, siempre puedes regresar después de trabajar durante uno o dos años y muchas universidades no te penalizarán por las admisiones por tomarte un tiempo entre la escuela secundaria y la universidad. Solo asegúrese de escribir sobre su tiempo trabajando en sus ensayos de entrada.

También hay preguntas que debes hacerte sobre cuál es tu objetivo final. ¿Quieres hacer juegos? Aplicaciones web? Aplicaciones telefónicas? ¿Qué pasa en 5 años? Cuando comencé a programar, quería hacer aplicaciones web. Ahora que tengo un par de años de experiencia, el aprendizaje automático, el rastreo web y cualquier cosa con grandes conjuntos de datos es lo que despierta mi interés. Lo más probable es que en algún momento te aburras con lo que tu primer trabajo te hace hacer y quieras pasar a campos más avanzados. Y si bien la sintaxis y las mejores prácticas de un idioma son bastante fáciles de aprender a través de videos en línea y otros recursos, hay muchas cosas que podría desear aprender que son mucho más difíciles de aprender si no tiene una base adecuada en CompSci, que puede ser difícil de enseñar usted mismo.

Si quieres trabajar para Google, DeepMind, Magic Leap o alguna otra empresa que trabaje en tecnología innovadora, ve a la universidad. Me imagino que casi todos los que solicitan estos puestos lo han hecho.

Si su objetivo es iniciar un negocio, hacer un trabajo independiente o simplemente una idea de cómo es trabajar en la industria tecnológica, vaya a trabajar.

Se trata de si estás o no a la altura del desafío de intentar hacerlo por tu cuenta. Y si lo es, podría ahorrarle años de universidad e incluso cientos de miles de dólares. El riesgo que corres es que eventualmente puedes dejar de aprender temas más avanzados y cambiar de industria o terminar en la universidad de todos modos.

La mejor de las suertes.

Cuando el mercado laboral está de moda, es tentador entrar lo antes posible. Sin embargo, dado que las tendencias pueden cambiar rápidamente, puede terminar en una situación en la que un título es importante para conseguir un trabajo y luego puede ser demasiado tarde.

La escuela hace un buen trabajo al enseñarle habilidades para resolver problemas y cómo se conectan las diferentes teorías. Es poco probable que le enseñe lo último y lo mejor en herramientas de software e idiomas.

Te recomendaría que vayas a la universidad y trabajes a tiempo parcial con la programación. Si eres un poco aventurero, te sugiero que comiences tu propia empresa. De esta manera, puede elegir sus tareas y cubrir los temas / herramientas / idiomas que desea aprender. La desventaja de hacer las cosas por su cuenta es la falta de mentores, pero eso podría resolverse contactando a personas de la comunidad local de software. Otra ventaja de tener su propia empresa es que puede aprender sobre contabilidad, impuestos y otros temas que es bueno conocer.

Estaba trabajando en verano en una empresa de telecomunicaciones durante mis primeros años de estudios universitarios. Me encantó tanto que comencé a considerar tomar un descanso de los estudios y trabajar allí a tiempo completo. Le pregunté a mi gerente y él dijo “No, deberías terminar tus estudios. Habrá muchas oportunidades de trabajar más tarde “. Primero me decepcioné, pero sabía en mi corazón que tenía razón. Seguí su consejo y no me arrepiento. Si por alguna razón no hubiera obtenido mi título, no habría podido ir a trabajar a Japón como lo hice más tarde (para obtener una visa y un permiso de trabajo, básicamente tienes que tener un título universitario).

Paralelamente a trabajar en la compañía de telecomunicaciones, tengo mi propia compañía e hice algo de desarrollo de software aquí y allá. Realmente no hice esto para obtener ganancias sino para aprender cosas. También adquirí experiencia en negociación, obtención de requisitos, pruebas y despliegue. Esto fue en la década de 1990, por lo que no hubo tanta competencia y las pequeñas empresas agradecieron su ayuda. Las cosas pueden ser diferentes donde vives, por lo que puede ser bueno investigar.

Una alternativa para comenzar su propia empresa es unirse a uno o varios proyectos de código abierto. Esto le otorgará reconocimiento público y la oportunidad de aprender de otros grandes programadores. Asegúrese de elegir un proyecto que le apasione y donde ya haya un núcleo talentoso trabajando en el proyecto.

¡Buena suerte!

Haz ambos. Comience a trabajar con el software y manténgase encaminado para ir a la universidad.

No tiene que ir todo adentro a los 17. Cuando tenía quince años y comencé a hacer pequeños trabajos de programación independiente, tenía impresas tarjetas de visita que decían: “ningún trabajo es demasiado pequeño”. Los usé por mucho tiempo.

No hay “oficial” o “no oficial”, solo hay esto: sea ​​lo suficientemente bueno para entregar valor comercial a través del software que la gente le pagará por hacerlo.

Si tienes personas que quieren contratarte para conciertos a corto o medio tiempo ahora, toma el trabajo. Aprenderás de ello.

Pero hay cosas que aprender que realmente no se pueden recoger sobre la marcha. Como desarrollador autodidacta, es difícil simultáneamente 1) ganarse la vida y 2) darse una base sólida en algoritmos, estructuras de datos y lenguajes de programación, cosas que pagan dividendos para toda su carrera.

Ven ahora. ¿Realmente crees que has aprendido lo suficiente como para ser tan productivo como las personas que han tenido años y años más de entrenamiento que tú? ¿Realmente crees que puedes ser competitivo con aquellos de educación mucho más extensa?

Te sorprende lo mucho que sabes ahora, porque lo estás comparando con lo que estabas hace un año, cuando prácticamente no sabías nada. Así que has avanzado mucho, en comparación con la ignorancia absoluta. Pero solo estás comenzando. Lo que todavía está disponible para aprender, y lo que aún debe aprender, es mucho más de lo que ha llegado hasta la fecha.

Estás en la misma posición que un tipo que acaba de ganar el City Championship en el tenis. Los entrenadores y organizadores deportivos te encuentran un jugador joven muy prometedor. Ahora se siente listo para participar en el recorrido profesional, pensando que continuará ganando partidos y pronto se encontrará con los premios y avales de grandes sumas de dinero. Pero si realmente trataras de ser profesional, te harían pedazos. Necesitas años y años de juego aficionado, entrenamiento y práctica, incluso antes de que puedas entrar a la cancha con un profesional.

Y así es con el software de escritura. El hecho de que pueda hacer imágenes en una pantalla o escribir rutinas que realmente realicen una función no lo convierte en un ingeniero de software. Es una ventaja para usted que haya encontrado un campo de interés profesional a la temprana edad de 16 años, pero no puede ser competitivo en función de lo que ha aprendido.

Establecerse. Termine la escuela secundaria, logrando un promedio de A durante su último año. Sumérgete en el mejor y más exigente programa universitario y educativo que puedas encontrar. Planee pasar cuatro años trabajando duro, aprendiendo tanto como sea posible y de la manera más amplia posible, durante ese tiempo.

Con eso, puede ser calificado para un trabajo de nivel de entrada. Intentar ir a trabajar más pronto solo lo llevaría al fracaso, la decepción y muy pocas posibilidades de redimirse y construir una carrera.

Depende principalmente de lo que haya aprendido, perfeccionando sus habilidades aprendiendo y experimentando nuevos entornos y lo que le interese en el campo de la informática, y también qué campos de ingeniería de software desea seguir

por ejemplo, arquitectos de software, probadores de software, diseñadores de software, construcción de software, etc.

Hablando francamente, deberías ver tú mismo lo que se avecina. Las ciencias de la computación son un campo vasto y de ninguna manera estamos listos para saber lo que nos espera, la imprevisibilidad es una de las limitaciones más comunes en este campo. Realmente debería aprender los fundamentos de la ingeniería de software antes de saltar directamente, pero qué puede ser mejor que aprenderlo en el campo. Sin embargo, ¿hay una pregunta que debes hacerte? ¿Está realmente preparado para la tarea que le espera, está realmente familiarizado con todos los conceptos y fundamentos, por ejemplo, para resolver un problema, está bien equipado con las habilidades que resuelven problemas ambiguos en marcos complejos.

Puede aprender todo esto cuando salta directamente, pero si carece del conocimiento de las fases utilizadas en el desarrollo de software o tartamudea los inconvenientes, debe tener un gran espíritu para enfrentar esos problemas, así que estudie e investigue más sobre el campo. y sí, deberías unirte a la universidad y hacer el trabajo codo con codo en el campo, es realmente simple pero requiere mucho tiempo al mismo tiempo, pero si tienes la voluntad de lograr algo grandioso y usar tu tiempo de manera responsable, puedes lograr cualquier cosa.

Absolutamente, pero te darás una ventaja al crear tus propias aplicaciones, sitios y servicios también. Esto le brinda un poco de experiencia comercial que puede combinar con habilidades técnicas para hacer cosas increíbles.

Ojalá alguien me hubiera dicho que ser solo un ingeniero de software solo es como ser un trabajador de campo en una granja: trabajarás duro, probablemente ganarás mucho dinero, pero no tanto como el agricultor que 1.) puede rodar levantarse las mangas y trabajar el campo junto a ti y 2.) también sabe cómo vender los cultivos que estás cultivando.

Conviértete en el granjero.

Ir a la universidad. Sus oportunidades profesionales se ampliarán. Además, si crees que eres bueno ahora después de la universidad, estarás mucho mejor. ¿Cómo están tus habilidades en matemáticas y física? ¿Tiene algunos paradigmas de resolución de problemas para abordar grandes problemas? ¿Cómo aborda la solución de un error en el programa de dos millones de líneas que escribieron otros diez ingenieros? Porque cuando te contratan por primera vez, eso es lo que harás.

Si está trabajando 10 horas por semana y tiene un puesto para el verano, excelente. Ve a por ello. Será grandioso.

Si planea trabajar a tiempo completo e ir a la escuela a tiempo parcial. Meh Definitivamente es una forma de hacerlo … pero es un camino realmente difícil y largo, de 8 a 10 años, hasta que tengas tu título. Y todo esto siempre que puedas encontrar una universidad que ofrezca clases por la noche.

Si planea omitir o retrasar la universidad, esta es una opción que limita su carrera. No eres un atleta, con un período limitado de rendimiento máximo. Estás viendo entre 25 y 40 años de actividad profesional, y necesitas un título en algo, o no estás yendo muy lejos en el mundo de los negocios.

Como cualquiera sabría, Bill Gates nunca terminó su licenciatura, pero sí comenzó. Pero no había nada que pudiera obtener de Harvard que lo preparara para alcanzar sus ambiciones. También tenía importantes recursos familiares, además de ser un talento de 1 en un millón. No eres Bill Gates. Para ser ingeniero, debes estudiar, aprender a trabajar en equipo, aprender a construir cosas más grandes que tú.

Ambos. Obtenga un turno nocturno para el trabajo, vaya a la escuela durante el día. Su empresa puede tener el programa de ayuda de matrícula. Pregunta si lo hacen. Así es como obtuve mis títulos pagados. No se necesitan préstamos.