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


Содержание

10 причин, почему сейчас хорошо быть разработчиком

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

1: HTML5

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

2: Гибкая методология

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

3: Переход к SaaS

Почему модель «программного обеспечения как обслуживания» (SaaS) нравится разработчикам? Потому, что впервые когда-либо, разработчики способом, который удовлетворяет обе стороны сделки, могут превратить свои продукты в деньги. Несомненно, разработчики всегда могли получать оплату за создаваемые продукты, что было достаточно справедливо. Но если пытаться «сократить оболочку приложения”, предыдущие версии ужасны. Это обычно навязывается клиентам, пичкаемым обновлениями или поддержкой, которую они не хотят, чтобы держать поставщика в бизнесе, или тем, кто платит поставщикам слишком много, чтобы они могли обеспечить «бесплатную» поддержку и обновления. Благодаря SaaS сократить модель оболочки можно выгодным способом, который приносит пользу всем.

4: Низкие затраты запуска

Серьезно, можно ли найти более дешевый способ начать свое собственное дело? Сейчас компании успешно начинают работу только с миллионом долларов, а в прошлом нужно было 10 миллионов долларов или больше. Что изменилось? Различные «платформа как обслуживание» (PaaS) и «инфраструктура как обслуживание» (IaaS) позволяют перейти от «проекта, сделанного в мои выходные» до «развернут и готов к работе» буквально за минуты. Можно иметь гибкий график составления счетов, который позволит легко покрывать расходы из кармана, и соответствующий денежным потоком масштаб затрат. Тем временем платформы, такие как Ruby on Rails, появились, чтобы облегчить успешный запуск безо всяких денежно-кредитных и технических накладных расходов, связанных с развитием в более традиционных системах.

5: Мобильные технологии

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

6: Биржа труда сегодня

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

7: Рынок вакансий будущего

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

8: Компьютеры в нашей жизни

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

9: Развитие ПК

Когда появилась идея «персонального компьютера», большинство людей рассматривало ее как “мой персональный компьютер” в отличие от “компьютера компании” или “общей универсальной ЭВМ”. Теперь, «персональный компьютер» становится более похожим на то, что провидцы, такие как доктор Алан Кей, вообразили в 60-ые, 70-ые, и 80-ые: система, которую люди смогут настраивать на лету, чтобы легко удовлетворить свои потребности. Действительно ли это так? Нет. Но впервые за долгое время промышленность фактически начинает перемещаться в этом направлении, но это не может произойти быстро. Надеюсь быть частью революции, которая позволит людям усиливать свои вычислительные устройства, чтобы достигнуть поставленных целей.

10: Все более и более видная роль разработчиков

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

Хочешь научиться программировать?

Получи доступ к десяткам бесплатных материалов

Общайся и учись у ведущих IT-специалистов

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

13 сентября (в 256 день года) весь мир отмечает День программиста. Гик-сообщество давно ожидает, что эта дата станет красной в календаре (помните государственный курс на инновации?), но, кажется, наш голос пока слишком тих.

Доступность обучения и развития

Сфера IT все время развивается и вы вместе с ней.

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

Реализуйте самые смелые фантазии в программах и приложениях. Так вы станете крутым специалистом и сможете работать в любой компании.

«Помните, как забыв про всё, вы собирали конструктор в детстве? Программирование – тот же конструктор, только для взрослых.

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

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

Максим Ермоленков, разработчик Ruby on Rails в Рокетбанке.

Трудоустроенность

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

«Сегодня HeadHunter рекомендует 4,5 тысячи вакансий на моё резюме. Я получаю столько звонков, что не на все собеседования успеваю сходить».

Интересная работа

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

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

Константин Колесников, руководитель разработки GeekBrains.

Отличная зарплата

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

Светлое будущее

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

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

большой инструментарий, чтобы работать на себя;

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

Роман Булатников, веб-разработчик, выпускник GeekBrains.


Куча новых знакомств

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

Радость интроверта

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

Свобода от офиса

Да, многие программисты работают удаленно. Опрос Developer Survey Results 2020 на Stack Overflow показал, что разработчики очень ценят возможность удаленной работы, в том числе, выбирают рабочее место по этому критерию. При таком обилии программ для дистанционного управления проектами, групповой разработки и рабочих чатов, можно легко работать из дома. И не только из дома.

Возможность жить и работать в любой точке мира

