Высокий уровень против низкоуровневого программирования. Мне действительно нужно выбирать? [закрыто]


13

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

Я бы очень хотел сделать оба, даже если это означает чередование между ними (я сомневаюсь, что есть работы, которые позволят мне выполнять оба одновременно), но я предполагаю, что отрасль вознаграждает специалистов больше, чем универсалов. Будет ли действительно проблематично с точки зрения карьеры, если я никогда не выберу одно из другого? Целесообразно ли чередовать эти два варианта в том смысле, что если я оставлю работу, выполняя одну из них, у меня не возникнет «трения», когда я попытаюсь найти работу, выполняя другую (при условии, что я разумно в курсе)? Есть ли возможности карьерного роста, где вы можете сделать оба?

Я действительно должен выбрать один по другому?


Возможно, вы захотите посмотреть на этот вопрос в SO: stackoverflow.com/questions/919568/…
user281377

Ответы:


5

Во-первых, какой бы путь вы ни выбрали, помните, что ваше окружение может измениться. :)

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

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

Я на самом деле сталкиваюсь с этими проблемами на моей нынешней работе ..

Я специализировался на C ++, OpenGL, 3D-симуляции, архитектуре игрового движка и подобных вещах, но в прошлом году я довольно много использовал паяльник (собирая вместе платы USB, прототипы, сервоприводы и моторы, а также настраивал их). и программирование этих сервоконтроллеров). Возможно, мне также придется сделать несколько прототипов веб-сайтов для нескольких необходимых нам сервисов.

Это весело, но я бы не хотел делать это вечно, поскольку моя специализация немного ослабла, и, вероятно, в любом случае есть и другие, которые лучше справляются с этим. Надеемся, что компания растет, и мы можем нанять больше инженеров. Сейчас мы всего лишь два парня из C ++ / Python (я трачу 60-75% своего времени на оборудование).

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


12

По моему опыту, крупным компаниям нужны специалисты, а меньшим - универсалы. Если вы хотите стать универсалом, ищите и применяйте в небольших компаниях.


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

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

2

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


2

Я думаю, что было бы хорошо задать этот вопрос, чтобы они знали, к чему вы стремитесь, но объяснение, которое вы разместили здесь, также является очень хорошим ответом: «Мне нравится делать оба». Языки высокого уровня и низкого уровня привлекают разных людей, в то время как языки низкого уровня привлекают людей, которым действительно нравится знать мелкие детали системы, как она работает и т. Д. Языки высокого уровня привлекают людей, более заинтересованных в бизнес-процессе и организации. сам. Так много людей действительно любят языки высокого уровня, но не могут стоять на низком уровне (или наоборот).

Поэтому, спрашивая, очень важно получить ваш профиль и намерения, но ваш ответ, как вы отправили, является полностью приемлемым.


1

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

То, что вы абсолютно не должны делать, это применять неправильный подход к проблеме.

И, конечно, иногда все идет не так, как планировалось, я начал с любви к сборке и Си и с недоверием ко всему ОО и стал Java-разработчиком. Теперь мне трудно вернуться, потому что я пропустил десять лет обучения и новых технологий. Итак, урок в том, что если вы хотите переключиться, убедитесь, что вы всегда на связи.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.