Я преподавал в очень многих группах и еще не видел студента, который приходил изучать Java просто для развлечения. Каждый из них хотел стать профессиональным разработчиком и зарабатывать на жизнь. И разве не для этого мы учимся новым навыкам - чтобы получить работу?

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

Зачем быть Java-разработчиком

Итак, что вы будете делать, если хотите стать программистом на Java? В конце концов, это хорошо оплачиваемая работа даже для младших разработчиков: в среднем почти 70 тысяч долларов в год по данным Indeed.

Это один из самых популярных языков

Согласно опросу Stackoverflow 2019, Java входит в пятерку наиболее часто используемых языков в профессиональном плане, уступая JavaScript, HTML / CSS, SQL и Python. Значит, компании активно используют его в своих проектах, и рабочих мест в этой сфере достаточно.

По данным Бюро статистики труда США, рынок вакансий в сфере разработки программного обеспечения к 2028 году вырастет на 21%. Вы держите пари, что он будет распространяться на весь остальной мир. Если вам нужно больше причин для изучения Java, ознакомьтесь с этой статьей:



Вы будете сотрудничать в проектах с реальным приложением

Java не является популярным языком для создания игр, таких как C ++, или алгоритмов машинного обучения, таких как Python, но он широко используется в сервисах кодирования и платформах для реальных приложений. Его используют в Amazon и Facebook, вы можете применить навыки Java в системах здравоохранения и финансовых платформах, что принесет пользу обычным людям.

Какие вопросы вы можете ожидать во время собеседования

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

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

Небольшой совет: если вы не прошли первый раунд, эта компания не для вас.

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



Технология, необходимая для кодирования и запуска Java-приложения

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

Можете ли вы использовать JVM на любой платформе? - Java является кроссплатформенной, и вам нужна JVM для запуска приложения, поэтому, конечно, это так.

Вы, вероятно, тоже пользуетесь редактором кода, поэтому не забудьте упомянуть об этом. Лично мне нравится IntelliJ IDEA. Он удобен и имеет все необходимые функции для кодирования, такие как интеллектуальное завершение, анализ кода и обнаружение дубликатов.

Попадание в проект

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

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

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

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

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

Вопрос, относящийся к Java

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

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

Сколько знаний Java нужно знать, чтобы устроиться на работу?

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

  • Базовый синтаксис Java. Это очевидный синтаксис, но при приеме на работу ваши знания должны быть безупречными: правильно заявленные объекты и отсутствие пропущенных скобок.
  • Понимание разницы между типами объектов. Например, чем абстрактные классы отличаются от интерфейсов; какие модификаторы являются общедоступными, а какие - частными?
  • Практика программирования: Как организовать код в пакеты или как написать модульный тест?
  • Основные понятия: ООП и его принципы, Строка, Коллекция, Многопоточность, обработка исключений, циклы и типы данных.
  • Библиотека JAR: что это такое, как она используется и как ссылаться на нее в коде.
  • Паттерны проектирования: MVC, Фасад, DAO.

Для веб-разработки и корпоративной разработки вам дополнительно потребуется изучить:

  • Основы работы с базами данных SQL
  • Протокол HTTP
  • Основы HTML и CSS
  • XML и веб-сервисы
  • Как использовать фреймворк ведения журнала

Мой лучший совет - пройти игровой курс для новичков, когда вы начнете искать работу. Это менее напряженно и увлекательно, чем перечитывать «Java для чайников» непосредственно перед собеседованием. Много текста вызовет беспорядок в вашем мозгу.

Ресурсы, которые помогут вам подготовиться к собеседованию

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

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

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

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

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

Последние мысли

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

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

Другие полезные ресурсы для изучения Java, которые могут вам понравиться
10 вещей, которые Java-программист должен выучить в 2020 году
10 бесплатных курсов для изучения Java с нуля
10 Книги для углубленного изучения Java
10 инструментов, которые должен знать каждый Java-разработчик
10 причин изучать языки программирования Java
10 фреймворков, которые Java и веб-разработчики должны изучить в 2020 году < br /> 10 советов, как стать лучшим Java-разработчиком в 2020 году
5 лучших Java-фреймворков, которые следует изучить в 2020 году
10 библиотек тестирования, которые должен знать каждый Java-разработчик

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