Как стать программистом, если очень хочется, но опыта нет. Я хочу стать программистом


Эссе "Почему я хочу стать программистом?"

Здравствуйте, уважаемые читатели. В этом сочинении я расскажу вам, почему я хочу стать программистом.

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

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

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

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

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

Орфография и пунктуация автора сохранены

Автор: Григорий Душкин, 8 класс, г. Самара

moeobrazovanie.ru

Профессия программист. Как стать программистом? С чего начать? Кому эта профессия под силу?

Кто может стать программистом?

Что необходимо учить, чтобы овладеть этой профессией?

Эти и многие другие вопросы мы рассмотрим в этой статье. Отдельное спасибо за создание этой статьи отправляется в фонд Галины, которая задала их в конкурсе «Задай вопрос и выиграй приз».

Программист — кто это?

Поговорим немного о самой профессии программиста.

Программист — это человек, который пишет программы. Это если максимально просто упростить данное понятие.

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

Какими чертами нужно обладать, чтобы стать программистом?

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

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

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

Каким школьным предметам стоит уделить пристальное внимание?

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

Для программиста математика и информатика — основополагающие предметы, но не единственные нужные программистам.

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

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

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

www.pc-someworld.ru

Как стать программистом, если очень хочется, но опыта нет

Предыстория

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

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

В уме я всегда держал, что буду работать программистом. Так в итоге и получилось.

Объявление о работе я нашел в ВК

Работу Java-программиста я начал активно искать на пятом курсе, но сначала решил пройти стажировку в какой-нибудь компании. Объявление о стажировке я увидел в паблике МАИ в ВК. Про «Инфосистемы Джет» я, честно говоря, слышал впервые. Нашел информацию о компании в интернете, мне все показалось интересным, и я оставил заявку на их сайте.

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

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

Я прочитал всего одну книгу по программированию

Можно сказать, что я самоучка.

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

До того как я начал серьезно учиться программировать на Java, я прочитал всего одну книжку о программировании. Это был курс «С++ за 21 день».

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

Почему я выбрал Java?

  • На мой взгляд, Java – едва ли не единственный язык программирования, от начала изучения которого до получения конечного продукта проходит не так много времени. Возможно, я такой человек, которому хочется поскорее «пощупать» результат. Чистая теория меня не очень привлекает.
  • Передо мной стояла определенная цель. Я понимал, что работу программиста мне получить будет крайне сложно, необходимо на будущем собеседовании показать хоть что-то и сказать: «Опыта работы нет, диплом тоже – не совсем то, что нужно, но зато есть вот это – посмотрите». Но, к счастью, я получил работу через стажировку.
  • Сейчас есть огромное количество разнообразных руководств для разработки приложений для ОС Android. Так что здесь у меня буквально все сходилось: и материалов для обучения достаточно, и существовала возможность сравнительно быстрого получения легко осязаемого результата.

Одним словом, после короткого курса C++ я взялся за какое-то руководство по Java для начинающих. Не помню, как оно называлось, помню только, что я бросил его читать, не добравшись и до середины. Мне хотелось поскорее «прогать».

Потом я видел очень много руководств для начинающих и могу сказать точно: принципиальной разницы между ними нет. Они примерно одинаковые. Чтобы что-то найти, нужно просто забить в Google запрос «book for java starter» – и в путь.

Много ответов на свои вопросы я нашел в этом телеграм-канале.

В сети мало русскоязычных источников по программированию. Смиритесь с этим

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

Конечно, в программировании без знания английского на хорошем уровне – просто никуда. Так что тем, кто знаком с английским на уровне Google.Переводчика, я могу посоветовать только одно: сначала прокачайте свой английский. Все остальное – потом.

Конечно, не все так грустно: на русском языке есть «Инструменты для разработчика Google». Но начинать в любом случае нужно не с этого.

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

С чего я начал «прогать»

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

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

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

Какие ресурсы могут помочь новичку

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

  • Репозитарий с исходниками Github.com.

Он очень помог учиться на чужих примерах.

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

Свое первое приложение я разработал за месяц

