Начинающему программисту: Как стать программистом с нуля в 2023 — Tproger

Содержание

Как найти работу начинающему программисту — 10 работающих советов

Работа01 февраля 2023

Где искать и как найти работу в IT начинающему разработчику? 10 советов, которые помогут устроиться программистом даже новичку без опыта.


Содержание

Сложности для начинающих разработчиков при поиске первой работы в IT

— Главная сложность при поиске работы — отсутствие коммерческого опыта разработки, — уверена бизнес-тренер, практикующий психолог, коуч и HR компании Aligned Code Татьяна Мацкевич, — Потому что все работодатели хотят брать на работу специалистов минимум с двухлетним опытом, а у новичка его нет. К сожалению для junior-разработчиков, тенденция последнего года такая: работодателю некогда обучать, он оптимизирует расходы и стремится нанять разработчика сразу уровня Middle, а то и Middle+.

Помимо этого, существует ряд других сложностей, с которыми сталкиваются junior-программисты:

  • Неразвитые soft skills. Канули в лету времена, когда IT-специалист — это эдакий взъерошенный интроверт. Сейчас критично важно, чтобы сотрудник не только знал технологии и разбирался в computer science, но и умел вступать в контакт с клиентом и коллегами, презентовать свои умения и навыки, аргументировать свои решения, разрешать спорные ситуации.
  • Отсутствие релевантного опыта в том или ином домене или отрасли. Часто наниматель ищет не только опытного разработчика, а еще обращает внимание на наличие опыта в конкретной области, которого у начинающего программиста тоже может не быть.
  • Недостаточный уровень знания английского языка. Как правило, работодателю нужно знание языка на уровне В2-С1, на худой конец — В1, которого не всегда хватает для прохождения технического интервью на английском.

Узнай свой уровень английского

Как искать работу начинающему программисту

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

  • Для того, чтобы найти первую работу программисту, стоит зарегистрироваться и создать качественный профиль в LinkedIn. Рекрутеры и HR именно там в первую очередь ищут специалистов — начинающих в том числе. Грамотный профиль включает все проекты, в которых участвовал специалист, включая курсовые, лабораторные, freelance и коммерческие. Важно, чтобы в профиле были ссылки на GitHub и GitLab.
  • Среди релевантных источников поиска работы — различные специализированные сообщества типа форумов, Telegram и Discord-каналов и другие. Найдите их и следите за вакансиями.
  • Не обойтись для поиска работы и без специализированных сайтов. Такой точно есть в каждой стране свой. Добавьте их себе в закладки, скачайте приложение (если есть) и подпишитесь на рассылку новых вакансий от них.

Выбери подходящую вакансию

Как правильно составить резюме

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

  • Есть модный тренд — не размещать фото в резюме. При этом я обсуждала не раз этот вопрос с HR и рекрутерами, работающими в IT, и они все в один голос говорят, что фото очень помогает при отборе кандидатов. Фото должно быть актуальным, сделанным не позднее, чем полгода назад. На фото должен быть адекватный фон.
  • Ваши контактные данные должны быть расположены сверху и дублироваться внизу: чтобы их было легко найти, соответственно — легко с вами связаться.
  • Если у вас мало опыта или его нет совсем — ничего страшного. В резюме нужно описывать все проекты, в которых вы принимали участие. Описание проекта — это перечисление технологий, фреймворков, которые вы использовали, а также ваших функций на проекте. В общем, дайте развернутый ответ на вопрос, что именно вы делали.
  • Также стоит указать образование, курсы и сертификаты, если они у вас есть. Отмечайте свои знания только в той или иной технологии/языке программирования.
  • Обозначьте уровень знания английского, а также хобби и интересы.
  • В начале резюме сделайте краткое summary, в котором в двух-трех предложениях расскажите о цели поиска работы и о своих ярких чертах или особенностях. Например, что вы — мотивированный и ответственный, с чувством юмора, а также изучаете React и хотите найти компанию мечты.
  • К резюме можно написать сопроводительное письмо, в котором рассказать, почему именно этому потенциальному работодателю вы отправляете резюме.

