Почему все ищут Джава-разработчиков?

Навеяно темой о поиске питонистов и заголовками вакансий.
Вместо Джавы можно подставить любой другой язык.

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

Почему в вакансиях (даже когда она распространяется через агентство) основной упор делается на технологическую составляющую? Описание «бизнес-части» зачастую отсутствует, или одним предложением.

P.S. Да-да, я знаю про аутсорс.

P.S.S. Тема скорее о «поговорить», преведствуютсо любые мнения, но желетельно оригинальные :)

👍НравитсяПонравилось0
В избранноеВ избранном0
LinkedIn
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Берите РНРшников: живой уголок в офисе расслабляет и доставляет созерцательное удовольствие.

Ну, кормить желательно, а то помрёт животинка, жалко же. Вообще, неприхотливые они: соломки киньте да печенек насыпьте, и будет им счастье.

Платформа выбирается один — два максимум 3 раза за всю жизнь разработчика,

а активне життя розробника коротке, як у балерини

40 лет — и на пенсию.

Чому в 40?
В 35.

40 — це уже легенда аутсорса

40 — це уже легенда аутсорса

Мастер спорта по настольному теннису, велоспорту, имеет пулитцеровскую премию по журналистике «За художественную фотографию».

Нашел вот такую вакансию, правда не аутсорс и не Украина:

artgorbunov.ru/...ster_of_server

прочитал как «вакансия северного программиста» .

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

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

Выкинуть аякс, поставить нодеЖс. А чо, в рамки «освоения новой платформы» укладывается :)

Да :) Практика показала, что в сайтах с «много аякса» замена традиционного xmlhttprequest на веб-сокеты даёт заметное ускорение работы и сокращение траффика для мобильных клиентов. Правда, не совсем даже сайтов в привычном понимании, а каких-либо RIA, написанных, скажем, на ExtJS.

ох, websockets == nodejs. Вы это тоже серьезно?

Не передёргивайте, вы же поняли, о чём я. СокетИО + НодеЖс.

У Вас Selection bias — Вы просто предпочитаете смотреть те ресурсы, на которых обычно тусуются pure «Java разработчики» (скажем у Вильмота — www.wilmott.com/...ies.cfm?catid=5

обычных java разработчиков нет практически совсем: на c# - сейчас какой-то непонятный спрос но обычно их тоже не много)

Во вторых, если касатся украинской действительности — «имеет смысл искать только под фонарём», то есть шансов что человек будет разбиратся в бизнесе настолько мало, что не имеет смысла по этому критерию как-либо отбирать/фильтровать.

скажем у Вильмота — www.wilmott.com/...ies.cfm?catid=5

обычных java разработчиков нет практически совсем: на c# - сейчас какой-то непонятный спрос но обычно их тоже не много

Вы тоже тему не читали?

P.S. Название и правду в стиле Альбертика. Мо кто-то подскажет более адекватное?

вероятно лучше чем Вы читали мой ответ ;)
говорю, на Вильмоте, практически не ищут программистов с жёсткой привязкой к языку-фреймворку — иногда бывает, как сейчас для c#, но вовсе не правило.

говорю, на Вильмоте, практически не ищут программистов с жёсткой привязкой к языку-фреймворку

Даже не смотря на то что это специализированное сообщество,
тыкнулсо на 3 случайных ссылки на 5 странице:
www.wilmott.com/...&threadid=91206
www.wilmott.com/...&threadid=91204
www.wilmott.com/...&threadid=91161

Во всех 1-2 пункт — это ЦПП, при том стронг ЦПП.

Честно говоря с этой стороны — насколько там действительно нужен C++ - не задумывался, думаю действительно нужен только в третьем случае, в двух других скорее всего вобще ocaml/haskell/R и С++ в крайних случаях.

Скажем, на собеседовании, по С++ они скорее всего не зададут ничего сложнее виртуального деструктора и разницы между static и dynamic аллокацией.

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

Это всё же слишком сильное заявление: мне кажется такое есть — но только в случае entry level позиций, когда, собственно, кандидату продавать нечего — i.e. сразу после университета, ну или в случае какого-то страшного карьерного изменения, скажем из финансов в распознавание образов уйти, или сети какие.

Наличие г*кода, же, ровно как и умение с ним работать — скорее всего свойство ортогональное языкам и фреймворкам. У меня есть подозрение, что в требовании к вакансии это умение звучит как working throughout the entire lifecycle и Understanding and appreciation of change/release management processes and procedures including source control software.

