2010-08-07 2 views
1

Я заметил много о вакансиях, которые требуют, чтобы заявитель знал несколько языков или технологий. Особенно я нахожу это с веб-разработкой. Мне не нравится это, учитывая то, что чем больше вы специализируетесь на нескольких вещах, тем меньше вы действительно знаете о каждом из них. Я признаю, что это хорошо для нижней линии, когда вы можете заплатить одному человеку, чтобы делать много вещей, но стоит ли ему уступать услугу, которая на самом деле не их вина? Хорошее чтение - исследование, например, this.Лучше всего для специализации или специализации?

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

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

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

Интересные вещи, я думаю, просто хотел узнать от опытных разработчиков. Мне 21 год и я специализируюсь на html/css, javascript и python. Я также знаю некоторые вещи, но просто болтаю.

Спасибо, ребята

ответ

4

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

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

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

Итак, если вы специализируетесь? Ну, вам нужно будет, чтобы практично понять общие принципы развития. Итак, вы в конечном итоге специализируетесь на чем-то. Но более важно, чтобы вы изучали более глубокие части специализации, чтобы понять общие принципы. Специализируясь, не имея реального понимания концепций, вы ставите вас в такое же положение, как программисты COBOL и RPG в дни мейнфрейма. Вы решили перейти в поле, которое меняется очень быстро, и специализация для специализации поможет вам застрять в тупиковой работе в большой скучной компании. Чем более гибкими ваши умственные способности и понимать парадигмы развития, тем больше свободы вам придется работать там, где и когда захотите.

+0

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

+0

Я согласен, у меня есть знакомство в большом количестве, о котором я не упоминал. У меня есть основное знакомство с C#, java, и я сделал несколько perl в колледже. Я также проделал некоторую работу в web.py, я немного изучил django. Я просто не уверен, что знаю их достаточно, чтобы перечислить их в резюме. Я также знаю, что вы имеете в виду, когда меняются технологические сдвиги. У меня есть хороший друг, который был большим программистом COBOL, который потерял работу и до сих пор не смог его найти. Наверное, я действительно не хочу выбирать несколько языков и придерживаться их, но придерживаюсь нескольких в одно время, осознавая будущие события. – Isaiah

+0

Да, если вы обращаете внимание на смещение спроса внутри промышленность, специализация - это современные архитектуры, языки и рамки - это разумная вещь. Распространение слишком много приведет к слишком мелкому пониманию. Эти люди обычно являются «архитекторами», которые не выполняют никакой реальной работы, просто говорят, говорят в магазинах и в конечном итоге становятся немного эффективными. –

0

Что касается веб-разработки: общее определение Web Developer является тот, кто знает (по крайней мере) HTML, JS, вероятно, рамки JS (например, JQuery), CSS, на стороне сервера язык (в вашем случае, Python) и, возможно, по крайней мере одну структуру на стороне сервера (Django? Я не занимаюсь веб-разработкой на Python). Там есть четыре или пять языков.

Таким образом, 99% того, что вы изучаете на одном языке, применимо к другому языку. Я выполняю большую часть своей работы на Java и PHP, но на этой неделе я начал изучать C++ для класса, и в течение двух дней я писал небольшие приложения OO. Это было прежде всего потому, что многие из вещей, которые делают PHP и Java, они взяли с C++, но то же самое может действительно пойти на большинство современных языков. Были ли качество моих приложений? Конечно, нет, у меня все еще есть практика, но не предполагайте, что только потому, что кто-то владеет пятью или шестью языками, что они будут автоматически кодировать более плохо; на самом деле я бы сказал, что наоборот, это правда; вы научитесь смотреть на вещи по-разному при использовании разных языков и, как результат, улучшаете свой код повсюду.

+0

Я не знаю, имею ли я значения, которые расширяют язык, например, библиотеки Django или ajax. Я видел много рабочих мест, где вам нужно иметь опыт работы в asp, html/css, javascript, .net, perl, php и тому подобное. – Isaiah

0

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

Если вы специализируетесь на python, знание OOP PHP, C# или Java (или других типичных веб-языков) означает, что вы можете легко адаптироваться, если язык необходим. Если вы не знаете эти языки, кривая обучения будет значительно сложнее, если эти технологии необходимы. Как веб-разработчик HTML/CSS/JavaScript важен независимо от языка на стороне сервера.

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

0

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

Является ли это чем-то, с чем мне всегда придется иметь дело, специализируется на нескольких вещах, чтобы быть лучше для меня в долгосрочной перспективе?

Даже в веб-разработке (в частности, в мире python) существуют проекты, которые пытаются использовать один язык для всех целей, например Pyjamas. Он основан на той же идее, реализованной на Java Google, GWT. Таким образом, есть определенные тенденции, чтобы избавиться от этой смеси от разработки.

Что касается поиска такой работы, обычно это зависит от вашей способности убеждать людей, а не фактических знаний. Например, вы определенно можете найти кого-то, кто хочет использовать Pajamas/GWT для веб-разработки.

1

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

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

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

+1

Я не согласен. Синтаксис любого языка - это несколько дней работы, но разные языки имеют разные парадигмы и лучшие практики. Требуется несколько недель, чтобы быть действительно эффективными на любом конкретном языке, если они не являются по сути одинаковыми.Это означает, что сосредоточение усилий на одном поле ограничит вашу полезность. Всегда хорошо знать, что делает конкуренция :) – extraneon

+0

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

0

Вы понимаете, сколько вещей может быть сложено вместе, но некоторые люди просто думают, что это все одно, не так ли? Например, в моем мире веб-разработки могут быть некоторые серверы MS-SQL в фоновом контенте, некоторые материалы среднего уровня C#, некоторые интерфейсные ASP.Net также в C#, XSLT для некоторых из renderrings страниц, используемых Sitecore , HTML/CSS страниц вместе с некоторыми Javascript и jQuery, которые все объединяются, чтобы быть веб-страницей, и некоторые из них могут не видеть все эти навыки вместе. Хотя могут быть некоторые веб-разработчики, которые могут придерживаться одного стека, я не уверен, сколько из них действительно так много людей, просто приспосабливаются к тому, что вокруг них, и к тем, что работодатели могут им использовать.

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

Вам всегда придется иметь дело с определенным количеством лжи и BS в мире. Единственная аномалия, которую я вижу, может быть, если вы работаете в академических кругах или в какой-либо исследовательской отрасли Microsoft или Google, где вы не ощущаете то, что происходит в реальном мире в некотором смысле. Кто-то может сказать, что хочет приложение, которое делает X, и вы доставляете это ответ: «Ну, знаешь, я действительно хотел, чтобы там были Y и Z. Разве вы не знали, что когда я отправил запрос?»

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

Смежные вопросы