Короче говоря, приложение я сделал буквально за месяц. Самыми полезными источниками знаний стали Developer.android.com и все тот же Stackoverflow.com. Самое интересное, что рутинный процесс выкладывания приложения в Google Play занял целых два месяца. Хотя, может быть, все продолжалось так долго, потому что после разработки мой запал немного подостыл. А немного позже я разработал веб-версию приложения, прочитав книгу Beginning Java EE 7.

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

Вдобавок я не хочу ни в коем случае умалять значение университетского образования и говорить: «Зачем все это нужно? Вот, посмотрите, все получилось и так». Нужно. Университет на самом деле дает очень много и, может, самое главное – воспитывает привычку учиться.

И все же: программировать можно научиться самому. Теперь я это точно знаю.

Материалы по теме:

Как попасть на стажировку в «Яндекс», поучаствовать в разработке «Алисы» и остаться в штате

Личный опыт: Как за один год пройти путь от фотомодели до программиста

Мой первый год программирования в реальном времени на Twitch: уроки и итоги

Как мы научили беженцев кодить и помогли найти работу программистами

Заметки HR-а: почему так сложно найти хорошего разработчика

Актуальные материалы — в Telegram-канале @Rusbase

Нашли опечатку? Выделите текст и нажмите Ctrl + Enter

rb.ru

Как стать программистом - 10 советов | Info-Comp.ru

10 советов тем, кто хочет стать программистом!

Многие задавались вопросом «как же стать программистом?». Я предлагаю Вам 10 советов как все-таки стать программистом. Они основаны как на личном опыте, так и на опыте других, которые стали хорошими программистами.

Совет 1. Это конечно желание и стремление им стать. Без этого Вы даже можете дальше не читать т.к. это основа всего. Все хорошие программисты, буквально помешенные люди (образно) на своем деле. Вам нужно много времени, терпения и еще много всего что связанно лично с Вами, поэтому Вам нужно подготовить себя, если конечно Вы хотите стать программистом. И даже после того как Вы начнете учиться программировать, многие бросают это дело, примерно 1 из 10 продолжает дальше учиться. Удачи!

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

Совет 3. Вы должна устроиться на работу, конечно программистом без знаний Вас никто не возьмет, но если Вы имеете начальные знания о компьютере, то попробуйте устроиться: системным администратором, помощником системного администратора, инженером по технологиям ну и другие должности (в разных организациях они называются по-разному). Это Вам поможет освоить совет №2, т.е. изучить все те сферы, а параллельно Вы будете самостоятельно дома изучать уже само программирование. Потом когда у Вас будет опыт работы и знание программирования, Вы сможете устроиться на работу программистом.

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

Совет 5. Здесь Вы должны определиться, какой язык Вы хотите начать изучать. Простой или более сложный, я лично рекомендую Visual Basic т.к. он для начинающих более понятен, но со знанием этого языка в России будет трудно найти работу. Можете начать с чего-нибудь более востребованного Java или С++. После того как Вы определились, Вы должны выбрать подходящею литературу (книги по программированию) и постепенно начинать изучать, и параллельно пробовать писать программы, а лучше вообще найти какой-нибудь учебный видео курс по этому языку программирования. При начальном изучении не рекомендую прыгать с одного языка на другой.

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

Совет 7. Никогда не останавливайтесь в обучение т.к. хватает небольшого количества времени чтобы «забыть» то, что Вы уже изучили, если конечно у Вас феноменальная память ну или Вы сразу все схватили и усвоили (что вряд ли). Постоянно совершенствуйтесь!

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

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

Совет 10. Ну и напоследок хотелось бы дать такой совет, найдите себе наставника т.к. он передаст Вам бесценный опыт, и научит Вас программировать как профессионал. Это один из самых легких способов научиться программировать. Где же найти его спросите Вы, им может быть Ваш друг, Ваш преподаватель, или коллега на работе. Прислушивайтесь к нему, и все будет хорошо. Но когда-нибудь Вы поймете, что дошли примерно до его уровня, и тогда Вы должны как настоящий полиглот перепрыгнуть на другого человека, может быть даже сменить работу или пойти учиться еще раз в другое заведение. Хорошие программисты обычно одаренные люди и они быстро схватывают программирование, и поэтому вы сразу поймете, хороший Вы программист или нет (примерно 3-4 года).

