Pull to refresh

Comments 77

Если честно, то на мой взгляд статья из разряда капитан очевидность. С примерно таким же успехом можно написать статью «Как врачу получить свой первый оффер», в которой описать, что нужно учить, читать и постоянно узнавать предметную область.
Я с Вами согласна, в статье много очевидных вещей, однако то, что очевидно Вам, очевидно, к сожалению, далеко не всем. Статья для тех людей, которые только выпустились и которые не совсем понимают, что и как им делать. Я написала эту статью скорее как памятку своим будущим студентам. Я когда преподавала веб-программирование второкурсникам, мне они задавали все те вопросы, на которых есть ответы в данной статье. Даже если бы я прочитала подобную статью будучи еще в бакалавриате, я возможно, построила свое обучение немного подругому.
которые только выпустились и которые не совсем понимают

Когда студент выпускается он уже специалист и если на этот момент он не понимает как ему искать работу и начинает читать такую статью и посещать он-лайн курсы, то дело очень плохо. У нас кто хотел уже на практике после 4-го курса озаботились тем, куда бы устроиться.
Всё сугубо индивидуально, каждый смотрит по своим потребностям, возможностям и желаниям. У кого-то есть большое желание сперва закончить учёбу, а уже потом с полными силами броситься в работу, а не разрывать свой день на кусочки совмещая всё вместе (я не о себе, если что, сам с 3-ого курса уже на работе). Я не знаю, где Вы учились, но в моём университете от специалистов у студентов только надпись на корочке, а в поисках работы эта надпись им абсолютно никак не помогает…
Когда студент выпускается он уже специалист
Вы не из страны эльфов, случайно? Потому что с нашими безнадёжно устаревшими программами от министерства и нехваткой современных курсов в провинциальных университетах ваша фраза звучит довольно иронично.
Потому что с нашими безнадёжно устаревшими программами от министерства

Чем же они настолько безнадежно устарели? С тех пор IP-сети стали иначе работать или красно-черные деревья по-другому балансируются?
А что, протокола IP и красно-чёрных деревьев достаточно для того, чтобы стать специалистом?
Нет, но покажите мне такую специальность, которой необходимо и достаточно для полноценной работы прямо со студенческой скамьи? Вот так вот сразу, без стажировок и работы «принеси-подай» первый год.
Спасибо, некоторые ссылки утащил себе, хоть я и не разработчик. :)

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

Что удивительно, в нашем вузе нам о таких вещах не говорили. Я про гит узналала, когда диплом почти написала.
Проблема в том, что много преподавателей старшей школы не вписываются в новые тенденции, от того и полное непонимание студентов на выходе что и как и куда вообще приткнуться. Хорошо, если от кафедры утроиться можно, а если нет? Я жалею, что такой статьи не было, когда я заканчивала бакалавриат. Это многое изменило бы.
Вы программировали во время обучения? Я имею ввиду pet-projects.
Вообще, если вы теоретик в программировании, то обучать студентов вам не стоит. ИМХО.
Преподаватель просто обязан работать в данном направлении на практике. Как максимум — писать свой стартап.
Многие вещи познаются именно в практике. Голая теория вам даст только минимальные основы.
Реальность такова, что практики в программировании стоят довольно дорого и кроме денег просят ДМС со стоматологией, печеньки и диван на кафедре.
Поэтому основная масса студентов учится у теоретиков, которые в своей основе — такие же бывшие студенты.

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

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

Одно дело — приглашать "практика" на одноразовое мероприятие, где он щегольнет и на этом все закончится.
И совсем другое — преподавать на постоянной основе. У работающего специалиста есть три "окна" для такой деятельности:


  • По субботам. Учебные заведения по субботам работают, а на основной работе обычно выходной.
  • Часов в 8 утра по будням. Возможно если рабочий день фактически начинается в 10-11.
  • Часов в 18 вечера. Если есть возможность стабильно уходить вечером.

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

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

А вы попробуйте связаться с УЗ, в котором учились сами, или просто с каким-нибудь местным. Вопрос то решаемый, было бы желание.

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

Да, я бы честно говоря на постоянку не пошёл бы, потому что не считаю, что такой мероприятие должно быть на постоянной основе, потому что это должно пробуждать интерес к получению этой правды. Эта лекция же не должна проходить под таким названием "Методы и инструменты разработки в современном вебе", это скорее должно быть что-то типа "React и Ng для чайников: плюшки и капканы", это я из своей сферы пример взял. Оно должно пробудить антэрес, потому что всю практику не передать на одной встрече, да и зачем, если компании не проч нанять студентиков, работающих за еду/светлое будущее?


