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

Правильные установки

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

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

  • Процесс или цель. У мотоциклистов есть правило — объезжая препятствие, не смотри на него. В противном случае, ты с ним столкнешься. В таких длительных процессах, как смена профессии, можно провести аналогию. Если думать о своей цели 24/7 — рискуешь упустить важные оперативные решения или вовремя не среагировать на возникшую ситуацию. Дополнительно, твой путь будет длинным и мучительным. Научись наслаждаться процессом познания и созидания. Сделай свой путь легким и приятным. Помни, что жизнь также не имеет цели, — это процесс.

  • Жизненная энергия. Твоя энергия в сутках не безгранична. На что ее тратить и откуда черпать — целиком и полностью определяется тобой. Энергию можно тратить как на созидание, так и на потребление. Созидать можно нечто, объединяющее людей. А можно — разделяющее и ведущее к раздору. Созидание благ, объединяющих людей — наполняет тебя энергией. Деструктивные формы созидания отнимают твою энергию. Если энергия убывает быстрее, чем восполняется — возникает дисбаланс. В стремлении его восполнить мы обзаводимся плохими привычками, дающими быстрый и дешевый дофамин — вредное питание, алкоголь, думскроллинг и т. д. Бороться с плохими привычками бесполезно, если нет других источников восполнения жизненной энергии. Если ты будешь созидать блага для людей, то вопрос с наполнением себя энергией будет для тебя неактуален. Вредные привычки не будут развиваться и разрушать тебя.

Рекомендации к достижению

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

  1. Выбор пути. Куда идти? Вариантов множество. Frontend, Backend, Machine Learning, Mobile, QA Automation и т. д. Не советую пытаться зайти в мобильную разработку без опыта в ИТ — это довольно трудно для новичка. Если у тебя нет явных предпочтений — попробуй открыть HH и посмотреть вилки зарплат и количество вакансий для разных специализаций и языков программирования. Также, в вакансиях ты увидишь, что именно делают специалисты тех или иных направлений (вариативность будет отличаться в зависимости от специализации и языка программирования). Настоятельно советую внимательно изучить все востребованные специализации и языки программирования, прежде чем выбрать направление для себя. Очень плохой вариант — выбирать то, что уже выбрал твой знакомый. Или то, что тебе посоветовали. Возьми ответственность за свой выбор на себя и тщательно изучи все доступные варианты. Требования отчасти будут ясны из вакансий по выбранной специализации. Не поленись и просмотри хотя 50–100 интересных для тебя. Так сложится представление о сферах деятельности (советую дополнительно изучить понравившиеся сферы), и сформируются обобщенные требования к технологиям и навыкам.

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

  3. Курсы — не панацея. Реклама курсов создает иллюзию простоты и достаточности. Это не так. Ты получишь весьма поверхностные знания и крайне скудный объем практики. Лично я сторонник самообразования. Но у курсов есть два плюса: структурированность подачи и наличие единомышленников. Из минусов: часто ты не будешь успевать за скоростью подачи информации. Преподаватель может оказаться не очень талантливым или плохо знать предмет. Информация с курсов весьма поверхностна. Рассматривай альтернативы, советуйся с опытными ребятами. Знай, что платным курсам существует много бесплатных альтернатив. Также, некоторые книги могут заменить целый курс. Не покупай курсы в кредит, представив как ты уже зарабатываешь миллионы в будущем. Не верь сказкам про обязательное трудоустройство — это маркетинговые уловки.

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

  5. Где взять опыт? Опыта у тебя еще нет, и это большая головная боль. Врать о несуществующем опыте или приукрашать действительность не советую — быстро выведут на чистую воду и внесут в черный список. Лучше честно сказать о том, чего не знаешь и податься снова через год при отказе. Хорошим портфолио и визитной карточкой может служить репозиторий. Заведи себе публичный репозиторий на github. Выкладывать туда простейшие задачи, которые ты решал на курсах можно, но нежелательно. Лучше искать задачи на Kaggle, Codewars, LeetCode, CodeForce и решать их, сохраняя проекты в свой репозиторий. Обязательно научись оформлять readme, чтобы можно было понять, о чем проект. Также, оставляй комментарии в коде — это правило хорошего тона. Идеально — если будешь подсматривать, как реализованы опенсорсные проекты. В итоге, прокачка своего репозитория не заменит рабочий опыт, но будет служить показателем твоей вовлеченности и умения решать задачи.

  6. Собесы и еще раз собесы. Если тебя не зовут на собесы, но ты уже немного прокачался — ищи тех, кто уже работает по выбранной специальности и проси тебя прособеседовать. Потребуется пройти хотя бы десяток таких демо собеседований (с прокачкой скиллов между ними), прежде чем ты будешь готов к собеседованиям настоящим.

  7. Не рассылай резюме, если не готов. Нельзя рассылать свои резюме, пока ты объективно не готов. «Объективно» здесь — ключевое слово. Если тебя сумели оценить хотя бы 5–10 человек (и ты эти собесы прошел), у тебя есть прокачанный публичный репозиторий, ты освоил необходимые технологии и навыки, подтвердил их практикой — тогда можешь подаваться. Пойми, что хантеры завалены резюме от недоученных джунов. Кто‑то неделю проучился на курсах и уже подает резюме. Кто‑то вписывает в резюме те технологии и навыки, которые проходил в универе или слышал о них. Такое не любят. И это — красный знак.

Заключение

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

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

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

Комментарии (12)


  1. profFortran
    03.11.2023 11:30
    +11

    Как всё сложно... А я просто вуз закончил по смежной специальности, а потом на работу устроился.


  1. len2367
    03.11.2023 11:30
    +3


  1. CH10
    03.11.2023 11:30
    -7

    Отличная Статья!! Ещё бы знать как собой управлять? Как трудится естественный интеллект? Что такое сознание и где оно находится? Познать психологию, природу вещества и поля: https://vk.com/id463405223?w=wall463405223_660


  1. hVostt
    03.11.2023 11:30
    +1

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


  1. 0Bannon
    03.11.2023 11:30
    -3

    Еще один пункт - переезжать в москву или питер. Там все вакансии и вся айтишечка.


    1. DesertEagle
      03.11.2023 11:30
      +1

      Ну или, возможно, в будущем люди придумают удаленку, и никуда не надо будет переезжать.


      1. Vitimbo
        03.11.2023 11:30
        -1

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


  1. Wigleg
    03.11.2023 11:30
    +1

    Рекомендация для входа в АйТи: не-идти-в-айти


  1. Mackensen
    03.11.2023 11:30
    -1

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


  1. solonkov Автор
    03.11.2023 11:30
    -6

    Доброго времени суток! Первое - мобильные устройства часто бывают оффлайн и нужно все состояния и данные держать "в голове". Второе - нужно уметь взаимодействовать с бэкендом (отправлять запросы и парсить ответы). Третье - нужно владеть базовыми структурами данных (связный список, вариации очередей, хэш мапы и т.п.). Четвертое - нужно владеть базовой геометрией (школьный уровень) для умения двигать фреймы. Пятое - нужно уметь обрабатывать жесты пользователя (например, свайпы). Шестое - нужно знать системные фреймворки. И седьмое - языки для мобильной разработки относительно сложны. Если вас это не пугает, то продолжайте движение в сторону мобильной разработки! У вас все получится, если вам это направление откликается!


  1. qnauser
    03.11.2023 11:30

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


  1. ilyamodder
    03.11.2023 11:30

    То есть машинное обучение, где по-хорошему серьезная математика нужна, — это легко, а вот жсоны перекладывать на мобилке — сложно?)))