Впрочем, это догадки и анекдотические примеры какие-то.

вероятно лучше чем Вы читали мой ответ ;)

Таки прошу прощения. Вторую часть не дочитал.

Я, например, ищу мобильного QA-я и мне не надо java-разрабочики ;)

Я, например, ищу мобильного QA-я и мне не надо java-разрабочики ;)

1. Читаем тему

2. PROFIT!

Мобильный — это способный быстро метаться от проекта к проекту? :)

Почему в вакансиях (даже когда она распространяется через агентство) основной упор делается на технологическую составляющую?

Кэп подсказывает, что так делается потому, что для выполнения работ надо обладать соответствующими знаниями и навыками.

:-)

Кэп подсказывает

Кэп подсказывает, что надо читать до конца:

Описание «бизнес-части» зачастую отсутствует, или одним предложением.

:)

Як не дивно існує парадокс, що легше змінити професію, чим перейти в рамках однієї із одної спеціалізації в іншу.

Давайте еще сравним языки/технологии с культурой и коммьюнити и их антиподы?
1. Для начала посмотрим на статистику github.com/languages
2. Каждый сделает свой собственный вывод
3. ...

4. PROFIT!

и ?

то что кто-то попробовал чет наваять не значит что он наваял в привычной для себя обстановке

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

та лан. я реально пробывал себя в пеньсоурсе, под 500к закачек, ну и шо ?

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

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

и ?
свой первый NDA я подписал более 10 лет назад.

от что мне шарить ?

Зато не нужно играть в испорченный телефон с рекрутером на тему образцов исходного кода

с недавних пор я участвую в рекрутинге, и готов подписать встречную нда, на тему кода, ради того, что бы посмотреть реальный код «поциента»

ради кода .... но то что приносят с гитхаба ... меня не зацепило

Тогда вы наверное в курсе, что NDA не имеет юридической силы на территории Украины? (:

смишно. я уже лет 12 не работаю с заказчиками с территории совка, а за\вне этой территории немного другие понятия

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

1. Для начала посмотрим на статистику github.com/languages

А что этот график вообще показывает?

топ ленгвичей на гитхабе(?) ваш к.о.

Может К.О. еще прояснит по какому критерию ленгвичи считаются с пруфлинком? По числу вотчеров, форков или LOC? Потому что кмк по LOC только ядро линукса и андроид зарулит все поделия на руби.

Процентное соотношение всех репозиториев на гитхабе

Давайте еще сравним языки/технологии с культурой и коммьюнити и их антиподы?
1. Для начала посмотрим на статистику github.com/languages
2. Каждый сделает свой собственный вывод
3. ...

4. PROFIT!

1. Читаем тему

2. PROFIT!

На самом деле поиск по языку имеет смысл. Язык — это не только набор конструкций, но и определенная экосистема, культура вокруг него. Возьмите PHP. Какие первые ассоциации со среднестатистическим ПХПистом? Нет, конечно можно писать качественно и эффективно и там, но в целом культура не та. Особенно хорошо работает на более нишевых языках (scala, erlang, python там). Нишевость и редкость кадров частично компенсируется их «элитарностью» и «сознательностью». И зачастую это не обязательно значит именно гуру-ность, а скорее готовность принять философию.

если бы в гонке веб-языков победил бы другой язык — жаба или питон, сейчас так же само рассказывали про быдлокодеров на питоне или жабе

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

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

Но на PHP его почему-то больше.

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

та ну, на каждый чих может и нет. Но вездесущие утечки, и редкие «внезапные» сегфолты — всегда запожалуйста.

Я встречал эпичнейший пример гoвнокода на С, когда при изъятии планки памяти программа крашилась при запуске.

Занятно, что сама программа, точнее, её падающий резидентный модуль, висящий демоном, занимал от силы 6 мегабайт (На железке с 32 Гб). Так что очень даже «может и да» :)

Про «текущие» выкидыши кодопроизводства даже и говорить не хочется: malloc в коде — проект в беде! Причём, порою все эти глюки накладываются просто непостижимым образом, доставляя лютые, бешенные часы дебага.

А такое понятие, как платформо(не)зависимость кода, в рассчёт «творцами» вообще не берётся :)

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

Ну, про malloc — это я так, сострил. Насчёт нестабильности кривого кода соглашусь лишь частично: то ли я особенный, то ли карма такая, но весьма часто встречались нетривиальные вещи, проявляющиеся весьма странно.

Возможно, у меня с вами разные предметные области, поэтому и делаем разные выводы.

