sonyps4.ru

Как стать ит специалистом. Обучение программированию с нуля – пошаговое руководство для начинающих

Многие люди понимают, что сейчас есть устойчивый спрос на IT специалистов и хотят становиться специалистами, чтобы получить пристежную работу. Но на то и IT сфера, что она постоянно динамично развивается. И как тогда получить знания в IT сфере, чтобы стать хорошим специалистом. Где взять актуальные знания, применением которых можно зарабатывать деньги. В этой статье будут приведены советы по IT обучению.

  1. Поставьте четкую цель. IT специальностей великое множество, вам нужно определиться чем именно вы хотите заниматься. Вы не можете стать специалистом во всех сферах, вы можете хорошо овладеть только одной профессией. К обучению нужно подходить системно, поставить цель, что вы хотите изучить, и подобрать подходящую программу обучения.
  2. Составьте план обучение. Составление четкого плана — залог успеха. Если у вас будет план обучения, то вы сможете себя контролировать — на сколько вы приблизились к выполнению вашей цели.
  3. Практика. Старайтесь не зацикливаться исключительно на теории. Старайтесь применять полученные знания на практике, чтобы проверить актуальны и практичны ли те знания, которые вы получаете. Если вы будете тестировать ваши знания, вы будете видеть какие знания более актуальны, чтобы фокусировать свое внимание именно на изучении актуальной информации.
  4. Будьте самостоятельны. Вы не сможете учиться вечно. А если финансы поют романсы, то полный курс так же не получится пройти. Все-таки, индивидуальное обучение стоит дороже, чем курсы. Поэтому, ищите интересующую информацию самостоятельно. В сети есть масса уроков, мастер-классов, видео, некоторые абсолютно бесплатно. Также дополнительную информацию можно найти на специализированных форумах и тематических блогах. Кроме того, совет на форуме можно получить также бесплатно, а еще найти потенциальных клиентов. Если вы проявите упорство, вы сможете получить абсолютно любые знания. Вы сможете научиться работать в фотошопе, научитесь делать печать cd и многое другое. Только нужно быть уверенным, что вы получаете советы от профессионала, а не от дилетанта, которых на форумах полным-полно.
  5. 50% успеха зависит от преподавателя. Понятно, что вы стараетесь найти наставника-профессионала, желательно с многолетним опытом и практикой. У него может быть прекрасное портфолио, а также сотни благодарных учеников. Однако не факт, что вы сможете сотрудничать с ним. Человек должен быть вам симпатичен. А если вам с ним некомфортно, обычно, это станет понятно через несколько занятий, то лучше не тратить время ни свое, ни его, и попрощаться. Но не забывайте, что преподаватель, это не приятель на лавочке. Относитесь к нему с уважением, не живите по принципу, «тот, кто платит, заказывает музыку». Возможно, вы еще не готовы учиться.

Также запомните, даже в случае качественного обучения, вы продолжаете находиться на старте. От вас зависит, будете вы развиваться дальше самостоятельно, или останетесь на том же уровне, сделаете веб-дизайн своей профессией, или создадите единственный сайт для своих нужд. Решайте сами, чего вам не хватает.

Видео.
Очень полезное видео о том, как «прокачать свои скилы» и стать хорошим IT специалистом.

Компьютерные технологии стал основой для дальнейшего производства большинства материальных благ для нормального существования. Поэтому иметь знания в отрасли управления системой, знать его базовые особенности и алгоритмы должен каждый. Обучение компьютерной науки, в частности программирования, позволит отлично держаться на собственных ногах в нынешнем мире.

В каких отраслях человеческой деятельности активно присутствует компьютерная техника:

  • наука;
  • медицина;
  • образование;
  • производство.

Как не трудно заметить, практически в каждой сфере необходимо пользоваться благами современности. Они не понадобятся разве что человеку, который возжелает жить на одиноком острове и питаться бананами.

Но не все могут быть образованными в компьютерном мире. Из-за широкой популярности, обучиться всем необходимым пунктам для комфортной работы с компьютером стоит денег, особенно за границей. Поэтому IT-программистами некоторые индивидуумы пытаются стать самостоятельно. Это намного сложнее, нежели обучаться за конкретной программой, и тут спорить никто не будет.

