Яндекс.Деньги хотят удвоить штат разработчиков, страдают из-за выбора XSL десять лет назад

Директор по персоналу Яндекс.Денег Наталья Хаметдулова в интервью ComNews рассказала, что в компании трудится 100 разработчиков, нужно еще 70 в этом году, а сделанный с десяток лет назад выбор технологии XSL (трансформации и представления из XML) очень ограничивает поток пригодных кандидатов, поэтому приходится учить самим.

Недавно отдел разработки «Яндекс.Денег» отметил «кадровый юбилей» — в штат был принят сотый разработчик. [.] И наша задача максимум — найти еще 70 первоклассных специалистов в этой сфере в течение полугода.

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

Их нужно поддерживать, постепенно переводя на новые технологии (Node.js), на которых впредь будут создаваться все сервисы компании, поэтому для нас изначально важно знание JavaScript. До сих пор каждого такого специалиста мы искали месяцами, и дело не в мотивации, она у нас вполне конкурентоспособна, — причина в дефиците таких специалистов на рынке. Сейчас, когда нам нужно увеличить штат отдела более чем в полтора раза в сжатые сроки, нам пришлось искать новые подходы. [.]

И вот мы решили открыть свою школу разработчиков в Санкт-Петербурге — там, где находится весь наш отдел разработки. Наша «Школа XSL» — это двухдневный интенсивный курс, в течение которого слушатели освоят языки XML, XPath и XSLT- с самых основ до ключей, временных деревьев и разных тонкостей применения XSL в проектах. [.] По окончании курсов все участники получают сертификаты, а лучших — и это самое главное — мы приглашаем на собеседование.

Лучшие комментарии

  • Контекст комментария

    Nadezhda Kiyatkina

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

