It с чего начать обучение. Что нужно знать начинающему IT специалисту. Английский язык открывает больше дорог

Наверняка у вас есть знакомые, которые работают или получают образование в весьма отдалённой от 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-вакансий, а про заинтересовавшее спросить знакомых, работающих в этой сфере.

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

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

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

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

Перед конференцией IT Entrance , которая состоится 22 апреля в бизнес-инкубаторе Парка высоких технологий, сайт решили рассказать о самых интересных выступлениях на . Сегодня своим опытом поделится Яна, которая поменяла работу в банковской сфере на IT.

Как попасть в IT по формуле «24/7»

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

Сейчас я в IT. У меня нет высоких должностей, но есть хороший доход (пусть пока и не такой, как был раньше). И я по-детски счастлива. У меня давно забытое ощущение безграничных возможностей. Я понимаю, что все еще только начинается.

У меня получилось «перепрыгнуть» в область IT по формуле «24/7». И это не про круглосуточную работу, а совсем про другое. Возможно, мой опыт будет чем-то полезен и вам. На основании моей истории вы поймете, что для перехода в IT не имеет значения, сколько вам лет, какой у вас предыдущий опыт работы, образование, и самое важное - что по этому поводу думают все остальные.

Что нужно в IT?

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

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

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

Эволюция IT-продуктов

Чтобы понять, как появилась сфера User Experience, я хочу немного поэтапно показать эволюцию IT-продуктов на примере эволюции человечества.

Сначала люди жили в пещерах. Потом появилось подобие домов. На тот момент даже то, что ты смог собрать себе хижину, которая защищает тебя от дождя, было круто. Больше ничего и не надо было. Когда жилье стало доступно многим, появилось понятие «красивых» и «удобных» домов. Можно где-то повесить картину, где-то иконку, постелить скатерть на столе - и ваш дом будет чем-то отличаться от остальных. С развитием технологий появилась возможность иметь любой дом, какой пожелаешь, были бы деньги. И вот тогда стало важным другое. Дом может быть красивым, теплым, устойчивым, большим или маленьким – самое важное, чтобы там была соответствующая атмосфера. Чтобы из дома не хотелось уходить. До сих пор до конца неизвестно, за счет чего эта атмосфера создается. Почему иногда в доме с шикарным дизайном тебе слишком неуютно и хочется поскорее убежать. А иногда настолько тепло и уютно, что хочется остаться на всю жизнь. Это необъяснимая магия. В IT-продуктах происходит аналогичная ситуация.

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

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

Что мы имеем сейчас? В наше время уже большинство IT-продуктов имеет нормальный дизайн. Технологически также возможно уже «навешать» любые фичи.

Как сделать так, чтобы ваш продукт купили?

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

Вот эта магия спрятана именно в области User Experience Design (UXD).

Для чего нужен UXD?

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

«Прикладные программы, в большинстве своем, не сильно напрягаются для пользователей. Не в том смысле, что не делают работу, но в том смысле, что часто тратят гигантские усилия, чтобы ублажить пользователей, относясь к ним так, как если бы они были программистами. Это все равно, что подарить жене на день рождения электродрель. Если электродрели нравятся вам, это совсем не означает, что они нравятся и ей» (с) Алан Купер.

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

Как UX-специалисты готовят «вкусняшки»

Если UX-специалисты хорошо поработают над продуктом, то на выходе получаются «пирожные», которые пользователям хочется съесть, а потом повторить это много-много раз. И для того, чтобы это пирожное появилось и получилось, нужны определенные ингредиенты. Рассмотрим некоторые из них:

1. Human-Centered Design. Это проектирование продукта, которое начинается с выявления целей и потребностей пользователя, на основании которых определяются необходимые функции продукта.

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