Значение программирования в работе с техникой

Компьютер - это машина, позволяющая выполнять разный спектр действий. Она разработана не только для досуга, как это чаще всего преподносят. Задолго до существования современного компьютера, перед разработчиками была проблема в лице управления конструкцией. Поэтому было решено создать небольшие команды, которые влияли бы на его дальнейшую профессию. То есть создатели решили сделать метод управления компьютером нажатием кнопок. Структура близка системе конвейерного производства: за все про все отвечает одна кнопка.

Компьютеры развивались, становились сложнее, запутаннее, много функциональнее. Со временем они перестали быть только средством передачи данных. С каждым последующим годом компьютер выполнял все больше и больше команд. Это все становилось основной причиной расширения его коренного программирования. То есть с расширением его функционала, становилась сложнее и сетка управления. Это стало причиной появления уроков по программированию. То есть спектр всех команд и функциональных комбинаций настолько увеличился, что без предварительной подготовки освоить его сложно.

На данный момент присутствуют не только определенные команды для работы компьютера, а и создавались разные системы. Самыми известными есть:

  • Android, Google;
  • Windows, Microsoft;
  • iOS, Apple;
  • Linux, Canonical;

Каждая система строиться на индивидуальном древе моделирования функциональности. То есть каждая операционная система будет работать лишь на собственных алгоритмах. Без знаний в этой отрасли будет проблематично использовать компьютер на полный его функционал, что приведет к разочарованию.

Компетентность в отрасли компьютерной инженерии позволяет намного лучше разбираться в работе компьютера, разрабатывать собственные методы его активного использования, а также эффективно экономить время в деятельности. Но добиться этого непросто. Подробная разборка всех азов программирования занимает не один день старательного обучения. Из-за скромных знаний в компьютерной инженерии, большинство людей предполагает, что тратить силы и деньги на обучение управления компьютером бесполезно. Здесь присутствует мысли о том, что управлять компьютеров - это наживать на кнопку «Впуск» и загружать примитивные программы.

Однако программирование разрешает использовать не только поверхностные системы управления работой, а и изменять ее по собственному желанию.

Эффективность программирования

Понятное дело, что работа с компьютером не для всех. Есть те, кому намного легче строить дома, обслуживать персонаж или готовить кулинарные шедевры. Из-за неполного раскрытия потенциала еще молодой науки, значение немного опускается. Что же можно делать на самом деле, имея за спиною весь багаж знаний о программировании? Этот вопрос не сложный, если смотреть со стороны IT-специалиста.

Программирование раскрывает такие возможности как:

  1. Создавать собственные программы.
  2. Изменять режимы.
  3. Возможность контролировать его производительность.
  4. Конфигурацию с другими учетными записями и техникой.

Большинство курсов программирования стоят неплохих денег, что значительно уменьшает круг желающих освоить ЕОМ до единиц. Есть и такие люди, в которых присутствует большое желание обучиться программированию, но они не обладают финансовыми возможностями. Это мотивирует их самостоятельно получать важные знания для дальнейшей работы.

Как же стать IT-специалистом без образования?

Теперь необходимо рассмотреть все действительно качественные методы обучения компьютерной науке без глобальных программ и школ соответствующего направления.

Первым способом есть использование контента на видеохостигах. Известно, что видеоматериалы намного лучше усваиваются человеком. Поэтому видеохостинги активно используются новичками в деле моделирования программ. Многие люди, дабы развить собственные каналы, набрать подписчиков, используют навыки изначального моделирования утилит.

Статьи в сети и практические занятия. В интернете написано множество разнообразных статей, инструкций, уроков по освоению навыков программирования. Они расписывают каждый шаг, клик, который должен быть в работе. Где и какая галочка, буквенный знак должны стоять, чтобы работала вся программа. Особенностью этого вида обучения заключается в непосредственной практике на своем компьютере. То есть все написанное производится сразу же после прочтения. Этот метод называется пошаговым. Читается первый абзац, выполняется на машинах, читается второй - выполняется на машинах.