Как junior-разработчику собрать портфолио

— Junior-разработчику важно иметь свой GitHub и GitLаb, на которых он размещает свой код, не коммерческий и коммерческий, курсовые, дипломный проект, фриланс проекты и т. д., — считает Татьяна, — Потенциальный наниматель при подготовке к техническому скриннингу обязательно посмотрит, есть ли у вас портфолио и как выглядит именно ваш код.

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

На что обращают внимание на интервью

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

Как правило, в IT принято общаться на «ты» вне зависимости от возраста и опыта. Важно настроиться на интервью как на часть процесса найма, которая может быть интересной и познавательной, и не чувствовать себя как на экзамене. Улыбайтесь, помните имена интервьюеров, обращайтесь к ним по именам, задавайте вопросы и конструктивно рассказывайте о себе и о своем опыте. Будьте готовы ответить на такие HR вопросы, как:

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

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

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

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

Чего не стоит делать на интервью

  • Рассказывать о том, какие преподаватели, коллеги или менеджерские команды некомпетентные или непрофессиональные.
  • Говорить, что программирование вообще вам не интересно, а IT — это единственная сфера, где более или менее хорошо платят.
  • Забывать благодарить за интервью.

Реальные варианты первой работы для новичков

5 способов получить первую работу:

  • Классный вариант получить первую работу в IT — пройти стажировку. Без опыта вас скорее возьмут на стажировку, чем сразу сделают оффер на реальный проект или вакансию. Стажировка, как правило, без оплаты — по крайней мере, первые ее этапы. Большой плюс стажировки — это обучение в настоящей IT-компании, более того, по программе и требованиям именно этой компании. Ваша задача — зарекомендовать себя, проявлять инициативу, учиться и претендовать на предложение работы после ее прохождения. При этом однозначно не стоит сильно расстраиваться, если предложения не поступит. У вас в резюме будет реальный опыт в настоящей компании, даже если пока и не коммерческий. С пройденной стажировкой уже проще найти работу программисту без опыта работы.
  • Общаться со всеми своими знакомыми, уже работающими в IT, спрашивать про имеющиеся вакансии в их компании, отправлять им резюме, просить их переслать резюме в службу HR, спрашивать, что ответили HR, не переставать просить своих друзей или знакомых напоминать о себе HR-службе. Связи и рекомендации по-прежнему работают отлично, в IT в том числе.
  • Собрать список компаний и e-mail, куда бы вам хотелось попасть, и писать им напрямую, отправлять резюме и сопроводительные письма.
  • Регистрироваться на фриланс сайтах, брать маленькие задачи и проекты, тем самым пополняя свое портфолио и получая реальный опыт. Примеры таких сайтов: Upwork.com, Weblancer.net, Fl.ru, Kwork.ru.
  • Посещать конференции, бизнес-встречи и нетворкинги, на которых можно встретить HR и СЕО компаний. Они всегда находятся в поиске «своих» людей.
  • 10 важных советов, как найти работу программистам без опыта

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

    • Идти на IT-курсы, даже если вы получаете профильное образование. На защиту дипломов на таких курсах зачастую заглядывают «охотники за умными головами». Там иногда преподают преподаватели-практики, в компаниях которых также бывают открытые вакансии. Это же касается и преподавателей ВУЗов.
    • Стремиться получить стажировку.
    • Готовиться к техническим интервью. Пример материалов в помощь: Front-end-Developer-Interview-Questions Public и JavaScript trivia questions in front end interviews.
    • Развивать свои навыки — как hard, так и soft, потому что для того, чтобы стоять на месте, нужно бежать.
    • Общаться с разработчиками — как с теми, кто старше, опытнее, так и с теми, у кого, как и у вас, нет или мало опыта. По максимуму использовать нетворкинг.
    • Развивать уверенность в себе и в своих силах — не стесняться писать follow-up’ы — письма, напоминающие о вас.
    • Составить нестандартное резюме и живое сопроводительное письмо.
    • Обязательно завести LinkedIn-аккаунт, обновлять свой профиль, дополнять его новыми навыками, сертификатами.
    • Подписаться на рекрутерские группы в социальных сетях.
    • Искать до тех пор, пока не найдется та самая работа и та самая компания.

    Рассказать о себе и изучить вакансии компаний можно в разделе Career в нашем Discord-канале.

    Го в Discord

    Что читать начинающему программисту — Журнал «Код» программирование без снобизма

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

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

    1. Код. Тайный язык информатики

    Автор: Чарльз Петцольд

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

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

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

    2. Карьера программиста

    Автор: Г. Лакман Макдауэлл

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

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

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

    3. Идеальный программист. Как стать профессионалом разработки ПО

    Автор: Роберт Мартин

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

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

    4. Чистый код. Создание, анализ и рефакторинг

    Автор: Роберт Мартин

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

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

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

    5.  Искусство программирования

    Автор: Дональд Кнут

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

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

    Билл Гейтс говорил об этой книге так: «Если вы прочитали все тома „Искусства программирования“, вам точно следует отправить мне своё резюме».

    Текст

    Миша Полянин


    Редактор

    Максим Ильяхов


    Корректор

    Ира Михеева


    Иллюстратор

    Даня Берковский


    Вёрстка

    Маша Дронова


    Доставка

    Олег Вешкурцев

    Десять навыков, которыми должны обладать начинающие программисты — Еженедельный обмен

    2022-02-21 09:00:21
    ЗенТао АЛМ
    Оригинал просмотрено 749’> 749
    Резюме : Следующие десять навыков являются хорошей отправной точкой для того, что должны знать начинающие программисты. Это базовые навыки программиста, которые будут сопровождать вашу карьеру программиста долгое время. Это вещи, которые вы можете изучить и улучшить, чтобы оставаться конкурентоспособными, если ваша цель — работать в области разработки программного обеспечения и программирования.

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

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

    1. Структура данных и алгоритмы

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

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

    2. Управление исходным кодом

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

    Источник: git

    С точки зрения общей тенденции социального развития, распространение является общей тенденцией, и Git адаптируется. Предыдущие основные схемы управления кодом, такие как CVS и SVN, были централизованными. Благодаря распределенным характеристикам он обеспечивает более высокую гибкость и может адаптироваться к большему количеству сценариев. Поэтому Git в определенной степени упрощает рынок. Для начинающих лучше всего подойдет максимальная версия GitHub: MasterGit и GitHub. Они также должны владеть передовыми концепциями управления версиями, такими как ветвление и слияние, а также инструментами использования командной строки и графического интерфейса.

    3. Текстовый редактор

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

    Как правило, NotePad в основном используется в Windows, а VIM в Linux. Но есть много опций в продвинутых редакторах, таких как Sublime и NotePad++, а последние предоставляют IDE-подобные функции. Программисты могут потратить некоторое время на изучение своих любимых редакторов и сочетаний клавиш, чтобы освоить некоторые навыки повышения эффективности.

    4. ИДЕ

    Modern IDE — очень важный инструмент для любого программиста.

    Выбор очевиден для программистов на языках C, C++ и C: Visual Studio. Для разработчиков Python Jupiter Notebook становится лучше с каждым днем. Java-программисты могут выбирать из трех ведущих IDE: Eclipse, NetBeans и IntelliJ. Для программистов, использующих «лучший язык в мире», PHPStorm и Sublime Text — хороший выбор.

    5. База данных и SQL

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

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

    6. Unix или Linux

    Источник: Linux

    Как и SQL, UNIX выдержала испытание временем и существует уже более 30 лет. Поскольку большинству программистов в какой-то момент приходится работать на машинах UNIX, хорошее понимание командной строки Linx полезно.

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

    7. Эксель

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

    Программисты могут использовать Excel для отслеживания прогресса, координации данных, анализа данных, проверки качества данных и планирования проекта. Именно поэтому каждому программисту настоятельно рекомендуется глубоко изучить Excel. Это не только копирование и вставка данных, но и некоторые базовые функции, такие как поиск, сортировка, фильтрация и ВПР для сравнения данных.

    8. Язык программирования

    Как программист, вы должны глубоко разбираться в языках программирования: C++, Java, PHP, Python, JavaScript… и выбирать исходя из ваших интересов и обстоятельств.

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

    9. Сетевой фонд

    Современный мир взаимосвязан. Куда бы вы ни пошли, компьютерные сети есть везде, начиная с дома, используя Wi-Fi на многих устройствах, и заканчивая локальными сетями (LAN) в школах, компаниях и торговых центрах с Интернетом во всем.

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

    10. Язык сценариев

    Язык программирования упоминался ранее. Разве нельзя использовать тот же язык программирования в качестве языка сценариев?

    Конечно, некоторые языки подходят как для объектно-ориентированного программирования, так и для сценариев, например Python. Но если вы изучаете C/C++ или Java, вы не сможете делать что-то так же быстро, как разработчики Python или Perl.

    Язык сценариев

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

    Заключение

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

    Пять ошибок начинающих программистов

    Опубликовано в

    ·

    7 минут чтения

    ·

    7 сентября 2022 г.

    Фото Towfiqu barbhuiya на Unsplash

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

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

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

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

    Фото Johannes W на Unsplash

    В 2012 году мне было 27 лет. Я был молод, упрям ​​и глуп. Я был финансово разорен. Ситуация, в которую я себя поставил, была следствием бесконечной череды глупых решений, которые я принял. Вместо улучшения я гнался за деньгами, и это привело меня к гибели. Я потерял так много времени… Я мог бы стать хорошим разработчиком много лет назад! В этот момент на моем счету могли быть сотни тысяч долларов. Вместо этого у меня было меньше, чем ничего.

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

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

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

    Вы бы сами наняли? Подумайте немного об этом и рассмотрите свои нынешние сильные и слабые стороны.

    Что такое профессиональный разработчик? Определяется ли он количеством известных языков программирования? Является ли программист, умеющий писать код на трех языках программирования, более профессиональным, чем тот, кто знает только два? Имеет ли значение стаж в профессии?

    Давайте составим список привилегий успешного разработчика:

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

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

    Путешествие в тысячу миль должно начинаться с одного шага.

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

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

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

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

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

    У вас уже есть работа с 9 до 5? Как вы проводите время на работе? Надеюсь, вы не тратите его зря. Я потратил бессчетное количество часов на MMORPG вместо того, чтобы учиться! Я не могу выразить, как мне жаль себя.

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

    Работа дает вам возможность для личного развития? Действуй! В противном случае учитесь самостоятельно. Новый фреймворк, проект на стороне, просмотр видеороликов в Интернете о разработке, управляемой доменом, CQRS, распределенных системах, чистой архитектуре, тестировании, об архитектуре программного обеспечения в целом. Читайте книги, электронные книги и блоги. Просто развивай свои способности.

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

    https://commons.wikimedia.org/wiki/File:Dunning%E2%80%93Kruger_Effect_01.svg

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

    Уверенность — это невежество. Если вы чувствуете себя дерзко, это потому, что вы чего-то не знаете — Эоин Колфер

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

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

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

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

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

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

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

    Изучите сопутствующие технологии, полезные в жизни программиста: Git, Kubernetes, Docker, основы системного администрирования Linux, компьютерные сети, темы безопасности и облачные сервисы. Не обязательно быть специалистом в каждой из этих технологий, но важно знать основы на практике.

    Выберите базу данных и учитесь на ней. Это может быть MySQL или PostgreSQL. Работа с реляционными базами данных имеет важное значение. Знание методов оптимизации будет полезно.

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

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

    Оставить комментарий

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

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