Вот только есть один прикольчик… Студенты, которым это реально интересно, либо уже на фрилансе сидят, либо где-то работают на полставки, получают реальный практический опыт. Ну ближе там к 3-4 курсу.

cry_san совершенно с вами согласен ) поэтому если вы хороший практик приезжайте и я вам передам свое рабочее место )
Заодно познакомитесь с учебной программой и практикой обучения, в которой 5 учатся, а 10 "балду гоняют".


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

Столько много вам написал, но комментарий не сохранился (((

Вы опоздали — я уже преподаю.

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

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

Вы не опишите такой способ более подробно? Где и как искать такие проекты? Интересный совет, спасибо.

Наверное самая популярная программа для студентов это Google Summer of Code. Учавствуешь в опенсорсе на сотню-другую часов, знакомишься с людьми, получаешь опыт и знания, и ещё платят к тому же.

  1. Выбираете любую понравившуюся вам тематику.
  2. Ищите любой проект, который хоть как-то соответствует вашим ожиданиям.
  3. В зависимости от амбиций:
    3.1 Переделываете часть проекта как вам нравится — разумеется ничего не получится, но опыта будет выше крыши, гендальф будет отдыхать в сторонке;
    3.2 Смотрите багтрекер проекта и исправляете баги.

Как пример, было стремление разрабатывать игры, нашел игру freecol. Так как просто править баги мне наскучило — решил написать свой ИИ к нему, тот что был тогда — так себе, читер и не более того.
Пока писал ИИ нашел несколько интересных багов в серверной части проекта, которые обычным способом найти нельзя, как пример: ИИ высаживал юнит с корабля, понимал, что это не его район и обратно юнит на корабль сажал. Согласно правилам игры так делать нельзя — очков движения не хватит у юнита, а вот сервер разрешал.
ИИ я конечно же не закончил, но он один, сам по себе мог строить колонии и более менее существовать сам по себе. Вроде 1,5 месяца просидел над ним.
И только через год у меня были методы оптимизации в институте, которые бы очень сильно помогли =(

А не подскажете, в каких open-source проектах новичку в программировании вообще реально что то сделать?
Новичком в данном контексте считать человека, который освоил основные фичи языка, но еще ни разу не участвовал в промышленной разработке.

Просто такой совет я вижу довольно часто. Обычно (для java) при этом рекомендуются проекты вроде Apache commons, guava, Spring, Hadoop и другие общеизвестные фреймворки или проекты.
Но с ними есть две проблемы:
  • Они слишком сложные для новичка. Чтобы сделать действительно полезный коммит в таком проекте, даже опытному разработчику нужно покурить его исходники недельку-другую. Вдобавок у них хитрая система версий. Причем это может быть сложнее чем «релизная на поддержке» и «экспериментальная на будущее». У новичка происходит шок от объема и запутанности.
  • В них существует бюрократия. Коммит, который сделает новичок, может не вписываться в общую архитектуру проекта и скорее всего будет просто отклонен или проигнорирован. Мержить имеют право вполне определенные лица, которых еще нужно поймать.

Я бы очень хотел порекомендовать своим студентам какой-нибудь open-source проект. Однако ничего такого, что было бы им по силам, я на горизонте не вижу.

У SO есть интересный проект под названием Open Source Advertising. Там разные Open Source проекты ищут программистов, можно выбрать нужный проект и спросить напрямую. Многим проектам нужны любые руки и они найдут работу даже для совсем новичков.

UFO just landed and posted this here
Ну, по поводу «никто» я уж так категорически бы не был настроен, но в целом — согласен, иногда среди обилия воды трудно найти что-то действительно важное. С другой стороны и точка зрения автора вполне понятна. Можно совместить — самое главное на первой странице, а вода уж дальше. Кому нужна вода — найдёт, что искал; кому конкретика — ниже первой не пойдёт :)

Лучшим первым шагом (для выпускника) будет подойти на кафедру и попросить работу. По рекомендации от преподавателя собеседование будет сильно короче и лояльнее. А поработав пару лет в условном НИИ будет уже и реальный опыт и все остальное.

По рекомендации от преподавателя собеседование будет сильно короче и лояльнее. А поработав пару лет в условном НИИ будет уже и реальный опыт и все остальное.

Нда, там может оказаться такой опыт, что на следующей работе синьорам придется долго исправлять дурные привычки. Я как-то пришел в такой условный НИИ при выпуске по рекомендации преподавателя во время диплома. При том что у меня был уже 1,5-2 года опыта мне предложили зарплату 800 (!) рублей на 3 месяца испытательного и чуть больше (возможно) после. Даже учитывая, что рубль тогда стоил дороже, 800 рублей едва-едва хватало на проезд до этого НИИ. В коммерческой фирме дали почти в 10 (!) раз больше.


При том что в коммерческой фирме более-менее научат реальным вещам, а в НИИ будут давать те же лабораторки с требованиями "как-то работает, а на код пофиг".

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


И нет, в коммерческой фирме более-менее не научат, а научишься. Нигде тебя особо учить не будут.

Что бы понимать, как не надо работать. Речь про организационные вопросы и попо-часы.

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


И нет, в коммерческой фирме более-менее не научат, а научишься. Нигде тебя особо учить не будут.

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

для начинающего программиста часто опасно "заразиться" ленью и разгильдяйством

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


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

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


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

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

Вы серьезно? А почему пару лет не побомжевать, тоже ведь в чем-то полезный опыт? Идти в "болото" на маленькую зарплату, чтобы научится определять "эффективных" определять? Нет, если жизнь бесконечна, то можно, конечно. Но лучше стараться попасть в нормальную фирму, а для опыта как делать не надо почитать умных книжек/статей.


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

мне не помешало с зп в 30к перейти в коммерцию и зарабатывать 120к.


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


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

Бывают, конечно. Но зачем туда идти если есть возможность пойти в нормальную организацию? И нервы сохраняться, опыт сразу пойдет и по деньгам будет веселее. Гугл + голова зачастую помогает не пойти работать в болото.


мне не помешало с зп в 30к перейти в коммерцию и зарабатывать 120к.

Не думали, что могли начать зарабатывать 120k на пару лет раньше?


работал в этих предприятиях пока учился.

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


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

Бывают, конечно. Но зачем туда идти если есть возможность пойти в нормальную организацию? И нервы сохраняться, опыт сразу пойдет и по деньгам будет веселее. Гугл + голова зачастую помогает не пойти работать в болото.

Асоциальность и не туда затянуть может. Вы недооцениваете степень замкнутости людей и неспособность (нежелание?) понимать окружающих.


Не знаю никаких проблем с самоуважением. А рвать в гугл только ради престижа? Деньги? Иммигрировать? Личная жизнь? Вы о чем?


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

А зачем работать эникейщиком? Руки марать в пыли? К моменту поступления в институт я уже хорошо программировал. Лучше, чем 80% выпускников этого же ВУЗа. Но обучался-то один. Инет появился поздно. Книжка Попова по паскалю и дельфи-хелп + позже мсдн с msvs 2006-2008 где-то урвал. По ним и учился. Были еще книжки что-то в духе 50 приемов чего-то там от Майерса.


Маленькая зарплата — это так же и возможности. Просто взять и например послать начальника в пешее путешествие. Взять и сделать по своему… и еще и оказаться правым. Что бы управлять людьми не обязательно быть руководителем. Хотя по началу я себя очень скромно вел. Очень. Пока не начал понимать что к чему и как да почему.


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


В гугле таких же болот хватает, только там ты будешь винтиком и система в целом сложнее, что бы ее изучать без подготовки. А то и вовсе никогда не поймешь как оно получилось именно так. И потерять можно не 1-2 года, а лет 10.
А прыгать с одной работы на другую, только потому что на новой больше предлагают? Иметь трудовую, забитую под завязку записями в 1 год? Зачем?
Я уже видел резюме людей, у которых 10 раз работа поменялась за 7 лет… Как жить-то, если ты сам болото?

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


В целом, вы правы, каждому свое. Не буду дальше спорить,

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

Спасибо за статью) Буду очень рад почитать про Spring, так как в данный момент изучаю эту технологию

Простите за непрошеный совет. Поделюсь опытом, чтобы сократить вам время на изучение. Фреймворки не делают что-то такого, что не умеете делать вы. Просто каждый фреймворк заточен под конкретную задачу или класс задач. Если вы понимаете под что заточен фреймворк, то задайте себе вопрос, а как бы эту задачу решили бы вы? Удивитесь, но с таким подходом через некоторое время вы будете наперёд знать что должно быть во фреймворке и просто искать в нём соответствующие разделы. Конечно, не всегда ваше мнение будет соответствовать мнению разработчика в реализации, но архитектурные части вполне могут совпасть.
Насколько я знаю, Spring достаточно большой фреймворк. Брался одно время за его изучение года 4 назад. И знаете что? Так и не пригодился )))
А если усложнить задачу? Как получить первый оффер не симпатичной студентке из Питера, а сорокалетнему мужику из Мухосранска, решившему сменить профессию, при условии, что он не может бросить свою текущую работу?
Делать примерно все тоже самое, только дольше. Кстати, в Вашем случае неплохо подошли бы какие-нибудь курсы, в некоторых из них, после защиты, дают поучавствовать в мини-стартапах. Деньги, конечно, небольшие, зато опыт.
В любом случае, пока у Вас не будет в запасе пары тройки проектов, Вас даже и звать на интервью не будут.
Мне интересно, насколько реально новичку получить оффер удалённо?
Веб программсту вполне реально, но опять таки для этого нужны проекты и хоть какой-то опыт.
Моя первая работа программистом была удаленной. Я жил в маленьком белорусском райцентре, где практически не было вакансий для программистов в офисе. Отправил резюме в компанию, находящуюся в ближайшем областном центре — Витебске. Прошел несколько собеседований. Проверяли английский (в 2 этапа — устно и перевод технической документации), знание общих технических вопросов для стека PHP. Потом дали тестовое задание — написать модуль для Drupal — с которым я справился. В итоге я получил оффер и работал удаленно (оформление было официальное, все по ТК). Другое дело, что, начав работать, я столкнулся с кучей трудностей: новые проекты и технологии, а опыта пока практически нет. И если в офисе можно аккуратно подойти к коллеге, взять за пуговку, попросить помочь и получить эту помощь, то удаленно добиться этого от занятого коллеги-разработчика, которого мельком видел при оформлении договора, не так то просто. Под помощью я понимаю здесь в первую очередь нюансы крупного уже несколько лет работающего проекта, а не особенности языков и фреймворков, которые можно найти в доке или на Stackoverflow. В итоге через некоторое время я переехал в другой город именно для того, чтобы работать в офисе. Сравнив оба способа работы, я сделал вывод, что в моем случае профессиоанальный рост в качестве разработчика проходил в офисе гораздо более быстрыми темпами, чем когда я работал удаленно.
Спасибо за развёрнутый ответ. Правильно ли я понял, что собеседования были очными?
И такой вопрос — насколько мессенджеры типа Скайпа могут компенсировать недостаток общения с коллегами?
Все собеседования были по Скайпу (видео и голос). Хотя я был готов приехать и на очное собеседование. Мессенджеры а также всякие «расшариватели» экранов достаточно эффективно помогают организовать рабочий процесс. Но это при условии желания всех сторон участвовать в этом рабочем процессе. Что касается неформальной стороны, то мне кажется, что стать частью коллектива с помощью только лишь удаленных средств достаточно сложно. Мне помогали периодические (2-3 раза в месяц) выезды для работы в офисе и более близкого общения с коллегами и начальством.
Кстати, очень актуальный вопрос. :) Можно еще усложнить: если ты имеешь гуманитарное образование и примерно такой же склад ума, но дрейфуешь потихоньку в технари. :)
Я целенаправленно шла в большую иностранную компанию так как лично для меня то, что компания большая и иностранная — большой плюс.