Третий метод заключается в помощи знакомых и более опытных пользователей, юзеров. Иными словами, репетиторство. Прискорбно это признавать, но наличие диплома с компьютерной инженерии - это еще не показатель. Этот подтверждают многократные случаи самоучек, которые изучали основы и особенности моделирования с помощью индивидуальных уроков. Известные люди сумели, и добились желаемого таким методом. Наличие опытного учителя гарантирует неплохое освоение, и мгновенную корректировку усваиваемой информации более опытным лицом.

После первого этапа к званию «специалист» компьютерной сферы, необходимо найти работу. Известно, что практика играет такую же важную роль, как и теория. Отсутствие диплома прибавляет проблем в поисках работы. Придется изначально зарекомендовать себя. Это все происходит на стажировке. Данный этап склоняет человека к выполнению заданий конкретного направления. Работодатель первые дни присматривается к взятому на занятость человеку, если он смышленый, действительно разбирается в предложенной работе, то и важность образования постепенно уменьшается.

Поэтому важно всегда стараться использовать весь спектр собственных возможностей для достижения цели, в нашем случае, получению рабочего места в качестве IT-специалиста. Возможны ошибки и промахи. От этого никто не застрахован. Однако желание дальше обучаться, перспективы и твердый характер всегда будет склонять чашу весов в вашу пользу.

Особое внимание на современные технологии следует обратить внимания тем, у кого присутствует подлинный интерес к разработкам программ, созданию игр, написанию кодов к утилитам, прошивке девайсов. Подобное хобби может с легкостью перерасти в высокооплачиваемую работу, стоит только приправить все это чуточкой знаний в разработке систем для техники. Как известно, самая приятная работа - это дорогое хобби. В современном мире людей, способных сделать так ценят, и достаточно высоко.

Начать свой путь к карьере программиста стоит с ответа на вопрос, нужно ли вам программирование вообще? Этот вопрос не относится к тем, кто учится или учился по специальности, близкой к программированию. Если вам в школе математика давалась лучше, чем гуманитарные науки, если вам нравится проводить много времени за компьютером, если вам хочется изучать что-то новое, тогда программирование вам подойдёт.

С чего начать

Есть несколько вариантов развития событий, в результате которых человек становится программистом. Первый - родители-программисты, которые всему научили своих детей. Таким детям даже не нужно идти в университет. Второй вариант - модная профессия программиста. После школы нужно было выбрать, куда пойти учиться, и выбрали модное направление IT, вроде бы понравилось. И последний вариант - хобби, которое переросло в работу.

Если с вами ничего из вышеперечисленного не произошло, значит, у вас есть выбор из четырёх вариантов:

  • Самообразование . Этот вариант можно использовать как самостоятельно, так и в паре с другими методами. В интернете полно , и приложений , которые помогают изучать различные языки программирования и технологии. Но это самый тяжёлый путь для начинающих.
  • Университет . Если вы оканчиваете школу и хотите быть программистом, тогда идите в университет. Если не за знаниями, тогда за корочкой. Она может послужить бонусом при устройстве на работу. Хотя и какие-то знания вы тоже получите. Но не забывайте заниматься и самообучением. К выбору вуза стоит подойти очень ответственно. Внимательно изучите программы обучения и выбирайте лучшие технические вузы.
  • Ментор . Будет очень неплохо, если вы найдёте человека, который согласится помочь вам и направит вас в правильную сторону. Он подскажет подходящие книги и ресурсы, проверит ваш код, даст полезные советы. Кстати, мы уже писали о , где вы сможете найти ментора. Наставника можно искать среди знакомых программистов, на IT-тусовках и конференциях, на онлайн-форумах и так далее.
  • Специализированные практические курсы . Попробуйте поискать в своём городе курсы, где вас обучат какому-нибудь языку программирования или технологии. Я был приятно удивлён количеством таких курсов в Киеве, в том числе бесплатных и с последующим трудоустройством.

Какой язык, технологию и направление выбрать