Если вы программист, вы не привязаны ни к офису, ни к городу, ни к стране. Хотите — живите на азиатских островах, работайте на мультинациональные корпорации в США и Европе, поднимайте бизнес в Африке и Латинской Америке. Границы для тру-программиста существуют только в голове. Да и то не в своей.

Программист — это звучит круто

The New Yorker еще в 2014 году назвал программистов новыми рок-звездами. С тех пор ценность программистов только растет. Присоединяйтесь к сообществу!

Секреты IT-предпринимателя

Добавлен в индекс

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

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

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

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

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

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

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

Возможность жить и работать в любой точке мира
Если вы программист, вы не привязаны ни к офису, ни к городу, ни к стране. Хотите — живите на азиатских островах, работайте на мультинациональные корпорации в США и Европе, поднимайте бизнес в Африке и Латинской Америке. Границы для программиста существуют только в голове. Да и то не в своей.

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

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

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

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

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

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

Цукерберг рекомендует:  Фабрики в Swift

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

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

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

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

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

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

Как понять, смогу ли я стать программистом — отвечают эксперты

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

«Как понять, смогу ли я стать программистом?»

За разъяснениями мы обратились к нашим экспертам, а полученные ответы предоставляем вашему вниманию.

Павел Попов , руководитель калининградского офиса компании «Первый БИТ»

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

Переходим на следующую стадию. Поставь среду разработки для С++ или С# или еще какого-нибудь языка. Справился и каждый успешно пройденный шаг тебе доставлял удовольствие – хороший признак. Двигайся дальше.

Найди описание, как создать в установленной тобой среде на выбранном языке первое приложение, Hello World, — это классика. Сделал? Отлично.

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

Михаил Субботин , преподаватель израильской высшей школы IT и безопасности HackerU

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

Артем Литвиненко , координатор обучения, scrum-мастер REG.RU

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

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

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

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

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


В конце спроси себя: «Смогу ли я стать программистом»? Если твой ответ «Да, смогу», то ничто тебя не остановит.

Микаэл Караманянц , директор компании-разработчика мобильных приложений Рашенсофт

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

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

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

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

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

Федор Кошель , эксперт курса «Профессия Ruby on Rails разработчик» университета digital-профессий «Нетология»

Для начала вам нужно понять, что считать профессией программиста. Программирование давно перестало быть уделом избранных, способных мыслить байт-кодами и в уме следить за аллоцированной памятью. Сегодня в мире есть много современных языков, синтаксис которых максимально близок к простому английскому. К примеру, User.find_by(name: ‘Вася’).destroy в Ruby (on rails). Знания этих команд достаточно для того, чтобы писать небольшие сайты, блоги, интернет-магазины. Если вы хотите работать на этом уровне, то вам достаточно выбрать понравившийся динамический объектно-ориентированный язык (Ruby, Python) и пройти курс по нему, или прочитать книгу, их достаточно много для каждого языка. Также можно попробовать себя в фронтенд-разработке, выучить JavaScript а затем освоить фреймворки к нему.

Если вы хотите писать более сложные системы, необходимы знания абстрактной логики, их можно получить изучая высшую математику в институте (в идеале дискретную, но, на самом деле, матанализ тоже весьма неплохо развивает мозги). Можно читать книги по дискретной математике и алгоритмам (Стивен Скиена «Алгоритмы. Руководство по разработке», Томас Кормен «Алгоритмы. Построение и анализ», Род Хаггарти «Дискретная математика для программистов», Дж. Андресон «Дискретная математика и комбинаторика») и просто практиковаться в программировании. Также очень полезно было бы выучить низкоуровневый язык, например С (Керниган, Ритчи «Язык программирования С») – для общего понимания принципов работы программ.

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

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

Если говорить про простейшую разработку web сайтов, то тут не должно быть никаких сомнений, справится каждый. Если же вы хотите пойти дальше, но при этом считаете, что математика и логика это совсем не про вас, то можете попробовать игровые сайты для разработки алгоритмов:
https://www.codingame.com/
https://www.codewars.com/
На них надо решать простейшие (и не очень) алгоритмические задачи на любом понравившемся вам языке программирования. Не могу сказать, что это очень полезно для обучения реальному программированию, но если вам понравятся эти игры, то вам точно понравится заниматься серьезной разработкой.

Тамара Внукова , старший преподаватель РЭУ им. Плеханова

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

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

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