У Вас была какая то тактика и вы её придерживались…

А в чём плюс, если не секрет?
Лично для меня плюс именно в том, что возможен релокейшн в те же самые штаты. Как правило, в таких компаниях работают бОльшие профессионалы, от которых можно многому научиться. Для меня также плюсом являются командировки в штаты, сами условия, обычно, лучше(компенсации, курсы, постоянные курсы повышения квалификации, пересмотр зп раз в месяц-два). Ну и сам подход к работнику. Возможно, в наших компаниях тоже условия не хуже, но пока я не встречала + все наши толковые преподаватели с кафедры, работают именно в таких компаниях и в наши идти желанием не горят.

Вы статью пишите для тех, кто мало что еще знает, мало что умеет и не знает как получить свой ПЕРВЫЙ офер(предложение) по работе. И тут же говорите о большой иностранной компании, где бОльшие специалисты, о релокейшене(переезде) в США. Как-то это два совершенно два разных уровня как по мне.
Как раз бОльшие специалисты очень важны для начала карьеры, чтобы быстрее и лучше всему научиться. Согласен, relocation получится не сразу, а года через 3, вряд ли раньше, но это не такой большой срок, чтобы на него не планировать.
Желательно все это выкладывать на гит

На гитхаб, судя по контексту.
Спасибо, теперь разобрался.
1. Менторство — очень полезно.
2. Pet — project, совершенно не обязательно для начала. Вполне сойдет образование, которое дает вуз
3. GIT — аналогично.
4. Настоятельно советую прочесать знакомых/знакомых родителей, которые могут устроить.
5. В хорошем вузе — есть много различных вариантов стажировок через кафедру (там же делают курсовые), в самых разных компаниях. Через них — легко трудоустроится.
6. Многие средние и крупные компании имеют программы по стажировке. Весь крупняк точно предлагает студентам работу за еду(20-30К) — это очень хорошая сделка для обеих сторон.
7. Все это работает только при условии, что у вас голова настроена правильным образом. Если нет — то забудьте про программирование.
2. Это всё очень от вуза зависит. Мало какие вузы обновляют свои программы в ногу со временем. Для фронт енда, скажем, где сейчас преподают React или Angular? Даже jQuery не везде есть :)
3. Аналогично с чем? Если с тем, что это не нужно — то такие привычки лучше вырабатывать сразу
Мало какие вузы обновляют свои программы в ногу со временем. Для фронт енда, скажем, где сейчас преподают React или Angular?

