Primero te recomendaré la técnica de este chico para aprender cosas
Thomas Frank
y la segunda cosa como eres uso indio
- ¿Qué se considera un buen portafolio para un graduado en informática?
- Hace dos años estoy tratando de averiguar mi especialidad. ¿Cual es la solución?
- ¿Debería un estudiante de informática asistir a un campo de entrenamiento de codificación?
- ¿Es una buena idea hacer una licenciatura en Ingeniería Eléctrica en lugar de una licenciatura en Ciencias de la Computación porque puedo autoaprender Ciencias de la Computación?
- Cómo obtener un título universitario en ciencias de la computación si tengo una baja calificación en matemáticas
NPTEL Este sitio proporciona casi todos los cursos de campo del maestro de IITian y también puede solicitar un examen (realmente vale la pena): son lentos y muy detallados.
Aquí hay algunos cursos altamente recomendados por Google (tal vez para pasantías) para desarrollo técnico
No le estoy diciendo que complete todos los cursos mencionados a continuación, estos son solo como apoyo para su curso universitario (que está bastante desactualizado, supongo), por lo que le sugiero que intente completar cursos que no están cubiertos en su colegio / universidad.
Tome un curso de “Introducción a CS”
Concéntrese en las instrucciones básicas de codificación.
Recursos en línea:
- Introducción a la informática, Udacity
Yo personalmente recomiendo aprender lenguajes de programación usando archivos PDF con el nombre “Aprenda el lenguaje X de la manera difícil” porque aprenderá la mayor parte usando el compilador predeterminado y todo por su cuenta con la práctica, que es la mejor manera de aprender cualquier idioma y simplemente usar sitios para encontrar el programa práctica.
por ejemplo, aprender Python The Hard Way 3rd Edition.pdf
Aprenda a codificar (al menos) un lenguaje de programación orientado a objetos (C ++, Java®, Python®)
Recursos en línea para programadores principiantes:
- Programación Java: una introducción al software, Duke University, Coursera
- Aprender a programar: los fundamentos, Universidad de Toronto, Coursera
- Introducción a la programación en Java, MIT
- Clase Python de Google
- Introducción a la programación interactiva en Python, Rice University, Coursera
Recursos en línea para programadores más experimentados:
- Programación Java: estructuras de datos y más allá, Universidad de California en San Diego, especialización en Coursera
- Diseño de programas informáticos, Udacity
- Aprenda a programar: Elaboración del Código de Calidad, Universidad de Toronto, Coursera
- Introducción a los lenguajes de programación, Brown University
Aprenda el uso de lenguajes y cosas como JavaScript, CSS, HTML, Ruby, PHP, C, Perl, Shell, etc., estos no están en orden y puede usar Aprender para codificarlos.
Practica tus habilidades aquí
Aprenda a detectar errores, crear pruebas y romper su software.
Recursos en línea:
- Pruebas de software, Udacity
- Depuración de software, Udacity
Desarrollar razonamiento lógico y conocimiento de matemáticas discretas.
Recursos en línea:
- Matemáticas para Informática, MIT
- Introducción al pensamiento matemático, Stanford, Coursera
- Modelos gráficos probabilísticos, Stanford, Coursera
- Game Theory, Stanford y University of British Columbia, Coursera
Desarrollar una sólida comprensión de algoritmos y estructuras de datos.
Aprenda sobre los tipos de datos fundamentales (pila, colas y bolsas), algoritmos de clasificación (clasificación rápida, combinación, clasificación), estructuras de datos (árboles de búsqueda binarios, árboles rojo-negros, tablas hash) y Big O.
Recursos en línea:
- Introducción a los algoritmos, MIT
- Algoritmos Parte 1 y Algoritmos Parte 2, Princeton, Coursera
- Lista de algoritmos, Wikipedia
- Lista de estructuras de datos Wikipedia
- Libro: Manual de diseño del algoritmo, Steven S. Skiena
Desarrollar un sólido conocimiento de los sistemas operativos.
Recursos en línea:
Computer Science 162, UC Berkeley, YouTube
Aprende el desarrollo de Android
Recursos en línea:
- Google Developer Training para Android, en Udacity
Aprender desarrollo web
Recursos en línea:
- Google Developer Training for Web, en Udacity
Aprende otras habilidades de desarrollador
Recursos en línea:
- Sitio de capacitación para desarrolladores de Google
Aprende criptografía
Recursos en línea:
- Criptografía, Stanford, Coursera
- Criptografía Aplicada, Udacity
Trabajar en proyectos fuera del aula.
Cree y mantenga un sitio web, cree su propio servidor o cree un robot.
Recursos en línea:
- Proyecto Capstone: Análisis de datos de redes (sociales): desplácese hacia abajo hasta la parte inferior de la página, UCSD, Coursera
- Proyecto Capstone: Programación Java: una versión de bricolaje de Netflix y motores de recomendación de Amazon, Duke University, Coursera
- Directorio de proyectos, Apache
- Archivo de proyectos de Google Summer of Code
Trabaje en una pequeña parte de un sistema grande (base de código), lea y comprenda el código existente, rastree la documentación y depure
GitHub es una excelente manera de leer el código de otras personas o contribuir a un proyecto.
Recursos en línea:
- GitHub®
- Kiln ™
Practica tus conocimientos algorítmicos y habilidades de codificación
Practique su conocimiento algorítmico a través de competencias de codificación como CodeJam o el Concurso Internacional de Programación Colegiada de ACM.
Recursos en línea:
- CodeJam
- ACM ICPC
Adquirir experiencia en prácticas en ingeniería de software
Encuentre las pasantías de Google en Ingeniería y Tecnología en nuestro sitio de Estudiantes.
Recurso en línea para prepararse para la entrevista para puestos de ingeniería de software, incluso para pasantías:
- Dominando la Entrevista de Ingeniería de Software, UCSD, Coursera
(Lo siento, pero el crédito total va a Google. Sé que es malo copiar todo, pero también soy un estudiante de primer año que recibe ayuda con estos cursos)
Fuente: Estudiantes – Guía de desarrollo técnico – Carreras de Google
Espero que estos cursos te ayuden y esas pequeñas sugerencias de mí 🙂