Вы так же учитывайте «специфику»: гoвнокод гoвнокодером доводится до условно-рабочего состояния, плохо тестируется. Вот и получается, что у грамотного программиста код либо падает сразу, либо работает, а у гoвнокодера — работает и падает «неправильно» :)

Вот и получается, что у грамотного программиста код либо падает сразу, либо работает, а у гoвнокодера — работает и падает «неправильно» :)

Це приблизно звучиь так, «професоінал уникає дрібних понилок, щоб облажатись по великому»

професоінал уникає дрібних понилок, щоб облажатись по великому

От это в мэмы.

Языки бывают быдлокодерские, и небыдлокодерские.

Ну если так смотреть то Java Script — самый «быдлокодерский» язык. На нем можно легко написать такой код, что его и сам автор через месяц не поймет. А если еще «библиотек» вроде JQuery или Knockout подключить — так вообще заворот мозгов.

И тем не менее на чем бы сайтец не писал (PHP, Java или на рельсах) — без Java Script никак.

Да, джаваскрипт — тот ещё образчик.

И тем не менее на чем бы сайтец не писал (PHP, Java или на рельсах) — без Java Script никак.

Я не преувеличивал важность небыдлокодерских языков и не преуменьшал важность быдлокодерских — «все професси важны». Однако, условно они очень даже делятся на две эти группы, каким бы важным не казались. Ниже я более подробно раскрыл свою точку зрения по этому вопросу.

Поясню: на джаве глюкавый быдлокод написать куда сложнее, чем на РНР.

поясните почему ?

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

вот тут спорно, конечно написание веб-странички без использования фреймворков на пшп проще, но если брать фрейморки — то вполне сравнимая сложность, особенно если плясать со всякими орм, шаблонизаторами и прочее

поясните почему ?

Поясняю.

Начнём с азов для юного падавана джавы. Значит, пишем мы код, пишем, пишем, и тут хренась, ide как бы нам намекает: «Чувак, а ты написал throws? А обязательные эксепшены обработал? А анричибл код зарефакторил? А что же ты вызываешь метод объекта класса-потомка из ссылки типа его родителя?». И падаван такой сидит, да, и думает: «Охоспаде, какая же я мразь, экспешены то не объявил, не закетчил, логические условия у меня кривые, что некоторый код никогда не будет выполнен, и с наследованием\типами наговнял. Почитаю маны и напишу правильно, программа то не соберётся».

Продолжим началами юного воина гипертекстового препроцессора. Зачит, пишешь ты код и...не заморачиваешся. А там, где вылезло, наляпал @ и всё ништяк.

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

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

Дык, я и не утверждаю обратного: гoвнокод — трансъязычен и мультипарадигменнен. Однако, сравнивая для примера гoвнокод джавы и пхп, можно сказать, что джавашный будет менее гoвнокодистым, что является следствием «небыдлокодерского» языка.

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

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

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

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

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

быдлокодеры есть везде.

Карго-культ по компаниям — это чтото новенькое, первый раз слышу, чтобы ктото брался за изучения языка, только потому что его юзает компания Х.

И что? Много кодеров идут в пионисты из за гугла? Гугл, это кстати много всего и жаба и цпп и питон и го, и черти что еще...

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

Я тоже где то читал что питон вначале 2000-ых поднялся потому что его в гугле начали юзать и народ в него поверил, и Гвидо чуть позже захайрили.

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

Дык, сейчас уже и трава не такая зелёная. Маятник был запущен, и всё ещё по инерции двигается.

Новенькое? Google => Python.

Мне кажется сейчас google -> go более актуально

Да, еще можно добавить google => dart.

GWT уже похоронили фактически

GWT уже похоронили фактически

Это ты придумал, у гугла адвордс и админ блоггер-а на gwt, и куча других компаний его юзают, и пилят экосистему(vaadin, smartgwt)

Только два продукта из всей линейки. Очень показательно.

Думаю у них в интранете поболее водится, все таки gwt это не для массовых сайтов. Ну и adwords это ж суперкритикал для их бизнеса.

За последний год в их интранете стартовало несколько проектов на python поверх gae. Почему gae — понятно, утилизируют ресурс. Почему python — в общем тоже, но альтернативы у них есть, хотя выбрали именно эту технологию.

Не, ну если тебе Сережа Брин докладывает про все их внутренние дела, то мне добавить к его словам нечего ))

Зачем Сережа, он не по технической части ж, пора бы выучить.

А не сережа тебе не доложил за одно сколько стартовало gwt проектов?

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