Когда вы станете программистом, через годик-другой будете вольны выбирать любой язык, который вам нравится. Но при выборе первого языка программирования новичок должен учитывать следующие критерии:

  • Наличие на рынке вакансий . Конечная цель этого пути - найти работу программистом. А это будет трудно сделать, если на рынке вакансий никто не будет искать разработчиков на вашем языке программирования. Проверьте сайты с вакансиями, посмотрите, кого больше ищут, выпишите десяток языков. И переходите к следующему критерию.
  • Низкий уровень вхождения . Если вам придётся потратить длительное время на изучение языка, это может отбить у вас охоту к программированию вообще. Почитайте о тех языках, которые вы выбрали выше. Просмотрите литературу, которую нужно будет прочитать, чтобы изучить эти языки. И выберите те, о которых пишут, что они лёгкие, или которые вам показались лёгкими. Такими языками могут оказаться PHP, Ruby, Python.
  • Кайф от процесса . Если вам не нравится писать код на выбранном языке, вы не будете получать удовольствия от этого процесса, от работы и от жизни. А оно вам надо? Делайте правильный выбор.

Также вам придётся определиться с направлением программирования. Мобильное, десктопное, игры, веб, низкоуровневое программирование и так далее. Самые популярные и относительно лёгкие отрасли - разработка под веб, мобильные и десктопные клиенты. Под каждое направление может подходить один язык и совсем не подходить другой. То есть при выборе языка программирования также стоит отталкиваться и от этого фактора.

В любом случае изучите веб-технологии. Это язык разметки , стили и , который позволит сделать вашу страницу динамической. На следующем этапе изучите серверный язык (Python, PHP, Ruby и другие) и подходящие для него веб-фреймворки. Изучите базы данных: практически в каждой вакансии программиста это упоминается.

Как получить начальный опыт

Без опыта вы не получите работу. Без работы вы не получите опыт. Замкнутый круг реальной жизни. Но ничего страшного, мы из него выберемся.

Во-первых, не стоит ждать, пока вы прочитаете все книги по выбранному языку программирования. Начинайте писать свои первые строки кода уже после второй главы книги. Выполняйте все задания из книг, перепечатывайте примеры, разбирайтесь в них. Усложняйте примеры и задания из книг своими идеями. Создавайте свои задачи к пройденному материалу. Решайте эти задачи.

Во-вторых, вам нужно найти свои первые проекты. Это, наверное, самый сложный вариант, но рабочий. Вам придётся самому искать заказы, выполнять их, заморачиваться с оплатой. Для новичка это архисложно, но зато затем все остальные варианты покажутся плёвым делом. Выполненные проекты можно будет записать в опыт и показать вашему будущему работодателю. Реальные проекты являются большим плюсом в вашем резюме.

Если вы знаете английский язык, регистрируйтесь лучше на англоязычных биржах. Рынок там больше. Если не знаете английского, учите его. А пока что вам доступны русскоязычные биржи фриланса. Ищите небольшие проекты, которые соответствуют вашему уровню знаний или чуть выше него. Подайте заявку на пару десятков таких заданий. И приготовьтесь получить море отказов. Но если одна-две заявки выстрелят, у вас будет шанс получить реальный опыт.

Ещё одним неплохим вариантом для получения реального опыта является open source. Таким проектам всегда нужны новые люди, пусть даже и новички. Вы можете поискать в проекте баги или посмотреть в баг-трекере и предложить методы их решения. Найти такие проекты легко на GitHub или . Не стесняйтесь задавать там вопросы.

Четвёртый вариант получения опыта - помощь знакомым программистам. Попросите их передать вам маленькие и несложные задания. Если что-то не будет получаться, у вас всегда будет к кому обратиться. И при этом вы будете участвовать в реальном проекте.

Последний способ - собственные проекты, различные хакатоны или работа в коворкинге. Свои проекты сложно начинать самому, лучше поискать знакомых или друзей.

Почему стоит выбрать Python

Давайте немного подробнее поговорим о выборе первого языка программирования. Первый язык должен быть простым и популярным на рынке. Таким языком является Python . Я очень советую выбрать именно его в качестве первого языка программирования.

Код программы на Python читабелен. Вам даже не нужно быть программистом, чтобы в общих чертах понять, что происходит в программе. Из-за несложного синтаксиса Python вам понадобится меньше времени для написания программы, чем, например, на Java. Огромная база библиотек, которая сэкономит вам кучу сил, нервов и времени. Python является высокоуровневым языком. А значит, вам не нужно особо думать о ячейках памяти и о том, что там разместить. Python - язык широкого назначения. И он такой простой, что даже дети могут его выучить.