Похожие статьи:

info-comp.ru

Как я стал программистом и успешно поменял профессию в 34 года

 

Всем своим читателям большой привет!

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

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

Итак, как я стал программистом в 34 года.

 

Первое знакомство с компьютером и программированием

 

Эта история началась почти 20 лет назад. В 15 лет я поступил в Компьютерный Лицей и познакомился с компьютером. Там же я увлекся программированием и был одним из лучших в лицее. Мне очень нравилось программировать, и я был уверен, что после окончания лицея я буду поступать в технический ВУЗ и стану программистом.

 

 

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

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

Но вернемся в конец 90-х. Мои преподы меня убедили, и я пошел учиться на экономиста. То есть я сознательно бросил то, что мне нравилось и погнался за перспективой.

 

Погоня за перспективой и разочарование

 

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

 

 

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

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

 

Что делать?

 

Однако сказать легче, чем сделать. Когда я увлекался программированием, то дальше учебных языков я не заходил. Не успел. Поэтому по сути я был полным нулем в современных технологиях. Я лишь понимал логику программирования. Знал базовые общие языковые конструкции. И имел опыт написания программ на учебных языках программирования.

 

 

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

Другой вопрос, как обучаться? Пойти на курсы или учиться самому? А может онлайн курсы или вообще найти настоящего программиста, заплатить ему, чтобы он меня научил? Или пойти в ВУЗ?

В общем, как стать программистом, это тема отдельной статьи. А здесь я расскажу, что сделал именно я.

 

Первые шаги

 

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

 

 

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

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

Меня взяла к себе веб-студия, которая делала сайты. Там мне дали несколько проектов на wordpress. Нужно было готовые темы менять и дорабатывать для клиентов. Скажу сразу, что и в веб-студии я долго не задержался. Работал я там чуть меньше месяца.

Дело в том, что я все это время интенсивно учился. Вечера и выходные у меня не проходили зря. Я штудировал HTML, CSS, Javascript, Jquery, PHP и устройство WordPress. И уже к концу месяца мог сделать готовую несложную тему для WordPress с исходного psd макета.

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

 

Фриланс

 

 

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

Это придало мне уверенность, и я ушел со студии. Фриланс стал настоящей школой. Различные задания, нет того однообразия, что было в студии. Я действительно сильно вырос пока работал во фрилансе. Очень быстро у меня появились 3 постоянных заказчика. Задачи становились все серьезнее. Я стал увереннее. Все это происходило буквально в течении 3-4 месяцев.

 

Я стал программистом!

 

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

 

 

 

Мне дали тестовое оплачиваемое задание написать плагин для wordpress. Я сделал. Плагин успешно внедрили в проект, а меня стали привлекать к проектам в данной студии. А через месяц работы в таком режиме, мне уже предложили работать в штате.

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

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

Напоследок как всегда интересное видео.

 

 

Ну а в ближайших планах написать статью о том, как стать программистом. Думаю, у меня есть несколько советов тем, кто в начале этого пути.

Так что скоро еще увидимся!

undertherock.ru

Неправильный, но быстрый способ стать программистом

Содержание статьи

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

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

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

 

Как я стал программистом

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

Первый шаг — резюме

Первая и основная проблема, с которой сталкиваются новички, — резюме. Без адекватного, цепляющего резюме тебя не будут приглашать на собеседования. Но как быть тем, у кого совсем нет опыта работы? Для того чтобы «не с пустыми руками» идти к HR, мы с другом вписали мне в резюме целый год опыта работы над его проектом, над которым якобы вместе трудились.

 

Зарплатная политика

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

 

Позор и стыд

Первые собеседования были провальными. Надо мной буквально смеялись. На первом же техническом собеседовании, где мне дали пару задачек на бумаге, меня раскусили в два счёта. Кто-то даже по-отечески посоветовал книгу Thinking in Java.

 

Первая работа

В конце концов меня пригласили на собеседование в филиал одной датской компании, где я ответил на фундаментальные вопросы и приятно удивил всех своим английским. Меня взяли на должность Junior Java developer с одним условием — первые три месяца я буду проходить курс SCJP (Sun Certified Java Programmer), который восполнил бы мои пробелы и выковал бы из меня более подготовленного специалиста. Что может быть лучше, чем оплачиваемая стажировка без нужды работать (выдавать свою некомпетентность)? В этой компании я проработал полгода, чтобы через несколько месяцев пойти на повышение в компанию покрупнее.

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

 