Если будет так, как вы говорите(хотите), то диплом такого специалиста через 5 лет можно будет выбросить в помойку.
Расскажу свой опыт(и своих одногруппников, коллег и прочих сверстников).
1) Поступайте в наилучший ВУЗ, на пределе своих возможностей. Благо в России образование бесплатное(для соотечественников и, насколько понимаю, граждан стран ЕАЭС), плюс сейчас есть ЕГЭ, и для поступления в топ ВУЗы достаточно собраться и выложиться по полной. Привыкайте — умение взять и решить (тут должна быть шутка про русское «умри, но сделай», которое более жестоко, чем «do or die») — это одно из важнейших умений в жизни.
2) В специальностях нужна математика. Направления, где «компьютерно-программиисткие» вещи занимают больше 1/5 времени от математики — сразу нафиг, иначе (с высокой вероятностью) окажетесь на свалке истории лет через 10-20 (особенно с нынешнем развитием ИИ).
3) Преподов теребите вопросами, читайте всё, что они рекомендуют и много что еще. Есть еще время — смотрите видеолекции по математике. Рекомендую первые два курса НМУ, в качестве лайт-версии можно видеолекции МФТИ, хотя, чем тяжелее в учении — тем легче в бою.
4) Только на этом пункте приходим к алгоритмам. Если вам повезло и в ВУЗЕ читают нормальный курс по алгоритмам — отлично. К сожалению, я знаю подобных вузов не больше 10, так что тут нужно что-то делать. Самом популярное — олимпиады.
5) Олимпиады же заставят научиться решать задачи понятно, и писать понятный и работающий код. Фактически, это мгновенный код ревью от сокомандников плюс тестирование корректности работы программы. Не случайно людей с «желтым» рейтингом codeforces и topcoder с руками отрывают в наукоемкие проекты, независимо от опыта работы.
6) Гиты, паттерны, комментирование кода, приколы с жесткими наследованиями — в приципе, сложно пройти все предыдущие пункты и не узнать ничего про данные вещи, всё-таки в большинстве ВУЗов все с этим сталкиваются. В крайнем случае, можете посидеть пару выходных и поизучать самостоятельно — никакого рокет сайенс там нет.
7) Место работы. Тут вопрос самостоятельности — рисковости. ИМХО, самое козырное — небольшая лаборатория с топовыми грантами в каком-нибудь НИИ или небольшой исследовательский отдел в российской компании с госзаказами(как правило, от Министерства Образования, но, также, может быть интересный проект для Министерства Обороны) либо заказами у крупных международных фирм. В подобном месте скорость роста как личностного, так и зарплатного ограничивается только собственными силами. Но это сложно, надо понимать, что конкуренцию вам составляет большая часть топ-10% выпускников России (объективный ректинг по олимпиадам, это 30-50% топового научного потенциала в мире) — так что можно и забуксовать, переоценив свои силы, и оказаться ни с чем.
Можно быть проще и пойти работать в крупную российскую компанию. Промежуточный вариант между НИИ и международными Гугло-Фейсбуками. Навскидку, Яндекс, Мэйлру, Вконтакте и т.д… Чуть больше уверенность в завтрашнем дне, чуть медленнее рост, чуть больше бюрократии.
Далее, можно быть совсем неуверенным в себе и очутиться в условном «Гугле». Еще больше стабильности, еще больше бюрократии и «забивания гвоздей», отношение «я начальньник — ты дурак»(естественно, вежливое, но неукоснительное, т.к. твой уровень ниже, просто по табели о рангах внутри компании). Вернуться обратно в топовый проект может получиться только с потерей уровня. Но зато от тебя уже зависит не так много, можно больше времени и сил тратить не на саморазвитие а на «творческую самореализацию».
Небольшая ремарка — всё это если в запасе есть годы.

