Участвуйте в хакатонах, соревнованиях по программированию, но уделяйте время и себе

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

Первый шаг

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

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

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

Алгоритмы и структуры данных

Алгоритмы и структуры данных действительно важны для каждого инженера-программиста. Даже если вы не планируете работать в компаниях FAANG, вам следует уделить особое внимание этим темам, поскольку они учат вас мыслить аналитически.

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

Вы можете изучать алгоритмы разными способами. Существует множество обучающих платформ, таких как leetcode, hackerrank, codewars, spoj и другие. Вы можете выбрать язык для написания своего решения, есть много задач разного уровня, иногда есть подсказки к ним, а если вы чувствуете, что застряли в проблеме, вы также можете перейти на форум и задать вопрос или проанализировать решения других кодеров.

Для изучения алгоритмов и структур данных я бы также порекомендовал вам Cracking the Coding Interview — книгу Гейл Лаакманн Макдауэлл. Это отличная книга для изучения алгоритмов и структур данных. Если вас интересуют преимущества и более подробное описание этой книги, вы можете прочитать мой отзыв о ней.

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

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

События

Различные организации и учреждения обычно готовят множество различных мероприятий как онлайн, так и лично — такие вещи, как вебинары, презентации на темы «Как…», ярмарки вакансий, хакатоны, задачи по программированию, семинары, лагеря и так далее.

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

Мягкие навыки

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

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

Хакатоны

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

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

Проблемы кодирования

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

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

Участие в подобных челленджах — отличный способ отточить свои алгоритмические навыки. Вот несколько примеров проблем с кодированием:

Бонус:Advent of Code не возглавляется какой-либо компанией и не вознаграждается каким-либо материальным образом, но это захватывающий набор алгоритмических головоломок, который Эрик Вастл готовит каждый год к Адвенту (1-й декабря — 25 декабря). Каждый день появляется новая задача, разделенная на две части. За каждую часть можно выиграть звезду, чтобы к концу Адвента собрать 50 звезд. Участие в Advents of Code — это хороший способ не только попрактиковаться в алгоритмических навыках, но и в программировании. Кроме того, это еще и интересное приключение, которое держит вас в атмосфере Рождества.

Внеклассные занятия

Это очень важно в вашем резюме, особенно если у вас мало опыта работы.

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

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

Проекты

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

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

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

Университетские курсы

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

Обратите особое внимание на такие курсы, как основы информатики, алгоритмы и структуры данных, базы данных, объектно-ориентированное программирование, операционные системы, параллельное программирование, дистрибутивное программирование.

Люди и благополучие

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

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

Заявки на работу

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

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

CV

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

  • Укажите свое образование в первом разделе своего резюме, включая месяц и год начала и окончания учебы, вашу специальность и полное название университета.
  • Если у вас нет опыта работы, перечислите наиболее важные проекты, которые вы уже сделали. Это могут быть как личные, так и университетские проекты. Очень кратко опишите их, включая использованные технологии, и расскажите, чего вы добились, выполняя каждый проект. Это показывает, как вы можете использовать свои технические навыки на практике, что очень важно.
  • Перечислите все ваши внеклассные мероприятия, такие как волонтерские программы, организация мероприятий, стипендии, исследовательская работа и так далее. Так вы покажете, что вы активны, амбициозны, инициативны и готовы развиваться.
  • Перечислите все ваши прошлые награды и награды, даже если они были давно. Важно показать свой потенциал.
  • Убедитесь, что ваше резюме хорошо отформатировано и правильно — используйте маркеры и избегайте длинных абзацев текста.
  • Используйте слова действия (например, создан, спроектирован, отлажен).

Не забывайте всегда говорить только правду в своем резюме и показывать, чем вы замечательны (вы определенно замечательны, как и все остальные по-своему).

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

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

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

Спасибо за чтение.