Добавить 40 комментариев

  • Ответить
    Альтер Эго

    Помню-помню, как году в 2004 (или 2006) в Яндексе решили сделать погоду для мобильных (WAP), и мне дали XML -фид и XSLT от веб-версии для написания новых XSLT в WML. От этого XSLT весь мозг вытекал, по двум причинам: XSLT я видел в первый раз и до этого писал на Java с ООП, а из XSLT торчали уши функционального языка, что отдельно взрывало мозг с непривычки. В итоге, результат в виде путёвого WML получался, но из Яндекса писали, что код — идеологически-неправильное говно и надо его привести к идеологически-правильному. Помчавшись, кажется, пару-тройку недель, я из этого проекта с облегчением свалил (т.к. в подрядчике Яндекса за эту работу платили катастрофически мало и научить ничему не могли). Яндекс позже, насколько я знаю, забил на идею аутсорса этой задачи и начал что-то пилить сам.

  • Ответить
    Альтер Эго

    ^^ кстати, чуть позже уже для собственных нужд пришлось использовать XQuery, и оно пошло просто на ура! Не смотря на то, что XQuery — это тоже функциональный язык, с ним было работать легко и приятно (если не считать проблемы наличия бесплатного процессора). Так что, в общем, я пришел к выводу, что проблема не столько в самой идее трансформаций из XML и функциональном подходе, сколько в адской кривизе XSLT.

  • Ответить

    Будут, конечно. Новости из далекого 2025-го года: > Яндекс.Деньги хотят удвоить штат разработчиков, страдают из-за выбора Node.js десять лет назад

  • Ответить
    ak

    Да, забавно, что по прошествии десяти лет, когда вновь стоит выбор технологии, в Яндекс.Деньгах выбирают не, например, Скалу со статической типизаций и выполняемую в enterprise grade Java VM, а джабоскрипт и моднейший node.js.

  • Ответить
    Альтер Эго

    да-да, Нода, Питон, Скала — даешь все самые модные штуки, у которых у кого первой версии ещё нет, а у других 3-я не совместима со 2-й, потому что их «отцы» в перманентном творческом поиске идеального языка! даешь падучие сервисы! ура! :)

  • Ответить

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

  • Ответить

    > До сих пор каждого такого специалиста мы искали месяцами, и дело не в мотивации, она у нас вполне конкурентоспособна Да ладно, самовнушение какое-то. За право работать в Великом Яндексе всегда был какой-то штраф, предложения с лучшей мотивацией найти было не так сложно. А только за согласие людей вкладываться в изучение «Cobol’а 21-го века» уже нужно платить бонусы. Сам же случай типичный: экономия на непрерывном пересмотре технических решений и их адаптации к текущим трендам, которая выливается в бОльшие траты потом.

  • Ответить

    Надежда, а «(Node.js), на которых впредь будут создаваться все сервисы компании » — компании Я.Деньги или всего Яндекса? А это корректно сформулировано, что «все»? :)

  • Ответить

    Василий, честно говоря, с «все» косяк вышел, махнули сгоряча :) Нет, не все сервисы Яндекс.Денег на ноде будут. За весь Яндекс сказать ничего не могу — не знаю.

  • Ответить
    Альтер Эго

    > я из этого проекта с облегчением свалил (т.к. в подрядчике Яндекса за эту работу платили катастрофически мало и научить ничему не могли). Яндекс позже, насколько я знаю, забил на идею аутсорса этой задачи и начал что-то пилить сам. А можно подробнее об аутсорсе в этой компании? Для историков сохранилось [url=http://seo-xslt.narod.ru/Mail-Yandex/_jane.ru.xsl]идеологически-правильное [s]говно[/s] в 325 КБ от 12.03.2011[/url] - тогда это использовалось в почте, но позже они это благоразумно сократили, а потом на XSL забили — чем и похвастались http://habrahabr.ru/company/yandex/blog/151700/

  • Ответить

    Раз уж тут начали Бацека призывать, то я могу сказать за XSLT:) Я пришел в Яндекс в 2007 году и сначала работал на Яндекс.Деньги и даже выступал на конференциях с докладами про XSLT. По тем временам — вполне было конкурентоспособное решение (учитывая разработанный Яндексом специальный сервер Байда). jQuery тогда был версии 1.1, специалистов по XSLT — хватало.

  • Ответить

    > специалистов по XSLT — хватало Люди со знанием XSLT не перевелись и сейчас. Просто при прочих равных условиях человек предпочитает вкладваться в перспективные технологии будущего, а не отмирающие прошлого. Поэтому имхо проблема сложности поиска специалистов именно в отсутствии бонуса, перекрывающего неперспективность вложения сил и времени. А бонус взять негде: если новым предлагать высокую ставку, то обидятся те сотрудники, кто уже в штате — «а чем мы хуже?» Поднять им — придут остальные кодеры, «вообще-то и наш C++ не торт». И т.д. Поэтому такие проблемы нужно решать заранее, пересматривая технические решения в пользу модных технологий, чтобы не остаться с «Коболом». А выбрать технологию на все времена — утопия.

  • Ответить
    Альтер Эго

    > в перспективные технологии будущего А какие технологии видятся перспективными сейчас? Какие виделись перспективными вчера? Ну и т. д.

  • Ответить

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

  • Ответить
    Альтер Эго

    А что вы имеете против Node.js? Он моден, приятен и быстр. Асинхронный python — это еще то УГ по сравнению с Node.js. Единственное УГ в том что разработчики Node.js выбрали в качестве интерпретатора Javascript — ООП там уныл и костылен.

  • Ответить
    Альтер Эго

    >>пециалистов по XSLT — хватало XSLT это что из области фантастики как и валидный XML. Как то мне пришлось парсить XML прайсы тысячи и одной фирм — так ни у одной их этих фирм XML не был валиден на 100%. Все считали что XML — это просто любая информация в тэгах.

  • Ответить
    yorg_haider Дармоед

    @Альтер, который парсил тысячи прайсов. Рассказы про фантастический xslt — это или высказывание человека, который на пхп скриптовал в те времена или же не понимал принципа работы трансформирования.

  • Ответить
    Альтер Эго

    > XSLT это что из области фантастики как и валидный XML Представьте себе, что такой массовый сервис Яндекс.Почта достаточно долго использовал XSLT на клиенте — т.е. сервер отдавал XML+XSL, а браузеры выполняли XSLT и отображали. Нужны примеры сайтов с XSLT на клиенте? Для XSLT валидности не нужно, достаточно well formed xml И в каком-нибудь AJAX про XSLT вспоминать приходится или это вполне вероятно. > те самые, чьих адептов на рынке труда большинство, так что жаловаться на нехватку и не приходится Т.е. самыми перспективными оказываются самые дешевые. Возникает вопрос: А каких специалистов на рынке большинство?

  • Ответить

    > А, понятно. То есть php и 1C. Можно еще водителей и продавцов притянуть. В принципе в новости все и описано: понимание того, что «Их нужно поддерживать, постепенно переводя на новые технологии» есть, но пришло слишком поздно, когда знатоки XSL уже «перевелись». Но на самом деле не перевелись, просто не идут на предлагаемые условия. А условия поднять нельзя, это может поломать всю экосистему оплаты: в Яндекс (и любой другой Big Name) люди должны идти не за деньгами, а ради возможности прикоснуться к великому. Отсюда и «мы решили открыть свою школу разработчиков», то есть вместо закупки уже малоиспользуемых и потому редких и дорогих шурупов на плоскую ответку закупаются дешевые на крестовую, и уже своими силами перепиливаются. И все из-за какого-нибудь «гуру» программирования, который 10 лет упрямился в своем выборе, понимая, что в итоге такие косты никто не считает, и все спишут на «такова жизнь» ;).

  • Ответить

    kroki, не надо грязи про «гуру»: в 2007 году XSLT уже был от большого Яндекса и новая команда в Питере со знанием XSLT собралась без проблем. Я менял работу чуть больше года назад и сейчас переписываю на jQuery код технологически гораздо более древний, чем тот, который был в Яндекс.Деньгах. Если бы в то время у них была открыта вакансия и мы договорились бы по деньгам, сейчас нужно было бы искать меньше разработчиков:)

  • Ответить

    > XSLT рулит вообще-то! Если вы еще не в Яндексе, то вышлите туда свое резюме, а потом нам расскажите, понравилось вам предложение, или нет. Если уже там, то должны понимать, что компания, особенно крупная, не может рассчитывать на постоянный приток головастых людей, поэтому выбирать приходится не лучшие технологии, а популярные, то есть доступные широкому кругу. Иначе давно бы все пересели на Haskell и Erlang.

  • Ответить

    > kroki, не надо грязи про «гуру» Я не хотел вас задеть, это было просто предположение, про то, кто у кого код унаследовал, мне ничего не известно. Я уверен, что даже если бы вы в 2007 году предложили бы от XSL отказаться, гуру над вами вам бы этого не дали, ибо «команда в Питере со знанием XSLT собралась без проблем», и сиюминутной потребности в отказе не было. Мы все умные задним числом, и возможно я себе льщу, но сам на всех работах с 2002 года всегда голосовал против около-XML-ных технологий (возможно просто не понимал их прелестей).

  • Ответить

    kroki, я XSLT успешно применял чуть ли не с 2000 года. Вопроса отказа от XSLT в 2007 году в Яндекс.Деньгах вообще не стоял, может и сейчас не стоит. Вообще, в 2007 году были споры, кто больше — Яндекс.Деньги или WebMoney. В 2008 году уже всё было ясно. Кстати, вот ещё одно наше техническое решение — http://telamon.ru/articles/async.html Многим смешно, а оно работает.

  • Ответить
    Альтер Эго

    Лучше скажите — где оно работает, чтобы можно было посмотреть… как на долгий и мучительный процесс загрузки почты или я.ру > в Яндекс (и любой другой Big Name) люди должны идти не за деньгами, а ради возможности прикоснуться к великому А Яндекс.Деньги — это еще Яндекс?

  • Ответить

    > kroki, я сейчас не на той позиции, чтобы было уместно рассылать резюме. Про резюме было в ответ Дмитрию. Яков, кроме обильной самопохвалы, что именно вы хотите сказать? Как именно Яндекс.Деньги пришли к нехватке XSL-программистов, и что следовало сделать, чтобы этого избежать? То есть я попробовал изложить свое видение, естественно задним числом, чтобы казаться умнее, но вы-то вообще ничего не предложили, кроме ссылки на свою монографию по совершенно иному вопросу (ну и намека, что все было бы зашибись, если бы только Яндекс договорился с вами по деньгам).

  • Ответить

    [QUOTE]Кстати, вот ещё одно наше техническое решение — http://telamon.ru/articles/async.html Многим смешно, а оно работает.[/QUOTE] А почему смешно, разве это не классический подход строить промежуточные очереди и кэши? Только я не совсем понял зачем нужен SQL для очереди и чем не подойдёт обычная очередь (может для транзакций, но ряд nosql их поддерживает). Ещё интересно как такой подход с web подружить, всякие websocket/polling ?

  • Ответить

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

  • Ответить

    Тонны HTML программистов, лярды 22х летних сеньоров, поголовное засилье 18 летних экспертов дают о себе знать :) Даже не знал, что такую фигню стоит в резюме записывать. А оно вон как.

  • Ответить
    Альтер Эго

    Вон как: «Тут во Яндекс ищет XSLT-верстальщиков который год. Может пойти? Ихняя кадровичка мне регулярно в блог спамит свои вакансии.»

  • Ответить
    Альтер Эго

    Так борятся не с граблями XSLT, а теми граблями, которые адепт очередной «новой технологии» не считает граблями. Обычно не удаётся им объяснить, что загрузка в десятки секунд — это много, какими бы новыми ваши технологии не были, хотя на хабре говорили про миллисекунды. Сейчас на почте не гуглится ни одного filetype: xsl, но что-то [url=http://www.google.com/search?q=site:mail.yandex.ru&start=110&sa=N&filter=0]полезное для спамеров есть.[/url]