GWT уже похоронили фактически

Всеобщие разговоры попритихли. но я б его еще не хоронил :-)

Wave тоже никто не хоронил, однако ж!

Ну как же, его похоронили помоему еще до релиза.

та хз, я чтото не припомню, чтобы при жизни его ктото юзал.

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

Инженер может решать любую задачу, а программист — задачу в рамках только «своего» языка. Инженеров у нас почти нет (так как не модно, чо), зато есть обезьяны, научившиеся стучать по кнопкам, работающие в аутсорсах с зарплатами в 3к с полностью отсутствующим пониманием CompSci, зато офигенно прокачанными навыками теннисиста и упоротого энтерпрайз-боя. Вот и берут, шо есть, бабло то надо как то качать из СШП.

Инженер инженеру рознь. Не для всех задач цс нужен.

Хорошо, вот вам задача: «зделать интернет магазин по продоже плюшевых мишек, который будет способен обслужить до 1к юзеров» — где здесь цс? Или для вас это не «задача», а так — формошлепство ?

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

Понятие слишком обширное

Причём тут задачи, речь о другом. Это как пилотировать самолёт, и не знать, что такое углы Эйлера. (Хрен с ними, до земли все долетят). Вы себе представляете электрика, чинящего вам розетку, который пользуется при этом тестером, но путает фазу и ноль? (Вроде умный, а как лампочка загорается — говорит «О, тута мощность (!) есть.» ©).

Постарайтесь вникнуть в суть понятия «инженер» и не цепляйтесь за конкретные задачи. «Просто» программисты — это как ПТУшники: умеют болт на станке выточить и саморез от шурупа отличают. Инженеры же — люди с «вышкой», с куда более обширными фундаментальными знаниями в компьютерных науках: они не только знают, что саморез от шурупа отличается не только внешним видом, но и почему он именно такой, и, как следствие, сферой применения. Аналогия весьма проста и забавна, но смысл ясен: инженер знает то, до чего мозг «птушника» просто не дотянется, не в силу глупости, но в силу узкости кругозора.

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

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

Или, скажем, оценить чей то алгоритм с точки зрения эффективности (по расходу памяти, нагрузки на процессор, возможности распараллеливания на том или ином железе, способы модификации etc.) — мало кто вообще понимает, как работает транслятор, компилятор, интерпретатор, JVM, CLR (вставить нужную особенность своего языка), чем абстрактный класс отличается от интерфейса, почему виртуальная машина, а не пакет компиляторов, и ещё очень много «почему». И как, используя эти знания, что то изменить в продукте в лучшую сторону.

Или попинайте девочек-"тестировщиц" в доблестных столпах отечественного аутсорса: да 95% из них даже не слышали про какие то там селениумы, тест-планы, блекбоксы, а уж фраза «а доки вы тестили» вызывает у них только снисходительную улыбку. Довелось общаться с одной тётенькой, уже лет 15 как плотно сидящей в тестировании ПО, она поведала печальную картину: приходящие собеседоваться выпускницы экономических вузов молодые люди с бакалавратом и\или магистратурой (не буду говорить какого самого популярного тех. вуза на доу ;) ) за плечами, вообще не отстреливают в элементарных вещах, скажем, того же анализа тестируемого алгоритма. Даже ход уравнения о двух неизвестных они формализовать не могут. О чём можно говорить с человеком, который не может рассказать обобщённый подход к решению уравнений? Правильно, о станке и болтах.

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

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

Особое удовольствие доставляют обезьяны титулованные — какой-нибудь ZCE или MCPD — такие да, предметную область зазубрили (как те девочки-отличницы в своё время зубрили вышку, позабытую вовсе к концу курса), бабла просят больше, но...всё так же остро стоит проблема различия абстрактного класса и интерфейса.

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

А толпа сброда от кнопкодавства — это не «софтваре ингенерэ», умеющие найти подход к задаче без типового решения, это птушники, закручивающие саморез в гипсокартон.

ну наконец-то кто-то вспомнил что доки надо тестить. последний раз, когда сказал об этом на работе — за ид_ота приняли.

Ну конечно — ведь сейчас все молятся (что бы не сказать хуже) на Agile. Именно потому что никто не хочет писать (а еще и тестить!) доки. Мы же гибкие и коммуникабельные: клиент девелоперу сказал что-то по скайпу; девелопер налабал по-быстрому, как понял; показали, если шо не так — быстро поменяли. Если через 2 дня клиент передумал — поменяли обратно. А доки — их же переписывать и проверять потом надо — явно лишняя работа.

