Как самостоятельно стать программистом с нуля

Содержание:

Навыки, необходимые программисту

Английский язык

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

Коммуникация

Не только на английском

Для разработчика чрезвычайно важно хорошо общаться. И с командой, и с клиентом

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

Командная работа

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

Принятие критики

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

Организация работы

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

Что почитать?

Онлайн-медиа — здесь обсуждаются нишевые события и более узкие темы.

  • Google Developers — надежный первоисточник, из которого можно узнавать актуальные новости о продуктах компании.
  • I Programmer — портал для программистов. Новости обо всех направлениях от UX до робототехники и всех языках программирования.
  • Smashing Magazine — статьи о веб-дизайне: разбор кода, свежие кейсы, советы по трудоустройству и общению с клиентами.
  • Хабр — универсальный русскоязычный ресурс, где можно найти гайды, обсуждения, код-ревью и кейсы от разработчиков разных компаний от IT-гигантов до небольших digital-агентств.
  • Вастрик — авторский инди-блог про IT и выживание в мире технологий. Тексты про машинное обучение, блокчейн, VR, вычислительную фотографию, машинный перевод и многое другое.
  • For Web — блог в Twitter с полезными материалами для фронтендеров: свежие статьи, доклады и инструменты от сибирского разработчика Андрея Романова.

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

  • Reddit — популярный форум на все темы подряд, на котором часто сидят опытные разработчики, выкладывают свои кейсы и комментируют другие публикации. Найти их можно по тегу «programming».
  • Stack Overflow — закрытый клуб для программистов без рецептов и котиков. Здесь можно запросить у опытных коллег code review, комментировать публикации и давать им оценку.
  • CyberForum — форум программистов, системных администраторов, где помогают в решении задач по программированию.
  • Game Dev — форум, на котором разбирают создание игр и все, что с ним связано.

Цитаты про программистов

Когда кажется, что все уже работает, все объединено в систему — вам еще осталось работы на четыре месяца – Ч. Портман

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

Ошибка? Это не ошибка, это системная функция – Д. Уэнделл

Пользователь не знает, чего он хочет, пока не увидит то, что он получил – Э. Йодан

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

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

В любой программе есть ошибки – аксиома.

Законы Мерфи для программистов

Сложность программы растет до тех пор, пока не превысит способности программиста.

Чем больше программист делает ошибок, тем быстрее он делается учёным.

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

Программист видит ошибки только в чужих программах.

Если написанная программа сработала правильно, то, скорее всего, программист не понял задание.

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

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

Если программа уже полностью отлажена, то ее нужно будет переделать.

Любая программа стремится занять всю доступную память.

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

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

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

Если программа полезна, то её обязательно придётся переделать.

В любой программе всегда есть ещё одна ошибка.

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

Если разработка идет хорошо — ждите серьёзных осложнений.

Если кажется, что хуже уже некуда, то вскоре выяснится, что это далеко не так.

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

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

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

Плюсы и минусы работы программистом

Плюсы работы программистом:

  • Высокая заработная плата. Средняя зарплата программиста в Москве по данным Trud.com — более 86 тысяч рублей. В регионах ситуация не намного хуже, так как айтишники ценятся везде. Опытные программисты могут зарабатывать 100 тысяч, 150, 200 тысяч рублей в месяц и больше!
  • Свободный график. Часто работодателю требуется не сам факт пребывания программиста в офисе, а выполнение им определенного объема работы. Поэтому многим айтишникам предлагается более-менее свободный график: они могут выбирать время посещения офиса, брать выходные, приходить после обеда, работать вечером вместо утра.
  • Условия работы. Обычно работодатель обеспечивает очень комфортное рабочее место: мощные компьютеры и качественные мониторы, которые снижают нагрузку на глаза. Крупные московские и питерские IT-компании в последнее время массово закупают для своих сотрудников эргономичные стулья Herman Miller (аналог Lamborghini в сфере автомобилестроения), стоимость которых — от 100 тысяч рублей за единицу. Также устанавливают столы с регулируемой высотой столешницы, обеспечивают бесплатное питание, в том числе: фрукты, соки, чай, кофе и печенье. Программисты, играющие в настольный теннис в разгар рабочего дня, — вполне привычное явление в успешной IT-компании.
  • Возможность удаленной работы программиста. Практически любой айтишник может найти удаленную работу, которая будет приносить ему не меньше денег, чем заработок в офисе. Это касается как фриланса (выполнение большого количества мелких заказов), так и удаленного сотрудничества с одним работодателем.
  • Перспективы – это главное. Многие известные IT-компании, среди них и легендарная Microsoft, заявляют о нехватке программистов. Ожидается, что число незанятых вакансий к 2024 году составит около 1 миллиона. Работа программистом на дому и в офисе с каждым годом становится все более популярной.