3. User Experience. Это совокупность всех чувств, эмоций, ощущений, которая у пользователя складывается до, во время и после взаимодействия с вашим продуктом. Это не только про то, как он чувствует себя, взаимодействуя с продуктом, но и про то, что у него остается в душе, когда он заканчивает. То, что он будет помнить о вашем продукте, что будет испытывать, вспоминая ваш продукт, из-за чего он будет возвращаться обратно.

Для меня это огромный загадочный мир, с которым я столкнулась совсем недавно. Это как с атмосферой в доме. Попробуйте угадать, как сделать так, чтобы «атмосфера» IT-продукта получилась по-хорошему впечатляющей и запоминающейся. Есть определенные объективные законы в дизайне, которым можно следовать. Но все равно всегда остается «щепотка магии», которую не угадаешь. Это то, почему иногда выпускают продукты с крутыми интерфейсами и фичами, но они не взлетают. Они никому не нужны. И то, почему иногда появляются мобильные приложения, на которые сначала смотришь с одной мыслью: «Кто ж такое вообще придумал?!». Однако этот продукт любят пользователи, его обожают, им делятся – это волшебство, которое кажется необъяснимым.

Для меня UX - это магия, которая подчиняется определенным объективным законам. Есть определенные правила, зная которые, можно создавать хороший User Experience. Можно говорить, что продукт крутой, что его полюбят миллионы пользователей, но если не соблюдать эти законы, то скорее всего, столкнешься с жестокой реальностью.

Теперь давайте попробуем объединить все эти ингредиенты. Представим, что наш IT-продукт – это пирожное, которое мы готовим для любимой бабушки. Тогда рецепт этого пирожного, по которому мы будем его готовить так, чтобы оно понравилось бабушке, – это будет Human-Centered Design. Когда мы сделаем это пирожное нужной высоты, чтобы его можно было легко укусить, мягким, чтобы у бабушки не вывалились протезы – это юзабилити. А все вместе, плюс наша любовь и частичка души, которые мы вкладываем, когда готовим… и вот эта вишенка наверху - все вместе это складывается в User Experience нашей бабушки. Если мы угадаем со всем этим (особенно с вишенкой), бабушка будет наши пирожные просто обожать. Вот также и с IT-продуктами.

Прыжок в IT

Теперь немного про мою нетипичную историю «прыжка в IT».

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

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

Знакомство с UX

Поиски себя заняли 2 года. И вот в феврале 2016 года на меня случайно «свалился» UX. Я испытала на себе это особенное ощущение озарения (о котором так часто пишут в книгах): вот же оно... мое! Я к тому моменту уже начинала свой бизнес, но все приостановила, занялась UX. И чем дальше изучала, тем больше понимала, что я хочу только туда.

Нетипичная история

Я узнала, что в большинстве случаев в UX приходят люди с образованием в IT, социологии или психологии. В большинстве случаев туда берут людей, у которых есть или в бизнес-анализе. И (самое ужасное для меня) средний возраст работающих в IT - 28-30 лет, включая директоров. Я не подходила ни по одному из параметров, а учитывая, что на тот момент мне было 35 с большим плюсом, для меня это был просто шок.

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

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

Каждое утро, когда я вставала, у меня день начинался с картинки «А что ты сегодня сделал для достижения своей цели?». Я садилась за компьютер и начинала учиться. Через пять месяцев самообучения я случайно в Facebook увидела, что UXpresso объявляют открытую вакансию на должность senior UX-специалиста.

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

Что значит моя формула перехода в IT «24/7»?

24 месяца - отпустить старое, 7 месяцев – изучить новое.

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

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

С чего начать

Есть несколько вариантов развития событий, в результате которых человек становится программистом. Первый - родители-программисты, которые всему научили своих детей. Таким детям даже не нужно идти в университет. Второй вариант - модная профессия программиста. После школы нужно было выбрать, куда пойти учиться, и выбрали модное направление 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, он самый популярный. Вам нужно знать инструменты, с которыми вы работаете, операционную систему и среду разработки. И главный навык программиста - уметь гуглить. Без этого вы не проживёте.

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

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

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

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

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

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

