Мой путь к успеху
В компании Google я занимаюсь разработкой веб-приложений. Я не считаю себя суперпрограммистом, и, если честно, то не нужно быть таковым, чтобы попасть в Google. Если ты решил поставить себе цель – работать в топ-компании, то знай, что это вполне реально. Начинай готовиться уже со школьной скамьи. Если хочешь долгосрочно развиваться и расти, то важнее не прикладные, а фундаментальные знания. Я рекомендую активно принимать участие в олимпиадах по математике и информатике. Лично мне это очень помогло, потому что работа программиста – это решение задач. Сначала я участвовал в школьных, а затем в международных олимпиадах. Самые престижные из них – Международная математическая олимпиада и Международная олимпиада по информатике. Эти постоянные «тренировки» мозга в детстве помогают мне сейчас мыслить нестандартно и быстро усваивать новые знания. А это большой плюс при трудоустройстве в тот же Google.
Можно пойти и другим путем. Сразу начинать учить языки программирования, например, HTML, Python, а не корпеть над олимпиадными задачами. И все-таки, знание математики и хорошо развитое логическое мышление – это лучший фундамент для успеха в нашей профессии. Это базовые знания, которые не устареют. После этого я советую начинать осваивать информатику и программирование, но не совсем в том виде, что дают в школьной программе. Лучше найти онлайн-курсы по программированию для детей, подростков. Почти все они созданы в игровой форме. Например, на онлайн-платформе Codecademy легко можно выучить 12 самых распространенных языков программирования.
Постарайся изначально выбрать одну специализацию в IT, чтобы стать сильным программистом в какой-то определенной области. Сейчас очень популярны робототехника, разработка мобильных приложений, создание компьютерных игр. В зависимости от специализации, ты четко будешь понимать, что тебе изучать дополнительно. И еще от выбранного направления будет зависеть твоя дальнейшая специальность в вузе, карьера и т.д.
Чтобы сделать правильный выбор, попробуй создать какую-нибудь простую игру, сайт или приложение и понять, какая часть работы тебе наиболее интересна.
Профильный университет или самообразование?
Мы знаем, что современные технологии меняются практически каждый час. Значит, для получения IT-специальности очень важно выбрать вуз, где будут давать актуальные и качественные знания. Я окончил Казахстанско-турецкий лицей и Казахстанско-Британский технический университет. Однако в IT-сфере нельзя обойтись без самообразования, нужно постоянно учиться и практиковаться. Кстати, многие успешные программисты – самоучки, и, если честно, когда я начинал работать в Google, мой диплом был не так важен.
После учебы, когда ты будешь работать в IT-сфере, необходимо постоянно быть «на новой волне», что бы вы не начинали учить сейчас, через пару лет уже устареет. Например, я часто практикуюсь и вношу свои правки и получаю отзывы в open-source проектах (программное обеспечение с открытым исходным кодом, в который любой пользователь может вносить изменения, изучать его, а также использовать для создания новых программ – прим.). Так я оттачиваю свои навыки программирования. Кстати, те программисты, которые исправляют ошибки в открытом коде какой-либо программы, могут быть замечены и приглашены на работу. Ты тоже можешь попробовать.
Какие личные качества должны быть у хорошего программиста?
Чтобы быть хорошим IT-специалистом, недостаточно только умения программировать. В нашей профессии очень важно уметь работать в команде. Когда я только устроился в Google, у меня было недостаточно навыков и знаний, и я часто спрашивал совета у более опытных сотрудников. Я постоянно контактирую с коллегами и работаю слажено с ними. Хороший программист должен эффективно презентовать свои идеи. Коммуникабельность особенно понадобится тебе для того, чтобы убеждать коллег, членов команды в рабочих вопросах. Другие важные качества - системно думать и концентрироваться на деталях, потому что постоянно надо решать интересные и сложные, даже невозможные задачи.