Минусы работы программистом

  • Низкая социальная активность. Несмотря на то, что программисты часто работают в большой компании, они ограничены в общении. В основном они получают инструкции в виде тикетов и конкретных задач, по которым нужно выполнять работу. Программирование требует усидчивости и готовности к многочасовой деятельности, иногда и вовсе рутинной, а это в свою очередь не предполагает активного общения с коллегами. В первую очередь, этот отрицательный момент касается дистанционной работы программистом.
  • Сидячий малоподвижный образ жизни — о его вреде написано и сказано много. Поэтому факт остается фактом: профессиональные заболевания программистов включают проблемы с сердечно-сосудистой системой, остеохондроз, падение зрения, туннельный синдром.
  • Необходимость постоянно обучаться. Программист — не повар, который может выучить 10 рецептов классических блюд и всю жизнь их готовить в среднестатистической столовой, ему постоянно требуется совершенствовать свои навыки и приобретать новые знания. Порог входа для работы в IT-индустрии постоянно повышается. Еще 10 лет назад верстальщик должен быть знать HTML и CSS, сейчас же без понимания JavaScript и каких-либо фреймворков вроде ReactJS и Vue, его резюме просто не воспримут всерьез. Старые подходы стремительно теряют популярность, и как грибы после дождя возникают новые языки программирования, а с ними и сотни технологий и фреймворков.
  • Стандартная практика — 8-часовой рабочий день — уходит в прошлое. Работа программиста — это выполнение определенного объема работы. Плюс — с этим можно справиться за 2-3 часа, минус — иногда решение той или иной задачи требует дополнительной работы дома.

Как пройти тестирование на профориентацию?

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

  • для конкретной профессии;
  • по методике Е. А. Климова, Э. Х. Давыдовой, расширенные, другие;
  • на профориентацию по школьным предметам;
  • на определение профессионального типа (Дж. Голланд);
  • карта интересов, сильные стороны характера, иные.

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

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

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

В каком возрасте лучше проходить тест?

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

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

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

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

В-третьих — должен быть трудолюбивым

Очень важно уметь работать длительное время над «неинтересной» или рутинной задачей, с детальной, монотонной проработкой всех возможных ситуаций

Мне нравится анекдот про программиста:

«Ложась спать, программист ставит у кровати два стакана. Один с водой, другой — без.

Стакан с водой — на случай, если захочется пить. А без воды — на случай если пить не захочется»

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

Пожалуй, такая вот дотошность в работе — ключ к успеху.

Трудное начало

Вы уже знаете, что хотите стать программистом, но как это сделать? Учиться дома? Купить курс? Поступить в ВУЗ? С какой технологии начать?

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

Самостоятельное обучение программированию

Многие программисты, как новички, так и опытные, постоянно развивают свои навыки, обучаясь самостоятельно. И если для опытного разработчика это легко, вовсе не обязательно, что и для новичка результат будет таким же. Если вы решили заниматься самообучением, используйте, например, такие источники, как YouTube, StackOverflow, Udemy.

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

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

Курсы и школы программирования

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

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

Шаг 4. Получите образование

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

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

В МГ, МГТУ им. Н.Э.Баумана и МФТИ есть бесплатные курсы от Mail.ru Group (Технотрек, Техносфера и Технопарк). Поступив на них, можно стать профессионалом и устроиться в компанию мечты.

На этом этапе изучить алгоритмов и структур данных. Воспользуйтесь следующим списком книг:

  • «Алгоритмы. Руководство по разработке», С. Скиена
  • «Алгоритмы» С. Дасгупта, Х. Пападимитриу, У. Вазирани
  • «Алгоритмы. Введение в разработку и анализ», А. Левитин

Узнайте больше о бизнес-стороне

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

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

«Поговорите со своими коллегами в бизнес-отделах и задайте жесткие деловые вопросы своим руководителям», — сказал Слоян.

