- Автор темы
- #1
Команда Google рассказала о том, какими навыками и умениями должны обладать программные инженеры и программисты, а мы делимся их советами с вами и приводим перечень рекомендованных образовательных курсов.
Несомненно, в Google работают одни из самых квалифицированных инженеров и программистов в мире. Недавно на сайте поисковика появилась отдельная страница, где представлены курсы и инструменты для онлайн-образования, которые необходимо знать всем инженерам и программистам.
Прохождение образовательных программ не гарантирует работу в Google, о чём компания говорит в отдельной сноске. Но это невероятно круто — узнать о том, какие курсы по мнению одной из лучших компаний в мире должен пройти каждый уважающий себя программист и инженер.
С перечнем курсов в оригинале вы можете ознакомиться здесь, а мы предлагаем их перевод.
Рекомендации по образованию
Несомненно, в Google работают одни из самых квалифицированных инженеров и программистов в мире. Недавно на сайте поисковика появилась отдельная страница, где представлены курсы и инструменты для онлайн-образования, которые необходимо знать всем инженерам и программистам.
Прохождение образовательных программ не гарантирует работу в Google, о чём компания говорит в отдельной сноске. Но это невероятно круто — узнать о том, какие курсы по мнению одной из лучших компаний в мире должен пройти каждый уважающий себя программист и инженер.
С перечнем курсов в оригинале вы можете ознакомиться здесь, а мы предлагаем их перевод.
Рекомендации по образованию
- Пройдите вступительный курс компьютерных наук: Udacity, Coursera.
- Научитесь программировать хотя бы на одном ООП языке: C++, Java, Python:
Для новичков: Coursera — обучение программированию, курс MIT по Java, курс Google по Python, курс Coursera по Python.
Для среднего уровня: Udacity — дизайн компьютерных программ, Coursera — создание качественного кода, Coursera — языки программирования, курс Брауновского университета — вступление в программирование. - Изучите другие языки программирования: JavaScript, CSS, HTML, Ruby, PHP, C, Perl, Shell. Lisp, Scheme: туториал по HTML, codeacademy.com.
- Научитесь тестировать код: Udacity — методы тестирования, Udacity — отладка программ.
- Знание дискретной математики: курс математики для программистов MIT.
- Понимание алгоритмов и структуры данных: вступительный курс MIT об алгоритмах, Coursera — вступительный курс об алгоритмах (часть 1 и часть 2), список алгоритмов, виды структур данных, книга об алгоритмах.
- Понимание работы операционных систем: курс Беркли.
- Изучить искусственный интеллект: вступление в роботостроение, курс Стэнфорда, машинное обучение.
- Создание компиляторов: курс Coursera.
- Знание криптографии: курс Coursera о криптографии, курс Udacity о криптографии.
- Знание параллельного программирования: курс Coursera.
- Создайте сайт, постройте собственный сервер или создайте робота: список проектов Apache, Google Summer of Code, команда разработчиков Google.
- Разработайте небольшую часть большой системы, прочитайте и поймите код, изучите программную документацию, отладьте программу. Вспомогательные ресурсы: GitHub, Kiln.
- Работайте над проектом в команде. Вы будете учиться у других и научитесь командной работе.
- Улучшайте навыки программирования и знание алгоритмов: CodeJam, ACM ICPC.
- Учите других.
- Станьте интерном: google.com/jobs