Достаточно спорное утверждение про "посмотри на список самых популярных языков и выбери первый". Думаю, что тут стоит больше покопаться в себе, посмотреть ДЛЯ ЧЕГО используют те или иные языки и выбрать интересную лично для себя предметную область.
Навскидку (примеры, не 100% покрытие), Java ччаще используется в больших энтерпрайз проектах, банках, финансовых компаниях и в программирования под андроид. C в embedded разработке и системном программирования, C++ когда нужен производительный enterprise код, в разработке игр — зачастую это тоже могут себе позволить только большие компании.
Не хочешь постоянно думать о мьютексах, многоточности и указателях — тебе в мир javascript. Хочешь быть на волне прогресса и писать крутые производительные веб-сервисы — выбирай Go.

Вот только нужно вот такой комментарий делать каждые 2 года, примерно. Ну чтобы соответствовать времени. Может в какой-то момент мобильные перейдут на ВебОСи и тогда js взлетит. Может веб потихоньку задохнётся и всё перейдёт в мобильные приложения. Конечно яву с плюсами не скоро заменят в их текущем сегменте, а вот на счёт скриптовых я бы так точно не говорил. Может завтра весь комитет es решит, что нужно уже сделать статическую типизацию или решит всё-же ввести модули, вместо единого DOM, тогда в js придуть указатели, "мьютексы" и вообще многопоточность.