А уж тесты под всё это переписывать — ващеее. TDD-шники так вовсе рыдают кровавыми слезами :)

<vbros> Аджайлы, скрумы, канбаны — это от лукавого. При совке всего этого небыло, зато программисты наши были самыми лучшими :) </vbros>

А уж тесты под всё это переписывать — ващеее. TDD-шники так вовсе рыдают кровавыми слезами :)

На паре проектов попытка писать юнит-тесты именно так и закончилась: пока девелопили новый код — покрывали тестами. Как только через месяц клиент захотел все поменять и увидел эстимейт на изменение тестов — сразу сказал «выкиньте тесты нафиг».

Agile — это такое же волшебное слово, как «Перестройка» и «Новое мЫшление». Никто не может точно сказать что нужно что бы «быть Agile», зато если чего-то нет — это потому что «мы Agile».

О какой развернутый ответ :-)
Мне кажется, у вас путаница между «толковыми ребятами», «бестолковыми ребятами» и четкой привязкой к цс.

То что у нас в оутсорсе доминирую «бестолковые ребята» — это да.

О какой развернутый ответ :-)

Наболело :)

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

Нет нет, я отдаю себе отчёт, что толковым можно быть и без знания CS, но в таком случае, это не IT-инженер, а описанный выше один из лучших вытачивателей болтов, отлично справляющийся со своей задачей. Казалось бы, что ещё надо: задача делается, всё путём.

Но...Тайна интерфейса и абстрактного класса всё ещё постигнута на уровне «ООП за 24 часа 5 страничек в книжке», и применяется с соответствующими недостатками :)

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

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

Инженеров у нас почти нет

Инженеры есть на заводах (с зарплатой в 2К).

Context is incorrect: имелось ввиду отсутствие инженеров в IT.

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

«абизяны», восновном, не любят, когда их абизянами называют.

потому, что программисты не любят цепляться за конкретную предметную область

программисты не любят цепляться за конкретную предметную область

О, это уже интереснее.
Почему?

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

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

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

это всё карьеризм.
а вот если подумать сколько разработчику интересно работать на одном проекте при этом оставаясь всё тем же разработчиком — то это наверное год-два (опять же пальцем ткнул в небо).

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

предметная область != один проэкт.

ну технических писателей никто ведь не отменял.

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

Но ведь усегда лучче иметь програмера. который понимает что он пишет.

Потому что они синьорами становятся в 23 года!

Меня одного боянчег про 23- летних синьоров уже за...надоел?

Умная компания нанимает без привязки к технологиям. Такие компании в Украине есть — я нахожу без особого труда.

Такие компании в Украине есть — я нахожу без особого труда.

Так поделитесь со всеми.

Ну возьми себе на java-проект сишарпера например и посмотри что получится, а потом расскажи нам, почему так больше делать не будешь.

А почему ? Сишарперы уже не люди?

Сам сишарпер, но приходилось ковыряться с приложениями на Java. И главная проблема — даже не в понимании кода. А в том, что это совсем «чуждая» для виндового юзера платформа. То, что в винде есть «по умолчанию»: active directory, SSL сертификаты, TLS, ACL, EventLog, Performance counters, WMI и т.д. в Java делается через какие-то 3rd-party библиотеки. Даже запустить программку на Java — нетривиальная задача. Надо прописать кучу переменных окружения и путей где искать какие пакеты, плюс знать, какой класс запускать (exe-то нет). Заставить ее писать логи в файл — то же надо разбираться, как.
Поэтому сишарперу фактически придется выкинуть из головы все знания о том, как что делать в дотнете и по-новому научится все это делать в Java. Отдельный цирк — поиск примеров. Набрав в гугле вопрос, как заимплементить что-то на Java можно найти 100 принципиально разных примеров: все будет зависеть от библиотек, фреймвоков и их версий. При этом в разных версиях одной библиотеки классы могут работать по-разному. После простого и понятного .Net Framework + Visual Studio + MSDN просто теряешься.
Что бы не провоцировать холивар: я не думаю что Java хуже C#. Просто она другая и привыкнуть к ней не просто (да и смысла особого не вижу).

А я чет, как Java разраотчик, подумал что Вы джаву хвалите :)

Зато развлечение:) По работе действительно менять язык невыгодно, зато, как вы сами пишите — «нетривиальная задача». Приятно и полезно проветрить мозги)

Приятно и полезно проветрить мозги)

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

Как и было ранее сказано — нужны разработчики на проект — «Здесь и сейчас» :)