Иван Монахов , технический директор компании Attack Killer

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

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

Профессиональный «голод» обретает новые характеристики. Чтобы преуспеть, нужно владеть фундаментальной базой: качественным алгоритмическим фундаментом, сильной математикой, быть ответственным и готовым постоянно учиться. Если все это у вас есть – Google, Amazon, Facebook и Attack Killer готовы пригласить вас на собеседование прямо сейчас!

Денис Колесников , программист прикладной разработки DirectumRX

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

Но лучше переформулировать вопрос в «смогу ли я стать хорошим программистом?» На мой взгляд, хорошим программистом можно стать, если:
1. Любите программирование и испытываете удовлетворение от самого процесса продумывания и написания кода.
2. Вам нравятся качественные и удобные программные продукты, и вы хотите разрабатывать именно такие.
3. Испытываете интерес к развитию IT, даже если не все тренды вам нравятся.
4. Обладаете развитым критическим мышлением и способностями к анализу.
5. Можете работать в состоянии потока и концентрироваться на одной задаче часами.
6. Вам не все равно, чем вы занимаетесь и с какими людьми работаете.
7. Готовы работать в команде для достижения общей цели, даже если не любите общаться с людьми.

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

Андрей Коваленко , со-основатель и CTO Voximplant

Выбирая программирование как профессию, стоит понимать несколько моментов.

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

Во-вторых, творческая составляющая — это 15%, другие же 85% — это нудная и монотонная работа. Данную часть можно сравнить, в противовес свободному полету фантазии, с детальным изучением музыки или живописи. Если ты написал игру «питон» или «крестики-нолики» и не умер от скуки, а получил от этого удовольствие, то программистом стать сможешь.

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

В качестве бонуса: наличие свободного времени и любовь к кофеину также повышают шансы преуспеть в программировании.

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

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

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

2) Профессионалы везде нужны и всегда востребованы. Это не так. Да, ты видишь вакансии на хэдхантере по 120 и 160к, но ты читал описания к ним? Они хотят, чтобы ты знал все, при том, чтовсе эти технологии в работе вовсе не нужны. Они хотят от тебя 10 фрэймворков, на деле используют один. Хотят от тебя множество баз данных, на деле используют mysql и т.д. Зачем они это делают? Чтобы привлечь людей. Получат они сотни резюме, прособеседуют сотни людей, выберут лучшего, но не дадут ему 160к, т.к. он не все знает, что требуют, потому что это невозможно, да и не нужно, но ему скажут — вы не знаете такой-то фрэймворк то и то, все, Вы нам подходите только за 80. Если ты ищешь работу за 80, тебе будут скидывать оплату до 30. Ок, я хочу 80, откликнусь на 160к, тебе даже не позвонят, потому что твои знания действительно стоят 80, а им надо тех, кто знает на 160к, чтобы уплатить 80, понимаешь? Капитализм.

Цукерберг рекомендует:  Как спроектировать интерфейс мобильного приложения

3) Будешь фрилонсить? Ох, лол. Это выход, если у тебя нет работы и ты живешь в деревне. А таких как раз весь фриланс и есть. Вчера я оставил заявку, оценил работу я в 6 дней и 10к. Стоит ли говорить, что набежали люди, которые предложили 20$? Всего заявок больше 50. Дорого ли я прошу за 6 дней работы? Это 40к в месяц, это дорого для программиста? Нет. Но 20$ и 350$ сильно разная цена, поэтому заказ уйдет кому-то, но не мне. Возможно, в украинской деревне ты сможешь на 20$ в неделю позволить себе купить то, что не можешь вырастить на огороде, людям надо выживать и никто не виноват в этом, просто международное разделение труда, дорогой друг, и не надо мне втирать про главное качество, в 15 раз больше за качество не заплатят никогда.

4) Ок, я тогда буду сам предпринимателем, найму работников на фрилансе, а продам дороже. Ну попробуй, лол. Твои поделки уровня фриланса ненужны никому, нормальных заказов на фрилансе не будет никогда, а заказ от большой конторки ты не сделаешь сам, а скилы фрилансеров не позволят это сделать. Нанять программистов можно в штат, но совладеешь ли ты с ними? Если ты не компетентен, ты не оценишь сроки грамотно, не поймешь, кто халявит, а кто нет. А если ты компетентен, у тебя большой опыт, ты сможешь это сделать, но потянешь ли ты бизнес? Ведь ты знаешь программирование и только. А где ты опыт взял? Делал дома свои поделки? А на что ты жил? На фрилансе? Опыт фриланса — это не опыт программинга, а деградация и полное дно. Потом, зарплаты, аренда, все это дорого. От этого будет дорогая конечная цена. А много физ.лиц уровня фриланса в любом гугле предложат цену лучше, удержишь ли ты клиентов? А компаниям ничего не мешает заказать сайт в регионе, в любом городе за мкадом или кадом, где будет в разы дешевле.

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

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

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