Справедливости ради стоит упомянуть и о других языках программирования. Java может стать неплохим выбором для новичка. Этот язык популярнее, чем Python, но и немного сложнее. Зато инструменты для разработки гораздо лучше проработаны. Стоит только сравнить Eclipse и IDLE. После Java вам будет проще перейти к работе с низкоуровневыми языками программирования.

PHP - ещё один очень популярный язык. И, мне кажется, он даже проще, чем Python. Очень легко найти себе ментора или решение какой-нибудь проблемы на форуме. Всё потому, что в мире существует огромное количество PHP-программистов разного уровня. В PHP нет нормального импорта, есть множество вариантов решения одной и той же задачи. А это усложняет обучение. И PHP заточен исключительно под веб.

Языки C и C# очень сложны для новичка. Ruby - хороший выбор в качестве второго языка, но не первого. JavaScript - очень простой язык, но ничему хорошему он вас не научит. А задача первого языка программирования всё-таки научить вас чему-то правильному, задать какую-то логику.

Важен ли английский язык

Важен! Не знаете? Учите. Знаете? Совершенствуйте. Учитесь читать, писать, слушать и говорить на английском. Делайте упор на техническую литературу. Слушайте англоязычные подкасты. Читайте англоязычные учебники по программированию.

Что нужно знать, кроме языка программирования

Конечно же, кроме языка программирования и английского, нужно знать что-то ещё. А вот что - зависит от направления, которое вы выберете. Веб-программист обязан знать HTML, CSS, JavaScript. Десктоп-программист учит API операционной системы и различные фреймворки. Разработчик мобильных приложений учит фреймворки Android, iOS или Windows Phone.

Всем нужно выучить алгоритмы. Попробуйте пройти курс на Coursera или найти подходящую для себя книгу по алгоритмам. Кроме этого, нужно знать одну из баз данных, паттерны программирования, структуры данных. Стоит также познакомиться с репозиториями кода. Хотя бы с одним. Обязательно знание систем версионного контроля. Выбирайте Git, он самый популярный. Вам нужно знать инструменты, с которыми вы работаете, операционную систему и среду разработки. И главный навык программиста - уметь гуглить. Без этого вы не проживёте.

Последние шаги

