Como alguien que estuvo en el mismo barco hace menos de 2 años, solo pasaré por mi propia experiencia.
Primero que todo, ya que tienes la esperanza de ingresar a una de las mejores escuelas (¡buena suerte!), Ya deberías estar bien preparado. Así que realmente no me preocuparía demasiado por eso. Siempre que pueda codificar y depurar cómodamente en algún idioma y esté familiarizado con algunos VCS como git, debería ser bueno.
La mayoría de los programas de Maestría en CS son muy flexibles, donde puede elegir sus propios cursos, por lo que, dependiendo de sus áreas de interés y de cuánto divergen de su licenciatura, la respuesta puede variar significativamente. Sin embargo, la mayoría de los cursos a menudo le brindarán sugerencias sobre el material de requisito previo que debe conocer para comprender el curso. Y los cursos que a menudo no se ofrecen a nivel de pregrado (como, por ejemplo, Biología computacional) abarcarán suficiente terreno en el primer par de conferencias introductorias para que todos estén al día.
- Soy un estudiante en la escuela secundaria. ¿Cómo puedo estudiar para el próximo año?
- Cómo estudiar durante 2 meses sin distracciones.
- ¿Cuál sería su consejo para un junior de UC Berkeley EECS que realmente está luchando para mantener un buen GPA? (Aparte de, 'No dejes que un número te defina')
- Me gusta hacer negocios, pero mi entorno me molesta para centrarme en los estudios y planear una entrevista en el campus. ¿Qué puedo hacer?
- Me queda una prueba más y parece que no encuentro la motivación para estudiar mucho. ¿Que puedo hacer?
Me centraré en dos áreas, donde la mayoría de mis cursos estaban enfocados: Sistemas (OS / Sistemas Distribuidos) y AI (Aprendizaje Automático / Minería de Datos / Robótica / Modelos Gráficos).
Cursos relacionados con la IA:
- Una cartilla en probabilidad es una gran ayuda, por lo que definitivamente recomendaría repasar eso (nuevamente, lo básico debería ser lo suficientemente bueno): regla de la cadena, probabilidad condicional (muy útil) y regla de Bayes, teorema del límite central, etc. También variables aleatorias y algunas de las funciones de densidad de probabilidad comunes.
- Algún álgebra lineal básica puede ser útil también – otra vez, cosas muy básicas como la transposición de la matriz, la inversión, el adjunto de una matriz, la singularidad, etc.
Cursos relacionados con sistemas
- Repasar diversos conceptos de sistemas operativos de licenciatura, como paginación, segmentación, memoria virtual, etc.
- También sería genial si está familiarizado con una implementación real como linux y conceptos de sistemas de archivos, asignación de memoria a través de mmap / sbrk, bloqueo y sincronización, etc.
- Los sistemas distribuidos requerirán que usted tenga algo de práctica con pruebas matemáticas, intente leer algunos de los documentos seminales sobre Paxos, el resultado de FLP, etc. para obtener un sabor.
Algunas otras áreas útiles
Estas son algunas herramientas en general, que te ayudarán a ser más productivo como estudiante graduado:
- Latex: Ojalá ya lo sepas Latex. Sin embargo, a menudo he visto gente tropezar con esto. Aprenda a sentirse cómodo al escribir Latex, incluidas figuras, tablas y ecuaciones matemáticas. Es probable que haga mucho de esto para todas sus tareas / laboratorios / proyectos.
- Gráficos: una vez más, familiarícese con algún software de trazado como GNUplot / matplotlib o algo así. La mayoría de los laboratorios / proyectos estarán basados en datos, por lo que deberá ser bueno en la generación de gráficos.
- Secuencias de comandos: Como mencioné anteriormente, habrá mucha experimentación involucrada: será mucho más eficiente si puede automatizar esto a través de las secuencias de comandos de bash / python.
- Habilidades de entrevista: deberá familiarizarse con los algoritmos si se enfoca en cursos relacionados con la teoría. Incluso de lo contrario, sería una gran ventaja si los repasa mientras tienes tiempo. Esto se debe a que es probable que solicites pasantías, donde se te evaluará en estos aspectos. Nuestra escuela tuvo una feria de carreras muy temprano en el semestre, y casi no tendrás tiempo para mejorar tus habilidades de entrevista una vez que comience la universidad. Recomiendo trabajar en algún libro de programación y entrevista, como Cracking the Coding Interview, para que esté bien preparado y confiado, antes de tiempo y antes de que se sienta abrumado por los cursos.
- Tecnologías Python / Web / Base de datos: intente familiarizarse con todas estas tecnologías orientadas a las aplicaciones. Serán una gran ayuda para asegurar una posición de AR, lo que puede ser una ayuda importante para financiar su camino a través de la escuela de posgrado.
Estas son las primeras cosas que vienen a la mente. ¡Todo lo mejor!