Досрочный ответ! Отвечает Капитан Очевидность.

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

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

Почему в вакансиях (даже когда она распространяется через агентство) основной упор делается на технологическую составляющую? Описание «бизнес-части» зачастую отсутствует, или одним предложением.

Разглашение информации о бизнесе заказчика и деталях проекта как правило запрещено. Особенно для новых проектов (зачем делать подарок конкурентам?).

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

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

Не просто долго, бесконечно. :) И в контексте этого бесконечно, не имеет особого значения 1-2-5 лет. Так или иначе прийдется изучать новые подходы и фреймворки. А переход с Джавы на Ц№ или с питончега на руби (до вменяемого уровня), разве он займет более пары месяцев? Что такое пара месяцев в контексте 5+ лет на проект и дефицита разработчиков на рынке?

Логика таже самая, что и в моем «споре» с дждев.
Простой пример: сколько у вас займет времени изучить скажем гвт до уровня умения написания «хорошего кода» по ТЗ ?
У меня самообучение до некоторого уровня заняла довольно прилично времени — больше месяца. Теперь можна брать и прибавлять остальные технологии — томкат,спринг,хибернейт,вебсервисы,wathever, не говоря уже об синтаксисе, семантике, общепринятых подходов к кодированию, и обширной стандартной либе. В итоге, изучение всего этого займет просто уймищу времени. Для работодателя выгодней взять того кто уже умеет, чем учить когото еще.

Сколько времени займет изучить ASP MVC, после того как знаешь Spring MVC(кандидаты на конкурс найдите 10 отличий:) )?
Подходов гораздо меньше чем технологий. Понимание принципов, фундаментов очень быстро ускоряет время вхождения. Нормальный seniorJava легко станет midle на .NET и наоборот. Мне кажется не очень много задач требуют экспертных знаний.

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

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

У Java наверняка свои «грабли» и выучить их можно, только понаступав. Это по книжке сделать можно на любом языке. Но даже готовые примеры не всегда работают, как написано.

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

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

Ну и какой уровень будет у C# девелопера за пару месяцев переобучения на Java? В лучшем случае — джун. Так что лучше: набрать на проект C# мидлов, которые сразу смогут работать, или потратить пару месяцев на переобучение их в Java — джунов?
Уже писали — что бы стать мидлом в любом языке нужно не меньше года. Поэтому «прыгать» с одного языка на другой — просто потеря времени.

От перехода с языка на язык дев не забудет паттернов, конструкций , бестпрактисов и т.д. Так что мидл останеться мидлом. Может ещё при переходе на принципиально разные языки (типа Шарп -> Хаскель) мидл и станет джуном, но уж точно не в С++/Java/C# среде.

По «языком» я понимаю «платформу», а не только синтаксис. Что бы перейти с чего-либо на, скажем, ASP.Net мало знать паттерны и синтаксис. Надо понимать всю безумную событийную модель с постбеком и вьюстейтом. Иначе — ты не мидл в ASP.Net, а джун.
Про C++ вообще другой разговор: его за 2 месяца даже на джуна не выучить, если переходить с Java или C#. Потому что нужно выучить и понимать массу низкоуровневых вещей (работа с памятью, системные вызовы, хэндлы, семафоры и т.д.), про которые C# - мидлы даже не слышали.

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

можно на чем угодно «нашлепать» из готовых кусков, найденных в инете

Особенно если проект на ASP.NET WebForms

Надо понимать всю безумную событийную модель с постбеком и вьюстейтом.

Событийную модель c постбеком должен понимать даже джун, ибо там много на ней стоит, но что там понимать? Пол-главы в Эспозито. Ладно ещё, вникать в ASP.net — конвейер, но де факто, оно и миддлу не каждый день нужно нужно. Насчёт С++ я не уверен, так как сам начинал именно с него. Но опять таки, не думаю, что шарписту сложно объяснить деструктор, если он знает, что такое IDisposable.

PS: А вообще, я считаю, что первыми языками должны быть С/С++, хотя бы основы, ибо они базовые для многих других.

Событийную модель c постбеком должен понимать даже джун, ибо там много на ней стоит, но что там понимать?

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

С хорошей математической базой перейти на хаскель не составит особого труда

без математической базы на него не перейти никак.

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

1.5 года назад можно было смело браться за go не боясь потеряться в горах тех. литературы (:

видел я ваш го. не пропер, какое-то унылое го

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

Та конечно, куда ему до похапэ

Подписаться на комментарии