Рекомендации для начинающих программистов

  1. Резюме. Оно должно быть правильно отформатированным и написанным исключительно на английском. Если не хватает опыта, то его можно (и нужно) придумать, но следует подготовиться отвечать за каждое написанное в резюме слово. Например, если у тебя там написано JMS (Java Message Service), то как минимум следует пройти хоть одну обучалку и поиграться с JMS, поделать какие-нибудь примеры, пускай это и будет банальное «Hello, world!». Теперь будет удобнее пускать пыль в глаза, вы ты и правда «работал с JMS».
  • Выучи азбуку программирования. Если ты ещё можешь позволить себе «плавать» на глубоких уровнях каких-нибудь комплексных технологий вроде Struts и Spring, то неправильные ответы на элементарные вопросы тебе никогда не простят. Если тебя ночью разбудить, то ты должен уметь рассказать про ООП, наследование, инкапсуляцию, полиморфизм и другие базовые концепции, а также суметь объяснить это всё на примерах.
  • Практика. Научиться программировать можно, только лишь программируя. Это больно и неприятно (если ты не программист), но другого пути нет. Единственный способ перестать бояться задачек на собеседованиях — порешать их дома самостоятельно.
  • Читай книги и проходи туториалы по Java только на английском Абсолютно все термины программирования проще понимать на языке оригинала, то есть на английском. Читать техническую литературу по Java на русском — себя не уважать. Почему? Потому что, чтобы понимать что-нибудь в духе «…модуль таблицы во многих смыслах представляет собой промежуточный вариант, компромиссный по отношению к сценарию транзакции и модели предметной области», нужно быть поистине гением, которым ты вряд ли являешься.
  • Выучи, наконец, английский! В первую очередь это касается разговорного английского. Сложно сосчитать то огромное количество толковых программистов, которых на моей памяти забраковали по одной единственной причине — неудовлетворительный уровень разговорного английского. Нет, если ты, конечно, собираешься работать программистом где-нибудь в отечественной компании, то твой уровень языка не будет играть важной роли. Но если ты хочешь попасть на работу в международную компанию, то сам бог велел выучить язык. Уровень твоего английского будет конвертироваться в дополнительные сотни долларов прибавки к зарплате.
  • Знай рынок. Походи по вакансиям, почитай требования, поспрашивай друзей-программистов, сколько они получают. Используй сервисы, которые позволят составить более полную картину о рынке IT. Ты был бы удивлён, узнав о том, насколько велико количество талантливых программистов, которые получают в два раза меньше, чем могли бы, только лишь по причине своей лени и нежелания держать нос по ветру.
  • Торгуйся. Нет ничего предосудительного в том, чтобы торговаться за зарплату. Твоим аргументом в споре может быть как хороший английский, так и предложение о работе в другой компании. Последний аргумент особенно хорошо работает: «Да, но мне в Luxoft предлагают на 300 долларов больше, почему я должен соглашаться на ваши условия? Может, мы могли бы найти компромиссный вариант?». В своё время мне пару раз удалось выторговать дополнительную сотню долларов к своей зарплате, и через год эта сотня долларов дала мне дополнительные 1 800 долларов дохода на ровном месте. Ты должен понимать, что даже для небольших зарубежных IT-компаний лишняя сотня баксов как капля в море.
  • Найди себе ментора. Хорошо, если у тебя будет более опытный товарищ, который сможет помочь советом и ответить даже на самые глупые вопросы. Благодаря его опыту и моральной поддержке ты будешь продвигаться в программировании быстрее, чем в одиночку. Если нет ментора, то неплохо сходить на какие-нибудь курсы по программированию, которые не только дадут более полную картинку того, чем занимается программист, но и позволят познакомиться с более опытными людьми. Кто знает, может быть, кто-нибудь из них захочет стать твоим ментором.
  • Начни свой проект. Даже если он будет образцом самых худших практик кодинга и ты его никогда не закончишь, по крайней мере, у тебя будет то дело, ради которого захочется разбираться в программировании и изучать новые технологии. Кроме того, у тебя появится дополнительная тема для задушевных бесед на собеседованиях.
  • Ищи работу летом. Во-первых, когда все в отпусках, в компаниях более остро ощущается нехватка кадров и повышается вероятность того, что тебя позовут на собеседование. Во-вторых, поскольку твои конкуренты-соискатели тоже на отдыхе, у тебя опять-таки повышаются шансы быть замеченным HR.
  • Никогда не сдавайся. Даже если кажется, что ты заваливаешь собеседование, важно проявить стойкость и продолжить попытки решить задачу, какой бы сложной она ни казалась. Кто знает, может быть, тебя именно в этот момент проверяют на усердие в работе!
  • Избегай заданий на компьютере. Нет способа быстрее раскусить непрофессионала, чем сразу же бросить его в пекло программирования. Твоя задача — постараться перевести все беседы на высокий уровень, где обсуждаются общие подходы и концепции, но никак не конкретная реализация в решении той или иной задачи. Если тебе дали бумагу и ручку и попросили записать решение, то попроси возможность нарисовать его схематически. Таким образом, удалившись от синтаксиса конкретного языка, ты не только убережёшь себя от каких-нибудь режущих глаз ошибок, но и покажешь, что способен мыслить абстрактно, не вдаваясь так уж сильно в детали.
  • Начинай говорить первым. Избегай ситуаций, когда в воздухе виснет пауза, во время которой в мозгу у интервьюера может созреть очередной коварный вопрос. Как только происходит какая-либо заминка, начинай рассказывать что-нибудь из того, что ты хорошо знаешь. Постарайся навязать интервьюеру свою игру.
  • Старайся говорить правду. Если ты никогда не писал PL/SQL процедуры, то лучше об этом сказать прямо. Возможно, в этом для тебя будет минус, однако ты убережёшь себя от нужды выкручиваться, отвечая на вопрос, в котором ничего не смыслишь. Опытный интервьюер за версту почувствует твои пробелы в знаниях.
  • Бойся маленьких компаний. В небольших компаниях, как правило, небольшие команды. Чем меньше в команде людей, тем быстрее тебя раскусят. Твоя цель — большая и неповоротливая корпорация, где ты сможешь выиграть для себя немного времени.
  • Соблюдай дресс-код. Если ты придёшь на собеседование на должность программиста в шикарном костюме, то это вызовет больше подозрения, чем если ты явишься в шортах или потёртом свитере. Не лишним будет также нацепить очки, мол, «эдакий я книжный червь».
  • Конечно, кто-то знающий может отметить, что приведённый выше рецепт — это скорее способ стать кодером, чем программистом, и он где-то будет прав. Однако дело всё в том, что вы никогда не найдёте вакансию с заголовком «Требуется плохой кодер». Всем нужны программисты. Желательно senior. У которых более пяти лет опыта работы на корпоративных проектах и которые одинаково хорошо владеют сразу несколькими языками программирования, при этом досконально разбираются в СУБД, умеют писать bash-скрипты, хранимые процедуры, знают в совершенстве Linux, TCP/IP, обладают лидерскими качествами, стрессоустойчивостью, коммуникабельностью и ещё массой навыков, «без которых никак».

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

xakep.ru

Почему так трудно стать программистом? / Хабр

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

Среда для исследования

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

Изучить программирование непросто

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

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

Конечно, есть талантливые люди, которым новые знания даются довольно быстро. Но, как показали мои наблюдения, это — редчайший случай. На моих глазах через клуб прошло множество потенциальных «специалистов». Никто из них до финиша так и не добрался. До подавляющего большинства новоявленных студентов, после месяца-двух интенсивной учебы доходило, что программирование — совершенно не их предмет. А наиболее способные поняли это гораздо быстрее. Из примерно двух сотен людей прошедших через клуб, до сих пор переквалифицироватьcя в программисты удалось лишь двум талантливым и упорным технарям, которых прижала жизнь. Это всего 1 процент, а не 9, как гласило прочитанное когда-то мной исследование.

Так что же клуб?

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

Почему так получается?

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

habr.com