Вам нужно подготовить резюме. Не просто резюме, а . Не стоит писать там , но и умалчивать о своих умениях тоже не нужно. После того как вас пригласят на интервью, вы должны к нему подготовиться. Пройдитесь по материалу, который указан в вашем резюме. Вы должны быть уверены в своих знаниях. Просмотрите проекты, над которыми вы работали, вспомните технологии, которые вы применяли. И вперёд - к светлому будущему с новой профессией программиста.

    Изучите аппаратное обеспечение компьютера. Аппаратное обеспечение - это то, что составляет физическую основу компьютера, а также средства передачи данных между компьютерами.

    Изучите программное обеспечение компьютера. Программное обеспечение - это то, что заставляет компьютер работать. Понятие «программное обеспечение» включает приложения, протоколы и операционную систему.

    Изучите конфигурацию своего компьютера. Есть специальные программы для определения конфигурации компьютера на случай, если вы не можете определить их навскидку, например, CPU-Z.

    Научитесь пользоваться командной строкой, но пользуйтесь ей только когда нужно. Научиться пользоваться командной строкой в Windows или терминалом в Linux очень важно, чтобы как минимум повысить эффективность пользования компьютером. В Windows командная строка не очень нужна, но все же это хорошая идея - научиться ей пользоваться. Однако, в Linux или UNIX, Mac или BSD, а также в других операционных системах на основе UNIX важно уметь пользоваться командной строкой для того, чтобы работать более эффективно, используя скрипты bash.

    Научитесь печатать слепым методом. Это не особенно важный пункт, но он однозначно повысит практичность и производительность вашей работы за компьютером.

    Спрашивайте. Если кто-то делает что-то интересное за компьютером, о чем вы хотите узнать, спросите его об этом.

    Изучите язык программирования. Это одна из самых важных вещей, которые нужно сделать. Не путайте разные типы языков. Интерпретируемые языки, такие как BASIC, не очень хороши для настоящего программирования, но если все, что вы хотите, это писать простые компьютерные игры, то он подойдет. HTML или CSS используются в веб-страницах, изучить их - хорошая идея, но они не очень полезны для настоящего программирования. Рекомендуется выучить скриптовый язык командного интерпретатора (например, bash), поскольку он даст силу и эффективность программисту-новичку или администратору. Однако, вы можете изучить любой язык, какой пожелаете.

    Изучайте основы ремонта компьютеров. Это поможет исправить неполадки в своём или чужом компьютере, а также повысит вашу репутацию компьютерного специалиста. Вы можете изучить продвинутые методы, но это может потребовать уроков настоящего специалиста.

    Сотрудничайте с другими людьми над решением компьютерных проблем. Взаимодействуя с другими пользователями, вы можете узнать от них то, чего до этого не знали, и наоборот. Однако, поскольку вы хотите стать компьютерным специалистом, вы всегда должны хотеть знать о компьютере больше, чем ваши друзья.

    Помогайте другим решить их компьютерные проблемы. Это не только сделает вам имя, но и будет хорошей практикой, а также поможет вам узнать о ситуациях и проблемах, с которыми вы до сих пор не сталкивались.

    Научитесь устанавливать и обновлять драйвера для различных типов оборудования. Эти знания пригодятся, когда вы будете переустанавливать свою операционную систему.

    Научиться распознавать нежелательное программное обеспечение (компьютерные вирусы, программы-шпионы и другие гадости) перед тем, как начинать ежедневные антивирусные проверки.

    Используйте хороший брандмауэр. Обычные люди плачут, потому что не понимают, как им пользоваться. Но вы, конечно, знаете как им пользоваться!

    Используйте операционные системы с открытым исходным кодом. Большинство компьютерных специалистов используют открытые операционные системы такие, как *BSD или Linux, потому что обычно они бесплатные и позволяют делать такие классные вещи, как программирование, запуск серверов и использование командной строки (CLI).

    Используйте клавиатурные сочетания. Важно знать клавиатурные сочетания, поскольку они, секунда за секундой, экономят ваше бесценное время.

    Узнайте, как работает интернет.

    Все гениальное просто. Избегайте запутанных идей. Лучше сфокусируйтесь на изучении знаний и умений, которые в будущем понадобятся вам для претворения в жизнь ваших больших идей.

    Расширяйте свои знания. Настоящий компьютерщик всегда учится новому. Если вы чего-то не понимаете, вы всегда можете попросить о помощи. Собирайте и анализируйте знания. Читайте статьи в Википедии, участвуйте в компьютерных форумах по своему языку программирования или просто в обычных форумах и задавайте вопросы. Если у вас проблемы с обучением, запишите вопросы на бумагу и устройте себе викторину. Постоянно изучайте новое о компьютерах любыми удобными для вас способами.

    Компьютерный специалист должен разбираться в системах счисления. 1 бит данных - это двоичная единица, 1 или 0. 8 бит составляет 1 байт. Большинство людей считает, что килобайт - это 1000 байт, на самом деле это 1024 байта. Узнайте, сколько байт в килобайте (KB), мегабайте (MB), гигабайте (GB) и так далее. Когда вы это запомните, вы будете чувствовать себя увереннее в двоичной системе счисления. Далее изучите восьмеричную и шестнадцатеричную системы счисления, и как конвертировать числа из одной в другую. Когда вы поймете почему программисты всегда путают Рождество и Хелоуин, вы найдете свой собственный путь, чтобы стать настоящим компьютерным специалистом.

Наверняка у вас есть знакомые, которые работают или получают образование в весьма отдалённой от IT сфере, но время от времени интересуются, как можно переквалифицироваться в успешного и достойно зарабатывающего IT-специалиста.

Сегодня на вопросы о том, с чего начать карьеру в IT, ответили представители тренинг-центра ЕРАМ: Евгений Пешкур, заместитель директора по подготовке персонала, Святослав Куликов, менеджер отдела по функциональному тестированию, Александр Барановский, руководитель образовательных программ по тестированию, и Светлана Захаренко, Java-тренер.

