Я был профессиональным разработчиком чуть более полугода и был поражен тем, насколько велик мир вне колледжа. Я продолжал учиться в свободное время, но мне интересно, на чем мне сосредоточиться?
ФОКУС 1) Стек разработки, используемый моей компанией. Самая быстрая отдача в моем повседневном развитии. #Deepest
ФОКУС 2) Другой язык с той же парадигмой. Посмотрим, смогу ли я обобщить свои знания и образ мышления.
ФОКУС 3) Другой язык, другая парадигма. Расширьте мои границы и узнайте новые способы ведения дел. #Broadest
Если у кого-то есть другой фокус, не стесняйтесь поместить это там.
источник
Когда люди спрашивают меня о совете по карьере, ваш вопрос - один из первых, которые я им задаю. Я не думаю, что кто-то может ответить на этот вопрос для вас; Я думаю, что вы должны решить для себя, будет ли сосредоточение внимания на глубине или ширине более вероятно для достижения ваших карьерных целей.
Когда я последний раз менял команды, у меня было две возможности: работать в команде разработчиков инструментов XBOX или работать в команде компилятора C #. Я понял, что это сводится к глубине против глубины. В команде XBOX я мог однажды поработать над системами безопасности, на следующий день - с аудиосистемами, с видео, сетями, с аппаратным интерфейсом. Конечно, некоторые люди являются экспертами, но каждый должен знать немного обо всем. В команде компилятора C # я мог бы погрузиться в один язык и один компилятор и по-настоящему глубоко понять все это.
Я много думал об этом и решил, что мне больше по нраву быть экспертом в одном, чем дилетантом во многих. Это был хороший выбор для меня, но это может быть не для вас. Некоторые люди очень успешны, зная всего понемногу.
Поэтому я советую перевернуть вопрос. Выясните, какой вы человек, а затем посмотрите, есть ли у вашей компании возможности для таких, как вы. Если нет, найдите тот, который делает.
источник
Быть специалистом может сделать вас дороже. Но возможности трудоустройства, требующие такого высокого уровня, будут ограничены как по количеству, так и географически.
Быть универсалом, возможно, платит меньше, но открывает широкий спектр возможностей трудоустройства для вас, возможно, по всему миру.
Также для работы на более высоком уровне и на руководящих должностях желательно, чтобы у человека был опыт в различных вещах, техниках и технологиях. Знание краев и возможность видеть большую картину делает вас ценным активом.
источник
Я думаю, что на вашей стадии развития получение некоторой глубины является первоочередной задачей. Я вижу слишком много людей, которые знают немного о множестве вещей, но не могут пройти мимо, работая на начальном уровне, потому что все их знания - начальный уровень.
Если бы я хотел быть специалистом, очевидно, что глубина строительства - лучший выбор.
Если я хочу быть универсалом, сначала соберите глубину (перейдите хотя бы на промежуточный уровень) в один стек, а затем разветвитесь на другие языки. Если вы сначала создадите некоторую глубину, вам может оказаться проще построить глубину на нескольких языках, поскольку у вас есть больше концепций, доступных для вас, и вы знаете больше о том, что вы хотите изучить. Тогда я бы немного расширился во что-то другое. Затем вернитесь и углубите глубину до продвинутого уровня, затем снова разветвитесь и узнайте больше вещей, которые сильно отличаются от того, что вы уже знаете. Затем расширьте эту глубину в другой области до промежуточного уровня, изучите что-нибудь еще и т. Д.
Предостережение - я особенный, поэтому я отдаю предпочтение глубине знаний
источник
Оба варианта имеют свое место. Сосредоточение внимания на стеке разработки, используемом вашей компанией, поможет вам в вашей работе, но изучение других технологий поможет вам в вашей карьере.
В конце 1990-х гг. Навыки COBOL пользовались повышенным спросом у компаний, которым необходимо было подготовить свое программное обеспечение для 2000 года. Но любому, кто все еще знает только COBOL сегодня, будет гораздо труднее найти работу.
Точно так же современные технологии устареют задолго до того, как большинство из нас будет готово уйти в отставку, поэтому изучение новых навыков и технологий необходимо.
источник
Продолжайте изучать что-то вроде Хаскелла или Лиспа. Изучение функционального языка действительно требует от меня разделения кода, что упрощает его отладку в целом. Единственная проблема, с которой вы можете столкнуться, это то, что вы не хотите возвращаться.
http://book.realworldhaskell.org/read/
http://lisperati.com/haskell/
http://learnyouahaskell.com/
источник