Это всё очень зависит от трендов, поэтому нужно так же брать в расчёт то, что через 3-4 года вся область твоей деятельности может повернуться на 180 градусов и ты опять останешься где-то позади.


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

Нужна статья: «как выпускнику перестать мечтать о карьере Pascal /Delphi программиста».
Все хочу написать статью о автоматизации тестирования (не голая теория, а скорее «как собрать комбайн»). Но увы, «закрытый код». Надо как-то очень аккуратно написать статью, чтобы потом не прилетело.
Закрытый код — в смысле, проект, на котором работает автоматическое тестирование — закрытый? Ничто же не мешает не включать исходники проекта в статью
Ну да, сам проект, для которого АСТ написана, закрытый. Однако в виду сложности проекта (это одна из CMS/CRM) — автотесты так же очень сложные как сами по себе, так и весь комплекс в целом. И все это стоило ощутимых денег. Вот и засада — рассказать про то, как в эпоху еще до Selenide, был начат комплекс с Java+Js+PHP (от jQ до ORM (Hibernate), свой планировщик, хороший многоуровневый логгировщик, мультипоточность, запись видео, подсветка элементов с которыми идет взаимодействие, сильная отказоустойчивость тестов) очень хочется. А черевато.
Такие вещи согласуются с руководством. Либо, примеры кода в проекте не должны содержать реальных кусков из проекта. Если посмотреть на блоги крупных проектов на Хабре, можно заметить, что почти никогда — прямо почти совсем никогда — не публикуются куски кода из закрытых проектов. Некоторые спорные моменты можно согласовать с начальством. Например, спросить у руководства, можно ли описать вашу архитектуру, не публикуя код и не раскрывая конкурентных вещей.
учусь на 3 курсе. устроился работать по фронтэнду после второго собеседования. на пером сказали что учеба мешать будет. в общем искал около двух недель
Единственная рекомендация это быть активными и задавать вопросы на различных форумах. Вот список наиболее популярных: stackoverflow, тостер...

В такие моменты все почему-то забывают, что можно не только спрашивать, но и отвечать. Сначала на самые простые вопросы, потом на более сложные. Это не только расширяет кругозор, учит быстро гуглить и читать документации, но и заставляет приводить аргументы в пользу того или иного решения (ну и ссылки, понятное дело), что очень полезно. Быстро избавляет от синдрома бездумной копипасты. Да и понимающий работодатель сразу увидит, что человек не просто так говорит, что в чем-то разбирается.
Sign up to leave a comment.

Articles

Change theme settings