Путь 1. Программист

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

Чтобы стать действительно востребованным разработчиком, вам понадобиться достаточно много времени и желания развиваться именно в программировании. На сегодняшний день Senior-специалисты преобладают на рынке труда, их почти в два раза больше, чем Junior-программистов. Работодатели готовы тратить больше средств на высококлассного специалиста с опытом 5+ лет, чем брать новичка в команду, которого необходимо будет обучать всему фактически с нуля.

Путь 2. Бизнес-анализ

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

Бизнес-аналитик – это своеобразное промежуточное звено между заказчиком и разработчиком. Его задача заключается в том, чтобы выяснить пожелания заказчика, проанализировать и соотнести их с целями продукта, а впоследствии предоставить их разработчикам в понятном для них виде.

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

Несмотря на то, что бизнес-аналитиками называют чаще всего всех IT-аналитиков, они являются одной из разновидностей данной специальности. Так, существуют бизнес-аналитики, системные аналитики и аналитики требований. Сегодня на рынке труда Беларуси большинство аналитиков – это как раз аналитики требований. Для компании, содержание бизнес-аналитика в штате с глубоким техническим бэкграундом и знанием какой-либо предметной области гораздо затратнее, чем содержание аналитика требований. На картинке ниже можно увидеть основные отличия IT-аналитиков.

Тем не менее, как бы привлекательно ни звучала данная IT-специальность, следует учитывать следующие факторы:

  • небольшое количество вакансий для специалистов без опыта – большинство работодателей требуют 2+ года опыта;
  • необходимость владения английским языком на хорошем уровне, начиная от Upper-Intermediate.
  • глубокие знания хотя бы в одной предметной области (например, здравоохранение или банковская сфера).

Путь 3. Тестировщик (или QA-инженер)

Путь тестировщика – это баланс между востребованной работой и достаточно легким входом в IT-сферу.

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

Говоря о получении знаний в сфере тестирования, чаще всего люди прибегают к одному из следующих способов: , самообразование или очные курсы.

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

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

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

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

Путь 4. Административные позиции

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

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

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

Английский язык открывает больше дорог

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

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

Возраст имеет значение?

Согласно отчету, подготовленному компанией EY «ИТ-отрасль Беларуси», можно говорить о «молодости» IT-сферы. Об этом свидетельствуют следующие факты:

  • 57 процентов штата компаний-резидентов ПВТ имеют возраст до 30 лет.
  • Карьерный путь в индустрии обычно начинается до 25 лет.
  • Около 12 процентов занятых в ИТ-отрасли – студенты.

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

«Изучать что-то новое гораздо легче в студенческие годы, чем в 30-40 лет. Но в 20 лет чтобы понять, что профессия вам не подходит или что вы не подходите данной профессии, ее сначала нужно освоить. И вот время проходит, а вы обнаруживаете себя «стучащим головой в стенку». Значит, направление стоит менять. Не надейтесь, что, когда вам стукнет 30 или 40 лет, стенка станет податливее.

Часто люди не видят перспектив развития и роста на одной работе, но бояться уйти в другую отрасль, потому что о ней ничего не знают. Как гласит восточная мудрость: «Лошадь сдохла – слазь». Чем раньше вы задумаетесь о переподготовке, дополнительном образовании, тем больше шансов «пересесть на другую лошадь» и успеть сделать успешную карьеру к 30», – делится своими мыслями по поводу возраста IT-специалистов Юрий Анушкин, директор образовательного центра QA Academy.

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

Наверняка у вас есть знакомые, которые работают или получают образование в весьма отдалённой от 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-вакансий, а про заинтересовавшее спросить знакомых, работающих в этой сфере.

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

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

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

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

  • Сергей Савенков

    какой то “куцый” обзор… как будто спешили куда то