И помни, что основная часть заказов всегда за откаты, взятки, знакомства.

Ты можешь привлечь инвестиции, но это сорт оф роспил. Венчурные фонды есть, но инвестируют ли они в тебя? почему? ЗА идею? ЛООООЛ! Они инвестируют не свои деньги, а государственные или инвесторов. Дальше продолжать про откатные моменты?

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

Заработать грузчиком, маляром, водителем можно те же деньги, что программистом, только чтобы таскать грузы, не нужно знать фрэймворки. Подумай, стоит ли идти программером, открывать студию, делать проекты сейчас, когда рынок перенасыщен, очень перенасыщен. Есть ли у тебя связи? Можешь ли ты давать взятки и откаты? Уверен ли ты, что тебя возьмут за 120, а не за 30к? А инфляция никуда не денется. Быть программистом не круто, дорогой друг.

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

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

Энжой ё капитализм.
Эта сфера просто дно, я считаю.

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

Почему программисты много зарабатывают? Что такого они умеют? Как этому научиться?


Рядовые программисты нередко зарабатывают больше 100 тыс. рублей в месяц. Лучшие — в два-три раза больше, при этом за ними бегают рекрутеры. Вдобавок, они получают кучу «плюшек» — от бесплатных обедов и расширенной медстраховки до новой техники Apple и корпоративной няни для детей. Кажется, хорошо быть программистом. А как им стать? Где учиться? Объясняем, что нужно уметь, чтобы работодатели вас «хантили» и баловали.

Какие программисты нужны?

В первом полугодии 2020-го вакансий в IT-сфере стало больше на 7%, по данным hh.ru. Больше всего рынок нуждается в топовых специалистах. В конце прошлого месяца на сайте было размещено 1036 вакансий для Junior (стажеры, начинающие), 1353 вакансии для Middle-специалистов (линейные сотрудники), 8016 вакансий для Senior (руководители, ведущие разработчики). Топ-10 востребованных специалистов по итогам полугодия выглядит следующим образом:

  • Python Developer;
  • Frontend Developer;
  • Mobile Developer (iOS);
  • С# Developer (.net);
  • Java Developer;
  • C/C++ Developer;
  • Product Manager;
  • Devops Specialist;
  • Data Engineer;
  • PHP Developer.

Глядя на этот рейтинг, уже можно понять, какие навыки требуются работодателям. В первую очередь нужно овладеть актуальными языками программирования. Сегодня топ — это Python, С# и C++, Java, PHP, судя по данным hh.ru. Согласно ежегодному глобальному опросу IT-специалистов Stack Overflow, эти языки входят в десятку популярных. А в первой тройке — JavaScript, HTML и SQL. Python на четвертом месте, но в последние пару лет он движется вверх быстрее других. По данным github, первая пятерка популярных языков (по убыванию) — это JavaScript, Python, Java, Go, С++.

Где учиться программировать?

Важно правильно выбрать направление и навыки для изучения. 10–15 лет назад студентов вузов еще заставляли учить языки Pascal и Delphi, а сегодня ими никто не пользуется. И некоторые языки, которым учили пять-шесть лет назад, утратили актуальность.

«В 2013 году я заканчивал университет, и нам не давали Python, о нем только поговаривали как о перспективном языке, — рассказывает Евгений Соколов, академический руководитель программы «Прикладная математика и информатика» ВШЭ. — На первой работе я использовал R для работы с данными. Сейчас он не так широко используется, а Python очень популярен. Это первый язык программирования, которому мы учим многих студентов. Выучить его проще, чем многие другие, в интернете много материалов, под него есть большое количество библиотек для прикладных задач. Библиотека — это набор уже готовых методов, можно с ее помощью решить стандартную задачу, а не программировать решение с нуля».

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

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