1. Хочу работать в сфере IT, но не знаю, с чего начать. Что посоветуете?

Евгений Пешкур:

Трудно советовать, не зная стартовых условий. Посоветую для среднего пользователя PC, уверенно овладевшего Counter Strike, форумами и социальными сетями.

Учите английский язык. Без шуток. Если вы не восприняли это серьезно, дальше можно не читать. Изучение английского до минимального уровня, применимого в компаниях, работающих на внешние рынки (уровень B1 , если кому интересно) занимает год-полтора. Знание другого иностранного языка будет плюсом, но никак не заменой. Вам простят незнание какой-либо технологии, но не отсутствие языковой подготовки.

В основе всего лежит то, чему учат все ВУЗы, - способность самостоятельно искать и изучать материал . Многие, не осознавая этого, рассматривают курсы как место, где их «возьмут за руку и приведут к успеху». На самом деле, вас приведут к промежуточному финишу, дадут сертификат (оценку, диплом) и далее сделают в блокнотике пометку «профнепригоден». И это будет связано не с результатом финального теста, а с вашим образом мышления. И опытный преподаватель это очень быстро определит, проверяя и обсуждая с вами ваше задание. «Незагугленное» и осмысленное решение (пусть и не работающее, даже попытка его создания), отходящее от того, что он сам преподал днем ранее, для него будет очевидным.

Начните с азов. Смешно и нелепо, но добрая половина из тех, кто идёт на курсы, не знают, что такое бит и байт. Замечали возмущения типа «платил за винчестер на 40 GB, а дали всего на 38»? Почитайте, что такое сети и каковы общие принципы их работы. Познакомьтесь с базовыми понятиями типа ascii, heap, process & thread, прерывание.

ООП. Тут при всей простоте определений всё сложно. К сожалению, простое изучение определений не даёт ничего. Наверное, это одно из немногих мест, где самостоятельное изучение малоэффективно. Попробуйте рассматривать ООП как образ мышления. Понимание ООП приходит через многократное написание и переписывание кода и общение с теми, кто его понял. Простых советов нет, но могу поставить цель: скорее всего вы действительно поняли ООП, если разобрались в работе и смогли написать программу типа Elastic Nodes .

Структуры данных и алгоритмы. Этого также не даст почти никакой из курсов, чаще всего предполагается, что это вы изучили в школе или вузе. Джентельменский набор терминов к изучению: дерево, стек, очередь, хеш. Алгоритмы… Не будем лезть в бутылку и советовать изучить теорию графов, но разобраться с различными алгоритмами надо. Как отсортировать массив (желательно знать и понимать несколько алгоритмов). Ваша цель - понять quick sort. Какие существуют способы обойти дерево.

Как видите, здесь почти не надо ходить на курсы, разве что на английский. Просто не игнорировать то, что вам преподают. Или суметь самостоятельно разобраться, если желание выспаться часто побеждало необходимость посещать скучные пары. Если мои намёки слишком туманны, то резюмирую: АНГЛИЙСКИЙ и немедленно! И понять все термины, упомянутые выше.

На мой личный взгляд, вы НЕ программист, если не способны в игрушке создать танк, побеждающий стандартный набор примитивных танков.

Александр Барановский :

IT - достаточно широкая и объёмная сфера с десятками профессий и специализаций. Поэтому первым шагом является выбор и осознание того, чем именно вы хотите заниматься. Потому что для каждой профессии нужно обладать определённым набором навыков, умений и складом ума. После того как определились с выбором, берёте лист А4 и с одной стороны записываете, что необходимо знать и уметь для начала карьеры в выбранной позиции (программист, специалист по тестированию, бизнес-аналитик и т.д.), а с другой - те знания и навыки, которыми вы обладаете на текущий момент. Точками, на которые стоит обратить внимание и с которыми стоит работать, являются «недостающие» вещи из списка умений. А тут все средства хороши - тренинги, книги, форумы.

Светлана Захаренко:

Мне кажется, начать нужно с понимания, почему вы хотите работать в сфере IT. Чем именно эта сфера привлекает вас, и что является основным мотивирующим фактором. Понимание позволит правильно расставить приоритеты и выбрать нужное направление.

