Когда я впервые начал подавать заявку на Java Software Developer, я был на нервах (то есть нервничал 😂), я беспокоился и часто сравнивал себя с реальным миром, про «инженеров-программистов». У меня были некоторые навыки, я выполнил несколько проектов, хорошо разбирался в основах, но независимо от того, сколько я продолжал учиться, у меня каким-то образом был глубокий голос, который говорил: «Я еще не готов», может быть, позже будет еще один мини-проект. хорошее время для подачи заявки. Оглядываясь назад, основная причина, по которой я был настроен скептически, может быть, немного боялся выйти, заключалась в том, что я часто думал, что понятия не имею, как работать в «Настоящем проекте», как работать на самом деле. или я даже знаю достаточно, чтобы подать заявку?
Итак, когда я наконец получил свою первую работу, как вы думаете, что произошло? Ну, не для того, чтобы кричать в свой рог, но мне сказали, что я слишком квалифицирован, это также может быть потому, что я подал заявку на неоплачиваемую стажировку 😂
В тот день у меня был момент открытия, и еще несколько моментов открытия вниз линия, и еще много моментов, открывающих глаза спустя, вот я, побывав по обе стороны стола, и теперь, с открытыми глазами, рассказываю вам о вещах, которые я узнал из своего путешествия, так что путешествие может быть немного короче для вас, или просто дать вам небольшой толчок, чтобы вы начали! Итак, хватит с моей умопомрачительной историей, давайте приступим к делу

Я разделил дальнейший контент на три части: 1) Техническая часть, 2) демонстрация и 3) личные навыки, и да, как величайший из авторов детективов, я тоже записал самое лучшее в последнюю очередь. Я расскажу о том, готовы вы или нет, как сделать первый шаг, о вашем подходе к собеседованию и к работе, если вас выбрали. Это довольно долго, нет TLDR; , если вы не знаете, что означает TLDR, добро пожаловать в мир разработчиков.

ТЕХНИЧЕСКИЕ ХАРАКТЕРИСТИКИ:

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

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

Готов ли я подать заявку на вакансию начинающего разработчика программного обеспечения?

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

  1. Знание основ языков программирования
    Знакомы ли вы со следующими понятиями:
  • Переменные
  • Типы данных
  • Ключевые слова/токены
  • Петли
  • Заявления об условиях
  • Синтаксис интересующего вас языка.
  1. Если вы знакомы со всем вышеперечисленным! отлично, вы почти у цели. Если вы не совсем понимаете некоторые из вышеперечисленных концепций, вам нужно поработать над ними, возможно, сделать краткий обзор или небольшой проект. Но если вы серьезно относитесь к тому, чтобы стать разработчиком программного обеспечения или разработчиком веб-сайтов. Я прошу вас, пожалуйста, изучите эти вещи, вы никуда не пойдете, не ознакомившись с вышеуказанными понятиями.
    И если вы уже думаете, что это легко, то очень хорошо, не так ли сложно? Так что немного укрепите свою уверенность, вы уже знаете более 50,21% начинающих кандидатов, с которыми я сталкивался на собеседованиях.
  2. Дополнительные фреймворки
    Несмотря на то, что знание основных принципов программирования важно, редко в каких-либо реальных проектах вы не используете фреймворки. Если вы PHP-разработчик, работали ли вы с CI, Laravel или Yii. Если вам нравится Python, то, возможно, Django? Или Swing, Spring в случае Java.
    Суть в том, что основные принципы чрезвычайно важны, но фреймворки — это то, что вы используете для создания проектов, и именно там вы используете свои основные принципы. Я определенно рекомендую вам попробовать некоторые фреймворки интересующего вас языка, прежде чем подавать заявку, это, безусловно, большой плюс, и если я встречу кандидата с хорошим пониманием фреймворка, то я определенно поставлю ему/ей более высокую оценку в своем кандидате. список.

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

ПРЕЗЕНТАЦИЯ ПРОЕКТОВ:

Как гласит старая поговорка, «если есть, хвастайся». Здесь вы показываете проделанную работу, не думайте, что проект недостаточно хорош или его не стоит показывать . Помните, вы подаете заявку как начинающий/младший разработчик, и никто не ожидает, что вы разработаете необычное приложение. Если у вас есть, пожалуйста, свяжитесь со мной по этому поводу! 😂

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