Или же врачу или историку из этого примера нужно самому освоить язык программирования. В ВШЭ есть программы допобразования, где много взрослых людей — тех, кто хочет переучиться со своей профессии на программиста, и тех, кто хочет освоить тот же Python для своей работы.

«Сейчас на IT-специальности огромный конкурс, наверное, как на юрфак в нулевых, — говорит Евгений Соколов. — У нас очень высокий проходной балл, мы стабильно из года в год набираем много олимпиадников. Студенты ВШЭ, специализирующиеся на информационных технологиях, учат второй обязательный язык — это зачастую С++. Есть возможность изучать и другие языки, например в рамках курсов по выбору, — многие выбирают Java, есть C#».

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

И чему учиться дополнительно?

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

«Работодатели ожидают, что IT-специалист имеет опыт работы в командах с использованием программ Jira и Confluence (это таск-менеджеры, в которых сотрудники общаются и выполняют задачи по проекту — прим. ТАСС)», — перечисляет Мария Игнатова, руководитель службы исследований компании HeadHunter.

Хороший профи знаком с различными новыми способами организации работы — Scrum, Agile, Kanban, Waterfall. Это методики, которые программисты придумывают, чтобы работать еще быстрее (иногда экстремально быстро) и лучше. Далеко не во всех сферах изобретается столько методов для повышения экономической продуктивности. Вот и одна из причин, почему программистам так хорошо платят. Впрочем, главным образом не поэтому, а потому что их не хватает.

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

Что надо уметь, чтобы работать во «ВКонтакте»?

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

Он дает несколько общих правил.

  • Если вас привлекает Frontend-разработка, то вам точно понадобится Javascript.
  • Привлекает финансовый сектор? Java, Scala, возможно, C#.
  • Мобильная разработка? Отличный выбор, это очень востребованные специалисты: iOS-приложения сейчас разрабатывают на Swift, а Android-приложения — на Java и активно набирающем популярность языке Kotlin. Кстати, его разработали в Петербурге специалисты компании JetBrains и назвали в честь одного из островов Финского залива.
  • Хотите стать системным программистом, писать библиотеки для работы на низкоуровневом языке программирования или высокопроизводительные инструменты? Тогда C и C++.
  • И если вас привлекает машинное обучение — изучайте Python.

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

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

Выгодно ли быть программистом? С точки зрения манимейкинга, заработка и здоровья. А как стать программистом?

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

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

Итак, тем, кто хочет начать изучать программирование, посвящается. Сначала о плюсах программирования.

Плюсы:

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

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

3. Перейти с одного языка на другой довольно просто. Для знающих C++ никакого труда перейти на PHP нет (у меня это заняло 2 дня).

4. Я считаю это плюсом: программисты – почти секта. Свои шутки, свой внешний вид, разговоры о том, в чем «нормальные люди» не понимают не слово. Майки, кружки, кепки с непонятными словами. И только второй такой же, посмотрев на все это – оценит по достоинству. Мне нравится :)

5. По поводу фриланса -можно сидеть себе целый день дома и нормально зарабатывать.

6. Можно выучить программирование самостоятельно. А вот выучить, например, машиностроение самостоятельно не выйдет.

Минусы:

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

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

3. Программист привязан к компьютеру. Сломался компьютер – не может работать. Кроме того, если сгорит винчестер, то часто еще и теряются многолетние наработки. Хотя от этого спасает бекап.

4. Работать через Интернет сложно, т.к. если он (интернет) сломается, а еще и нужно сдавать проект… Такая беготня начнется, Вы не представляете. Тот, кто не купил ноутбук будет в этот момент проклинать все на свете :)

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

6. А вот и хрен )) Это все.

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

Теперь о возможности заработать.

Я уже давно занимаюсь только фрилансом и своими проектами и могу сказать – 2k$ в месяц – это нормально (для фриланса). Но нужно учитывать, что работать нужно каждый день и часов по 10, а это уже тяжело (я сейчас зарабатываю меньше). С постоянной работой хуже – средняя начальная ставка в моем городе около 500-800$/месяц. А выйти на 1000$+ на постоянной работе очень сложно (повышения почти никогда не дают).

Цукерберг рекомендует:  Python OpenCV-библиотека

Теперь о плюсах в плане манимейкинга.

Я считаю, что для манимейкера важнее быть программистом, чем СЕО. По очень простой причине – СЕО легче :) Да-да, СЕО легче. Оно часто отнимает больше времени и туда нужно вкладывать деньги, но оно легче. Если разобраться в нем, то оно вообще банально (все супер-методы продвижения обычно сводятся к медиа-рекламе и ссылкам).