Очень важно понять, чем именно в сфере IT вы хотите заниматься. Говоря о работе IT-специалиста, я бы рискнула провести аналогию с медициной. Медицина - большая область знаний, которая включает в себя множество направлений и профессий, и когда люди решают связать свою профессиональную деятельность с медициной, они скорее исходят из понятия «Я хочу быть врачом-стоматологом» или «Я хочу быть врачом-терапевтом».

2. У меня гуманитарное образование. Можно ли переучиться на программиста?

Евгений Пешкур:

Да. Кто такой «строитель»? Это архитектор, прораб, каменщик, маляр или сторож? А кого вы подразумеваете, говоря «программист»? Работа в IT - это не обязательно именно написание кода. Есть масса специализаций, где гуманитарий найдет себя: тестирование, бизнес-анализ.

Святослав Куликов:

Можно. Сложность переучивания, его скорость, эффективность и иные показатели будут индивидуальны для каждого человека. Стоит честно признать два факта:
. чем вы старше, тем сложнее вам переучиваться (не только на программиста, а переучиваться вообще);
. вы будете долгое время проигрывать в степени профессионализма тем, кто посвятил IT всю жизнь.
Но эти факты - не приговор, и я лично знаю тех, кто пришёл в IT из «гуманитарных профессий», но благодаря своей целеустремлённости добился ощутимых успехов.

Александр Барановский:

Каждый конкретный случай надо разбирать под микроскопом, так как я не могу сказать «каждый гуманитарий может стать программистом», это было бы неправильно. В нашей практике прецеденты были. Но нужно понимать, что это далеко не просто и требует огромных усилий, терпения и упорства.

Светлана Захаренко:

Ничего невозможного нет, переучиться можно всегда, вопрос в конечной цели и затрачиваемых ресурсах. Если вы решили стать программистом именно потому, что программирование вам интересно, переучиться будет не очень сложно, так как скорее всего интерес возник не спонтанно, вы его поддерживали, вы уже имеете представление о программировании, возможно, читали литературу, форумы, пробовали решать задачи.

Если же решение переучиться возникло, когда это стало очень «модно» и уровень заработной платы вырос, переучиться будет сложно. В первую очередь для преодоления трудностей в обучении необходима будет «подпитка», которая часто получается именно из интереса к профессии, а не из мотивации «модно и дорого».

Прежде чем принять решение о смене профессии, стоит соотнести своё желание с уже имеющимися навыками и знаниями. Очень сложно стать космонавтом, имея слабый вестибулярный аппарат.

3. Как выбрать «своё» направление обучения?

Евгений Пешкур:

Посоветоваться с теми, кто достаточно долго работает в IT и сам успел попробовать много различных ролей или тесно работал с представителями различных специализаций. Т.е. это специалист уровня Team Leader или выше. А далее пробовать.

Святослав Куликов:

В последнее время участились случаи «перепрофилирования в IT» с единственной целью - получением высокой зарплаты. Аргумент понятный, честный и имеющий право на существование. Но если деньги - единственное, что интересует вас в IT, то дальше вы рискуете столкнуться с серией сложностей и разочарований, так как заниматься нелюбимым делом - это всегда насилие над собой (даже при хорошей зарплате).К тому же, «мир IT» очень обширен и многогранен, а многие новички даже не представляют, какие бывают «IT’шные профессии и специальности». Тут неплохо бы почитать сайты с описаниями IT-вакансий, а про заинтересовавшее спросить знакомых, работающих в этой сфере.

Из личного и наболевшего: если исходный вопрос звучит как «расскажите мне, чего я хочу», то самым честным ответом будет «не знаю». Чтобы узнать, надо хотя бы немного пообщаться со спрашивающим, так как здесь вопрос из области обучения выпадает в область профориентирования.

Светлана Захаренко:

Попробовать направление «на вкус». Например, если вы выбираете между программированием и тестированием, можно взять задачу и решить её с точки зрения программирования, затем можно взять ещё одну задачу и решить её с точки зрения тестирования, остаётся только сравнить результаты и ощущения. Используйте давно известный способ проб и ошибок. К сожалению, не существует такого рецепта, чтобы сразу правильно и без «шишек».

Продолжение следует...



Загрузка...