«Например, если вы работаете на платформе онлайн-рекламы, основной технологией которой является персонализация рекламы, определение и внедрение инноваций в алгоритм релевантности рекламы сделает или сломает ваш бизнес».

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

Про учёбу

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

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

Больше всего мне понравился блок, посвящённый автоматизации тестирования. По его завершении мне даже удалось монетизировать знания — немного заработать на фрилансе. Я увидел на YouDo задание: раз в два часа поднимать по 5–6 объявлений на разных сайтах. За пару часов я написал сценарий на Katalon Studio и отправил его работать на сервер заказчика. Так на автоматизации я заработал первую тысячу рублей.

Недавно я получил в GeekBrains сертификат по базам данных. Осталось пройти практику, но я не спешу: жду, когда появится более подходящий мне проект и преподаватель. Пока изучаю Python, PHP и HTML/CSS, чтобы уверенно чувствовать себя в вебе. 

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

Бесплатные онлайн-тесты на профориентацию для школьников, подростков и взрослых людей

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

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

Самостоятельно

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

Классическое высшее образование

Получить высшее образование в области информационных технологий можно во множестве ВУЗов. При поступлении лучше ориентироваться на крупные или федеральные университеты, хорошо зарекомендовавшие себя при подготовке IT-специалистов, имеющих хорошую образовательную базу с известными программистами в качестве преподавателей. Ещё одним фактором качества обучения является процент трудоустроенных по специальности выпускников, особенно работающих в самых известных компаниях: Microsoft, Google, Яндекс, СКБ-Контур и других.

В России обучение программистов ведётся на следующих специальностях:

02.03.02 – Фундаментальная информатика и информационные технологии (бакалавриат)

02.04.02 – Фундаментальная информатика и информационные технологии (магистратура)

09.03.03 – Прикладная информатика (бакалавриат)

09.04.03 – Прикладная информатика (магистратура)

02.03.01 – Математика и компьютерные науки (бакалавриат)

02.04.01 – Математика и компьютерные науки (магистратура)

09.01.02 – Компьютерная безопасность

Базовые требования к профессионалу

  • Критическое мышление — умение выделять главное в требованиях, подходить к своему и чужому коду с точки зрения постоянной оптимизации и улучшения; навыки поиска лучших путей решения задач.
  • Ориентированность на работу с деталями — в программировании не бывает мелочей. Даже если вы не написали ни строчки кода, вы наверняка слышали шутки про то, как отступ или потерянная точка с запятой отнимают часы в поисках бага и причин ошибок при компиляции. Невнимательный программист — нонсенс.
  • Сосредоточенность, усилие, терпение — нередко приходится писать большие фрагменты кода, глубоко погружаться в поиск решения задачи. Любой отвлекающий момент растянет эти процессы надолго, поэтому программист должен иметь явно выраженный навык «свинцовой задницы», позволяющей дотошно разобраться в проблеме.
  • Склонность к переработкам — вас сейчас возмутит этот пункт, особенно если вы выпускник или студент. Как так, переработка?! Только платно, по ТК РФ и вообще! Но нет, поработав немного, особенно на удалёнке, вы заметите, что с радостью отдаёте работе гораздо больше часов жизни, чем ей положено. Кстати, не замечал, чтобы кто-то активно боролся с этим явлением. Например, я пишу эту статью, на моих часах 00:09, а впереди ещё много текста и размышлений + основная работа 😉
  • Навыки активного слушания и общения — вам придётся понимать, что вам хочет объяснить внешний или внутренний заказчик. Да, иногда их ТЗ звучат как описания товаров с Алиэкспресс, и вам придётся вытягивать детали в процессе тесного диалога и длительного обсуждения. 
  • Умение работать в команде — программист никогда не работает один и нужно уметь вписаться как в команду, так и в правила управления разработкой, методологии и code style вашей компании.
  • Потребность в самообучении — именно потребность. Вы должны непрерывно и осознанно изучать новые фреймворки, библиотеки, SDK, API, языки программирования и прочие инструкции и материалы. Остановитесь — через 6-12 месяцев отстанете от поезда.
  • Ответственность — программист всегда отвечает за качество кода, который он создал, за работу программы, за её стабильность и быстродействие. Если вы склонны валить вину на тестировщика, заказчика или коллегу-разработчика, вам лучше пойти в менеджеры проекта (очень злая шутка, простите). А если серьёзно, программист отвечает за программу не меньше, чем хирург за операцию или строитель за мост или здание. 