А вот написать какой-нибудь позарез нужный скрипт СЕОшник, как правило, не может. Ну например, у Вас есть база из 50.000 каталогов. И нужно ее проверить – не закрылись ли эти каталоги или не попали ли в бан в Яндексе. Программист за 5 минут напишет скрипт для проверки всей этой базы, а что делать СЕОшнику? Руками что ли проверять? Или за деньги заказывать такой скрипт? А за деньги – не дешево, долларов 100.

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

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

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

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

Теперь я порекомендую, как стать программистом (вариант – «учиться в ВУЗ» я не рассматриваю). Конечная цель для нас – писать в Web. Есть два пути – суть самурая и путь идиота.

Путь самурая.

Обычно учить все нужно по книгам, сразу говорю. Статьи из сети не подходят – слишком непонятно там все. Купите какую-нибудь толстую книгу по C++ и попробуйте пару недель почитать. Покупайте книгу о программировании на «чистом» C++, например самоучитель от Бьерна Страуструп. Причем читать книгу с компьютера я бы не рекомендовал. Писать лучше всего на Borlanc C++ 3.1

Когда что-то начнете понимать в C++, можно переходить к Perl. Почему к перл? Потому, что он – сложный! И непонятный. И дает заодно знания о Linux (хотите-не-хотите, так сказать). «До победного» его учить не обязательно, но знаеть о нем точно необходимо.

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

А уже только потом можно купить тонкий и дешевый справочник по PHP и MySQL. Там все будет понятно сразу, после таких-то знаний. ;)

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

Путь идиота.

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

Так вот. Тут все просто – сразу покупаем книгу «программирование PHP + MySQL для начинающих» и начинаем ее читать. Проблема тут очевидна: ничего не понимая в программировании, не имея опыта – сразу окунуться в Web и базы данных. Это сложно. И Вам, я думаю, понятно, какое качество кода будет у таких «программистов», если вообще код будет.

Продавать ничего нельзя, боже упаси! Но для себя кое-что делать уже будет можно.

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

А вообще, если есть желание, то пугаться не нужно. Попробуйте сначала первый метод, потом второй. Я верю – у того, кто хочет, все получится!

Стоит ли становиться программистом: сложности профессии

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

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

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

Миф первый: научиться можно быстро

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

В реальности есть два пути:

  • Самообразование. В том числе с использованием различных тематических курсов. Обучение обычно занимает около 2-3 лет. При этом максимум внимания нужно уделять практике. Создавайте программы, сайты, различные «приблуды» для себя и друзей. Практикуйтесь – только при наличии портфолио с интересными проектами вы сможете претендовать хотя бы на уровень джуниора.
  • Обучение в ВУЗе. Диплом – дело хорошее. Но и здесь придется дополнительно учиться самому. В процессе учебы вы получите глубокие знания в области математики, алгоритмизации и т.д. В вопросах языков программирования и программных систем даже лучшие ВУЗы безнадежно отстают от жизни.

А дальше нужно морально готовиться к постоянному повышению квалификации. Сфера IT развивается стремительно. Появляются новые языки программирования и модернизируются существующие, постоянно выходят новые версии программных инструментов.

Будьте готовы регулярно тратить время на изучение новых систем, которые будут устаревать раньше, чем вы сумеете в них всерьез разобраться.

Миф второй: программировать может каждый

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

Настоящий программист должен совмещать в себе:

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

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

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

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

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

Миф три: элитарность профессии

Особое, иногда даже восторженное отношение к айтишнкам – удел обывателей, начитавшихся тех самых «историй успеха». Возможно, вами будет очень гордиться мама. Будут смотреть «снизу вверх» менее успешные друзья. Очень может быть, что вы начнете намного быстрее ровесников, занятых в других сферах, получать приличный доход. А когда вы достигнете уровня senior, вам будут завидовать коллеги в профессиональных сообществах. На этом, собственно, вся «элитарность» заканчивается.

Разговоры о «новой нации» или «особой касте избранных», столь любимые на тусовках программистов, в реальности – не более, чем самолюбование.

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

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

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

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

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

