Desde la perspectiva de un recién graduado en Informática en la Universidad de Waterloo, creo que el departamento de Informática (técnicamente la “Escuela de Informática David R. Chariton”) ofrece un excelente conjunto de cursos desafiantes que enseñan tanto la informática teórica como la práctica. Técnicas de programación. Además, la escuela es bien conocida en la industria, y sus graduados son muy respetados.
Durante mi carrera universitaria tomé 18 cursos de “especialización en ciencias de la computación”. Los cursos de primer y segundo año están diseñados para introducir conceptos matemáticos y de informática generales, como la recursividad, las estructuras de datos, la complejidad computacional y las ideas de la lógica. Los cursos del año superior tienden a dividirse en dos categorías: teoría de la informática y programación de sistemas.
Los primeros cursos, que generalmente se requieren para todas las especialidades en ciencias de la computación, pasan mucho tiempo asegurándose de que todos estén en la misma página. Por lo tanto, son impredecibles según el profesor y el grupo particular de estudiantes. Los cursos de año superior, que en su mayoría son optativos, a menudo son impartidos por instructores especializados en el campo específico y son de muy alta calidad.
Un ejemplo de un curso teórico de año superior es CS466 “Diseño y análisis de algoritmos” que aborda la complejidad amortizada, los algoritmos aleatorios y el algoritmo de aproximación para problemas NP-completos (en tiempo polinómico). El material del curso consistió principalmente en pruebas de complejidad computacional y tiempo de ejecución.
- ¿Qué buscas cuando llevas a tu hijo a una gira universitaria?
- Si fueras un estudiante internacional de CS, ¿qué universidad de EE. UU. Elegirías?
- ¿Cuáles son los algoritmos populares que se preguntan en las entrevistas tecnológicas?
- ¿Qué debo hacer con mi vida después de graduarme cuando no me gusta mi especialidad? Tengo 19 años y sin esperanza.
- ¿Cuántas matemáticas necesitas saber para obtener un título en física?
Un ejemplo de un curso de sistemas es CS452 “Programación en tiempo real”, que se ocupa del diseño e implementación de sistemas en tiempo real. Estos son sistemas en los que las operaciones deben completarse en un período de tiempo específico, ni demasiado pronto ni demasiado tarde. La mayor parte del curso consistió en el proyecto que consistió en escribir un núcleo del sistema operativo en tiempo real desde cero y usarlo para construir un sistema de control para un conjunto de trenes eléctricos modelo. Es cariñosamente conocido como el “curso de trenes”.
Otro curso interesante es CS475 “Algrabra lineal computacional”, que se centra en las pruebas de corrección y tiempo de ejecución en las conferencias y exámenes, pero ofrece la oportunidad de implementar algunos algoritmos en las tareas.
Más allá del aula, la escuela tiene algunos de los mayores defensores de la informática en el país. Realizan el concurso de informática más grande para estudiantes de secundaria en Canadá, eso es lo que me hizo interesarme en esta escuela en primer lugar. La escuela también capacita al equipo canadiense para el concurso de programación de la escuela secundaria de la Olimpiada Internacional de Informática (IOI) y cuenta con uno de los mejores equipos en el Concurso Internacional de Programación Colegiada de ACM.
Los graduados de la escuela se pueden encontrar en muchas de las principales organizaciones de desarrollo de software en América del Norte y en todo el mundo. Como resultado, muchas compañías saben qué cursos buscar en la transcripción y qué preguntas hacer durante las entrevistas.
Hablando de trabajos, cualquier discusión sobre la Universidad de Waterloo está incompleta sin mencionar el increíble programa de Educación Cooperativa. En este programa, alterné 4 meses en la escuela y 4 meses en el trabajo. Pude hacer un título de 4 años en 5 años con 2 años de experiencia laboral. Pude aplicar lo que aprendí en la escuela a problemas de programación de la vida real y, a su vez, mi experiencia laboral me ayudó a poner en perspectiva lo que aprendí en cursos posteriores.