Внесите свой вклад в сообщество с открытым исходным кодом

Когда вы вносите свой вклад в сообщество с открытым исходным кодом, это расширяет ваши возможности

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

Когда вы отдаете что-либо обществу, убедитесь, что вы также пользуетесь возможностью получать в ответ!

«Признайте, насколько важно взаимодействовать с вашим профессиональным сообществом, но также долго и упорно думайте о том, какой вы хотите видеть свою роль в данном месте», — сказал Чарли Роббинс, директор по инженерным вопросам GoDaddy и бывший член совета директоров компании. Node.js Foundation

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

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

Как выглядит работа программиста?

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

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

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

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

Тест: А ты точно программист?

Лимит времени:

из 12 заданий окончено

Вопросы:

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12

Вы уже проходили тест ранее. Вы не можете запустить его снова.

Тест загружается…

Вы должны войти или зарегистрироваться для того, чтобы начать тест.

Вы должны закончить следующие тесты, чтобы начать этот:

Результаты

Правильных ответов: из 12

Ваше время:

Время вышло

Вы набрали из баллов ()

  • У тебя точно есть опыт в разработке. Либо ты знаешь, как смотреть код HTML-элементов на странице и только что лишил себя возможности по-настоящему проверить себя.

  • Да, ты программист, но пока что только начинающий.

  • Пока что о программировании ты знаешь мало. И только в теории, скорее всего.

  • Ты почти ничего не знаешь о программировании.

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  1. С ответом

  2. С отметкой о просмотре

  1. Задание 1 из 12

    1.

    Начнём с простого. Какую первую программу обычно пишут программисты?

    • Hello world

    • Сортировку «пузырьком»

    • Для взлома аккаунта «ВКонтакте». Такая программа есть у каждого программиста

    Правильно

    Да, конечно. Это все знают.

    Неправильно

    Обычно всё же начинают с вывода на экран «Hello world».  А программ для взлома Вконтакте не существует.

  2. Задание 2 из 12

    2.
    • Да, конечно

    • Нет, это фантастика

    Правильно

    Правильно. Не бывает такого.

    Неправильно

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

  3. Задание 3 из 12

    3.
    • Выключу комп и спокойно пойду спать — дело сделано

    • Порадуюсь за себя и продолжу писать код

    • Буду искать ошибку в компиляторе, где-то она должна быть

    Правильно

    Правильно. Совсем без ошибок не бывает.

    Неправильно

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

  4. Задание 4 из 12

    4.
    • Изменятся, конечно

    • Не изменятся. Вы же сами сказали, что всё чётко зафиксировано

    Правильно

    Обычно так и бывает, да. Заказчик сам не знает, чего хочет.

    Неправильно

    Ты в сказке живешь? Не бывает так.

  5. Задание 5 из 12

    5.
    • Да

    • Какой правильный ответ на вопрос про рекурсию?

    Правильно

    Какой правильный ответ на вопрос про рекурсию?

    Неправильно

    У тебя ошибка типов. Перечитай вопрос.

  6. Задание 6 из 12

    6.
    • Была одна, теперь ошибок не будет

    • Неизвестно

    Правильно

    Правильно. Кто знает, может, ты ошибся, исправляя этот баг?

    Неправильно

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

  7. Задание 7 из 12

    7.
    • Надо сначала детально изучить проект, чтобы понять это

    • Его код просто ужасен, ну кто так пишет!

    Правильно

    Истинно так! Как может быть хорошим код другого программиста, в котором тебе надо разобраться?

    Неправильно

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

  8. Задание 8 из 12

    8.
    • 2

    • 1

    Правильно

    Да. Деревья 0, 1, 2. Кот на среднем, правильно.

    Неправильно

  9. Задание 9 из 12

    9.

    Теперь чуть сложнее. Что такое Пик Балмера?

    • Гора в Северной Америке

    • Феномен: при определённой концентрации алкоголя в крови программистские способности резко возрастают

    • Яхта Стива Балмера — бывшего генерального директора Microsoft

    Правильно

    Ты знал!

    Неправильно

    Неправильно.

  10. Задание 10 из 12

    10.

    Что такое стринги?

    • Разновидность мини-трусиков

    • «Верёвки» на английском

    • Несколько переменных типа «строка»

    Правильно

    Да, правильно. Вот они: string s1, string s2.

    Неправильно

    В принципе, конечно, да. Но нет. Тест же про программистов.

  11. Задание 11 из 12

    11.
    • 5

    • 4

    • 31

    • 32

    Правильно

    Верно! В двоичной системе счисления 11111 будет 31 в десятичной. Это если все пальцы разогнуть.

    Неправильно

    Используй двоичную систему счисления — загнутый палец будет ноль, разогнутый — один.
    А что касается  «32», то ход мыслей у тебя правильный, скорее всего, но вот 11111bin = 31dec.

  12. Задание 12 из 12

    12.

    Буратино дали три яблока. Два он съел. Сколько яблок осталось у Буратино?

    • Одно

    • У него не осталось яблок

    • Никто не знает наверняка

    Правильно

    Правильно. Переменную забыл обнулить. Мало ли сколько у него было яблок изначально.

    Неправильно

    А вот и нет! Ты же не знаешь, сколько яблок у него было изначально. Мораль — обнуляй переменные.
    А насчет ответа  «У него не осталось яблок», то даже если считать, что изначально у него не было яблок, всё равно 3-2=1. У тебя всё в порядке с математикой?