ЛИЧНЫЕ НАВЫКИ:

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

  1. ОТНОШЕНИЕ:
    Не превращаться в проповедника, но это очень важно, так как это будет определять то, как вы проживаете свою жизнь, а не только свою работу. Ваше отношение к людям, к проблемам, к своей команде. Возможно, вы слышали или изучали, что позитив притягивает негатив, но, по словам Чендлера Бинга, «может ли это быть более неправильным» в реальной жизни. Если менеджер по найму думает, что видя ваше лицо каждый день на работе, вы собираетесь снизить моральный дух других работников, а не улучшить его, будьте уверены, что вы не присоединитесь к этой компании.
    Помните, далеко идти — это командная работа, вы не можете работать над проектом в команде и говорить что-то вроде «Это не моя проблема, я иду домой» после выполнения своей части работы, я не говорю остаться и просто задержаться, иногда действительно ничего нельзя сделать если это не относится к вашей области работы, но это команда, если чья-то работа не завершена, продукт не будет запущен, лучше сказать: «Удачи, дайте мне знать, если я могу быть полезен». любая помощь».
    Вам будут задавать вопросы, например, можете ли вы работать в команде? или с какими проблемами вы столкнулись при работе в команде? Вы можете притворяться и лгать на собеседовании, но когда придет время, это будет видно, и ваш старший это заметит, и у вас будут проблемы, поэтому, если вы не можете работать в команде, не можете просить о помощи и предлагать помощь. , это большой красный знак для любого менеджера по найму. Я предлагаю вам посмотреть несколько видеороликов о командной работе, прочитать несколько книг о командной работе. Вы можете идти быстро, если работаете в одиночку, но вы можете идти далеко, только если у вас есть хорошая команда. История является примером для этого.
  2. ОБУЧЕНИЕ:
    В программировании вы никогда не знаете всего, вам всегда нужно продолжать учиться, обновлять себя, чтобы идти в ногу с отраслью, хорошие люди всегда работают и придумывают новые вещи. Например, когда я начинал разработку для Android, мы использовали Eclipse, о старые добрые времена… Потом появилась Android Studio, миграция была болезненной! Но если бы я этого не сделал, то остался бы позади. Сколько разработчиков все еще используют Eclipse для разработки под Android? Если вы разработчик Android, вы можете не знать о тех временах.
    Поэтому всякий раз, когда я беру интервью у кандидатов, мне нужно знать, что они послушны, открыты для обучения и могут учиться самостоятельно. Нет никого, кто будет направлять вас на каждом этапе пути. Если вам помогут, то будьте очень благодарны, если нет, то на это вы и подписались. Если у вас плохо с самообучением, тогда, пожалуйста, развивайте свои навыки обучения, возможно, изучите язык программирования или фреймворк, Google, Youtube или читайте книги, делайте все, что необходимо, но продолжайте УЧИТЬСЯ!
  3. РЕШЕНИЕ ПРОБЛЕМ:
    Это последнее из последних, да, я подразумеваю, что это самое важное 😄
    Когда я только начинал свой путь разработчика , Раньше я думал, что великие разработчики не нуждаются в Google так много, они могут кодировать в основном без проблем или проблем. Позвольте мне просто прояснить это для вас. Нет никогда. Нет. За все годы разработки я ни разу не встречал ни одного разработчика программного обеспечения, который не сталкивался бы с проблемами или не гуглил бы часто. Если разработчик программного обеспечения не гуглится, то будьте уверены, он/она мало что делает. Иногда я даже ловлю себя на том, что просматриваю свои собственные старые учебные пособия, так что я хочу сказать, что если вы решите остаться разработчиком программного обеспечения, у вас всегда будут проблемы.
    Я видел многих молодых разработчиков, которые только начинают, просто застревают на проблеме на несколько минут или часов, сдаются и начинают заниматься чем-то другим. Если я могу решить проблему за считанные минуты, то я даже не считаю это проблемой. Часы и дни — это нормальное количество времени для решения проблемы, поэтому не нужно терять надежду, если вы не можете решить проблему. Если не Google, то попробуйте DuckDuckGo, Bing или что-то еще, я хочу сказать, продолжайте пытаться.
    Чаще всего я вижу, как разработчики застревают на проблеме, а затем слишком легко сдаются, это не людей, которых я хочу видеть в своей команде.
    Если во время собеседования вы сталкиваетесь с ситуацией, которая ставит под сомнение ваши навыки решения проблем, никогда не говорите, что я не могу этого сделать или не знаю, лучше скажите: «Мне нужно еще немного времени, чтобы найти решение для этого».
    Это не «Как провести интервью», поэтому мы не будем больше вдаваться в то, что говорить и как отвечать на вопросы в интервью, если вы, ребята, хотите, позвольте мне знаю, и я буду работать над этим. Но пока это все.

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

Первоначально опубликовано на https://www.thecodecity.com.