Tanto los grados en Informática (CS) como la asistencia a los campamentos de programación son formas efectivas de conseguir un trabajo como programador. Cada uno tiene ventajas y desventajas. Estoy bastante familiarizado con ambos debido a mi experiencia. Estudié CS en Northeastern University, trabajé en varias startups y grandes empresas como desarrollador (incluidos Microsoft y eBay). Desde entonces comencé el Proyecto Firehose , un campo de arranque de codificación en línea.
A lo largo de mi carrera, he trabajado con personas que han seguido la ruta tradicional de estudiar CS en la escuela y personas que fueron autodidactas. Aprender a programar es realmente algo que aprendes haciendo. Algunos de los programadores que más admiro no tienen un título universitario en informática.
Aquí está el resumen de las dos pilas entre sí.
Licenciatura en Informática
Costo : $ 80,000 – $ 120,000
Duración : 4-5 años.
- ¿Qué escuelas son las mejores para obtener una maestría en políticas públicas?
- ¿Cuáles son las universidades preferidas para una maestría en informática en Canadá con un puntaje GRE de 305?
- ¿Cuáles son las buenas universidades en los Estados Unidos para obtener una maestría en dominio de la comunicación?
- ¿Existe una lista / sitio web completo para maestros dobles en matemáticas y ciencias de la computación?
- Estoy solicitando una maestría en ingeniería química en los Estados Unidos, ¿dónde encajaría?
Un título en Ciencias de la Computación generalmente tomará 4 años completos. Las mejores universidades, incluyendo MIT, Stanford, Berkeley, Princeton, Caltech, Harvard, enseñan lenguajes de programación funcional en su curso de introducción [ 1 ]. La programación funcional no se usa en la industria tan común como otros tipos de lenguajes de programación.
En mi experiencia, más de la mitad de los estudiantes que asistieron al CS101 de Northeastern rechazaron la clase. La mayoría dejó caer al mayor, pero algunas personas lo intentaron nuevamente el siguiente semestre. Encontré la clase bastante fácil, pero había estado programando como un pasatiempo antes de la universidad; si este hubiera sido mi primer contacto con la programación, probablemente hubiera fracasado, o al menos hubiera tenido problemas.
A lo largo de toda la experiencia de obtener un título de CS, la mayoría de los estudiantes encontrarán que tocan varios lenguajes de programación diferentes y estudian conceptos teóricos complicados. Enseñan algoritmos, estructuras de datos, lógica y muchos temas que forman la base de cómo funcionan las computadoras.
Parte de la experiencia le enseñará conceptos teóricos que no resultan ser demasiado prácticos en ese momento. Gran parte de las habilidades que los estudiantes aprenden son habilidades avanzadas para resolver problemas y descubrir cómo resolver varios problemas informáticos.
Al resolver problemas que son más difíciles de lo que la mayoría de los programadores enfrentarán en el trabajo, las universidades hacen un buen trabajo al enseñar a los aspirantes a desarrolladores cómo resolver problemas y cómo funcionan las computadoras a un nivel profundo .
También hay requisitos que no son CS, como requisitos de clases de diversidad, inglés, sociología y algunos otros cursos que se requieren para graduarse. Pero esto es con lo que los estudiantes se van.
- Los graduados en informática generalmente tienen buenas habilidades para resolver problemas y pueden escribir algoritmos avanzados.
- También conocen cosas teóricas como la complejidad asintótica, cómo funcionan los autómatas, las matemáticas discretas y cómo se pueden asegurar los sistemas informáticos.
Estas son habilidades que son partes importantes del proceso de contratación que las empresas toman para los desarrolladores.
Sin embargo, la informática generalmente no enseña ciertas otras cosas:
- Nuevas tecnologías que se están adoptando en la industria en los últimos 10 años más o menos.
- Algunas cosas prácticas que son importantes, como trabajar en un equipo ágil, control de versiones y muchas cosas que casi todos los equipos de desarrollo en el mundo real usan.
También hay una gran diferencia en la calidad de la educación que obtienes en una universidad de primer nivel (piensa: MIT, Stanford, Caltech) y el resto.
Bootcamp de codificación
Costo : $ 4,000 – $ 20,000
Duración : 2-5 meses.
Un campo de entrenamiento de codificación es una forma alternativa de cambiar de carrera para convertirse en un desarrollador de nivel profesional y generalmente es para las personas que estudian Ciencias de la Computación en una universidad no es una opción práctica. Para la mayoría de las personas, dejar su trabajo, volver a la escuela durante 4 años y acumular cientos de miles de dólares de deuda, no es una opción práctica, especialmente si ya han estudiado algo más en una universidad y ya tienen un la licenciatura.
Los bootcamps de codificación generalmente enseñan las herramientas específicas que son aplicables en el mundo real. Generalmente pueden actualizar su plan de estudios para incluir las tecnologías que son más avanzadas.
En esencia, a menudo son programas de capacitación enfocados en láser:
- Enseñar a los estudiantes lo que necesitan para poder conseguir un trabajo como desarrollador junior
- Hacer que los estudiantes sean programadores fuertes para que sean valiosos empleados a largo plazo
La mayoría de los bootcamps de codificación se centran específicamente en el desarrollo web, que es un poco más específico de lo que enseñan las universidades. La razón es que la industria del desarrollo web está en auge ahora y hay muchos puestos vacantes para este tipo especializado de programador.
Los bootcamps de codificación generalmente eligen un lenguaje de programación central para enfocarse en la enseñanza durante el período de tiempo y crean aplicaciones web de la misma manera que generalmente se hace en la industria. Al alejarse de un campo de arranque de codificación, debería poder crear una aplicación web para la que tenga la idea.
Existen otras herramientas que se usan casi todos los días en el rol de desarrollador web. Estas incluyen herramientas como: Slack, Git, GitHub y Trello, así como algunas otras herramientas, y también tendrá experiencia en el uso de estas herramientas en un campamento de codificación.
Los estudiantes de un campamento de entrenamiento a menudo se unen entre sí para construir un proyecto como parte de un equipo ágil , junto con la supervisión de un ingeniero que ha sido el desarrollador principal de un equipo en el pasado. En la industria, hay ciertas formas en que los equipos de desarrolladores se organizan y pueden trabajar eficazmente como un equipo. Estas estrategias a menudo se llaman ágiles . La experiencia en un campamento de codificación brinda a los estudiantes una experiencia de trabajo en el mismo entorno que el mundo real, junto con una estrecha supervisión de los desarrolladores senior.
Para preparar adecuadamente a los estudiantes para la entrevista técnica, hay algunos temas teóricos difusos que se enseñan en los títulos tradicionales de informática que surgen con mucha frecuencia en las entrevistas técnicas. Esto significa que los buenos bootcamps de codificación tienen que enseñarles si quieren que sus estudiantes compitan por los trabajos. Si bien un campo de entrenamiento de codificación no cubrirá todos los temas de un título de CS, ciertas habilidades son esenciales para enseñar.
Los buenos bootcamps de codificación revisan temas como algoritmos, estructuras de datos y otros temas teóricos que surgen una y otra vez en la entrevista técnica.
- Los bootcamps de codificación enseñan herramientas que se usan todos los días en el trabajo como desarrollador web
- También simulan trabajar como desarrollador, por lo que los estudiantes tienen las habilidades técnicas y sociales para colaborar con otros desarrolladores en el primer día del trabajo.
- Preparan a los estudiantes para el proceso de entrevista técnica (y una habilidad llamada codificación de pizarra).
Estas son partes importantes del proceso de contratación que toman las empresas.
Los bootcamps de codificación generalmente no enseñan ciertas cosas:
- Matemáticas avanzadas relacionadas con la informática.
- Temas teóricos de CS que no aparecen con frecuencia en los trabajos o en el proceso de búsqueda de empleo.
- Cómo construir sistemas operativos, lenguajes de programación y compiladores.
Al igual que las universidades, hay una gran diferencia en la calidad de la educación que obtienes en un campamento de programación de primer nivel y el resto.
Si recién te estás graduando de la escuela secundaria y sabes que quieres trabajar como programador cuando te gradúas y estás cerca, un título en Ciencias de la Computación podría ser la decisión práctica. Tenga en cuenta que algunos ex alumnos de CS eligen asistir a los bootcamps de codificación después de su experiencia en la universidad para nivelar aún más sus habilidades, por lo que no necesita elegir solo uno u otro.
Pero para la mayoría de los cambiadores de carrera, 4 años de estudio y acumular $ 100,000 más de deuda, simplemente no es una opción práctica. Los bootcamps de codificación generalmente se ajustan mejor a esta categoría de personas.
Dado que los bootcamps de codificación de nivel superior son muy diferentes a los otros programas en el mercado, si está considerando inscribirse en uno, es importante hacer una investigación sobre a qué unirse de manera inteligente. Aquí está todo lo que necesita saber para hacer la llamada correcta:
Ingeniería inversa: la estrategia perfecta de bootcamp de codificación
Si le gustó mi respuesta, significaría mucho para mí si la votara al presionar el botón azul claro a continuación.