Доброго времени суток всем, или недоброго. В связи с последними событиями в моей жизни, решил сделать «антимотивационный» пост на тему программирования, а именно: «Почему плохо быть программистом». На данный момент я отработал как во фрилансе, так и в различных компаниях специализирующихся на разработке ПО. Я делал по 6-10 приложений для АйОси в день (норматив такой был в одной компании), писал движки для андройд-игрушек, отлавливал баги в C#-прогах и занимался вообще всем чем только можно будучи фрилансером, в итоге я точно могу сказать, что далеко не всегда я был рад выбранной профессии. Почему? Для начала тезисно:

  • Вы будете учиться всю свою жизнь;
  • Вас будут постоянно обманывать, обворовывать, материть, угрожать и заставлять испытывать прочие «радостные» эмоции;
  • Если вы не любите математику – вам ппц;
  • Если вы не понимаете математику – вам ппц;
  • Если вы думаете, что программисты получают кучу денег ничего при этом не делая – вам ппц;
  • Если вы начитались примеров успешных программистов и думаете, что сможете также – не мечтайте, всего скорее вы станете стандартным «быдло-кодером» с ЗП 30к деревянных;
  • Если у вас нет логического мышления – забудьте про карьеру программиста;
  • Если вы не можете сидеть 18 часов без перерыва отлавливая один-единственный свой баг – вам ппц;
  • Еще очень много разных если, но разберемся поподробнее.

Итак, программист – это наемный рабочий! Соответственно ЗП его зависит от рыночной ситуации и если сейчас, например, настал бум Питон-кодеров и, учитывая низкий порог вхождения питона, то ЗП у них мягко говоря н4м. И, да, с ЗП совсем отдельная песня, на хедхантере видно много вакансий по 160-200к+++, НО посмотрите на требования к этим вакансиям… Например, с вас требуют знания 8-10 фреймворков, по факту юзают они от силы два. НО при устройстве на работу вам спокойно скажут, что раз вы знаете только 9 из необходимых 10, то и ЗП вам будет далеко не 160к, а в лучшем случае 60.
Скажете, что пойдете работать в Гугл, фейсбук, майкрософт или интел? Очереди желающих туда огромны, и если вы не «реально крутой программист от бога», при этом еще и гений, то можете забыть про работу там, даже если и попадете, то карьерного роста не будет это факт.
А еще, как уже было отмечено, вы будете постоянно учиться. После работы дома вы будете читать не Терри Пратчетта, а в десятый раз перечитывать 3 ий том Кнута т. к. до сих пор половины там не понимаете. Да-да, если вы не любите учиться – вам ппц=) В 5 ом классе когда я только начал увлекаться всем этим делом, VBA был очень крутым и востребованным языком программирования, а где он сейчас? Если не учиться постоянно, то и без работы можно остаться. Свой самый первый сайт я писал чисто на html, потом открыл для себя дримвьювер, а теперь мой блог крутится на ВордПрессе и я практически не лажу в его код…
Пару слов про фриланс – это огромная конкуренция и если не получится создать себе базу клиентов, то о нормальном доходе можно забыть, а создать ее очень трудно, сначала приходится работать бесплатно «на портфолио» и только потом, ВОЗМОЖНО, придет успех. Я вот свою базу уже пох**ил, а зря, назад теперь дороги нет, все те люди нашли себе других фрилансеров, а мне либо начинать все с нуля, либо искать другие источники доходов.
Вообще по факту мне повезло: мой отец – преподаватель информатики в университете, я с пятого класса твердо решил стать программистом, мне действительно НРАВИТСЯ программировать (даже просто для себя, не ради денег) т. е. это еще и мое хобби, нет особых проблем с математикой, логикой, а еще я могу просидеть 18 часов отлавливая баг)))) Поэтому если вам это не нравится – НЕ ИДИТЕ в программисты, у меня в бытность мою студентом в группе была куча девчонок, ни одна из них не стала программистом, да что там говорить, они калькулятор простой написать не могли и все лабы/курсаки/дипломы им делали парни (т.е. я и еще пара ребят) и какой толк от такого образования? Ни одна из них не работает по специальности в данный момент и, как по мне, они просто убили 5 лет жизни непонятно на что, впрочем, стоит отметить, что и парни далеко не все стали программистами, опять же по тем же причинам.
Итог? Смотрите тезисы, и главное – если вы не любите программировать (действительно ЛЮБИТЕ), не идите в программисты НИ-КОГ-ДА.

Понравилась статья? Поделиться с друзьями:
Все языки программирования для начинающих