Итоги теста

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

Допустим, вы способны. А стоит ли становиться именно программистом? Вдруг вы способны к чему-то ещё, возможно более подходящему для вас. А если и становиться программистом, то каким именно? Их много есть разных видов.

Ещё один важный вопрос — реально ли стать программистом. И реально ли им стать в 30 или в 40 лет?

Для ответов на все эти вопросы и на многие другие вопросы, для распутывания путаницы в голове есть толковая профориентация для школьников и профориентация для взрослых.

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

Если вы хоть раз в жизни с завистью смотрели на зарплаты в IT-сфере, попробуйте пройти наш тест. Кто знает, может быть, вы созданы для этой профессии?

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

Но готовы ли именно вы стать программистом? Попробуем разобраться с помощью теста.

  • 1) R;
  • 2) Ы;
  • 3) C.

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

  • 1) Максим 2 дня подряд проводил по 2 тренировки;
  • 2) Максим за неделю посетил 2 тренировки;
  • 3) За последние 3 дня у Максима было всего 2 тренировки.

3. Далее анекдот про программистов. Программисту потребовалось взять в долг тысячу рублей, но для ровного счёта у друга он попросил… Сколько?

  • 1) 1024 рубля;
  • 2) 10 тысяч рублей;
  • 3) 1 рубль.

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

  • 1) Будет чётко следовать карте;
  • 2) Постарается найти путь покороче;
  • 3) Отправится в долгие поиски, проверяя цены во всех окружающих кафе и ресторанах.

5. Перейдём к моделированию кода. Мария каждую пятницу после работы заходит в кондитерскую и покупает коробку эклеров. Если их нет, то покупает кусочек торта. Сколько логических операторов необходимо использовать, чтобы узнать, купила ли Мария коробку эклеров в любой запрашиваемый день (например, 48 дней назад).

  • 1) 1
  • 2) 2
  • 3) 3

6. Во время работы в офисе программист больше всего хочет

  • 1) Дождаться конца дня и пойти домой;
  • 2) Кофе и тишины;
  • 3) Славы и денег.

7. Завершаем наше тестирование непосредственно кодом. Все мы в школе на уроках информатики изучали язык Pascal. Что произойдёт после выполнения следующего выражения?

ReadLn(number);

  • 1) На экране отобразится значение переменной number;
  • 2) В оперативную память будет занесено слово «number»;
  • 3) Присвоение введённого значения переменной number и последующий переход на следующую строку.

Заключение

Подведем итоги. Чтобы начать обучение программированию, надо следовать поэтапно. Сделайте следующее:

  1. Заполните пробелы, если таковые имеются. Речь идет об архитектуре компьютера и английском языке.
  2. Изучите для начала теорию алгоритмов и структур данных.
  3. Выберите направление, в котором есть желание развиваться.
  4. В зависимости от направления подберите язык программирования.
  5. Наберитесь знаний об инструментах программирования и веб-фреймворках.
  6. Изучите базы данных.

И в качестве общих советов:

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

На блоге iklife.ru вы найдете еще больше информации о программировании и других сферах деятельности.

Удачи!

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector