Рубрика «разработчики»

8 ошибок начинающих JavaScript-разработчиков, мешающих стать профессионалом - 1

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

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

Как мы развивали ИТ в «Леруа Мерлен»: пересборка двигателя на ходу - 1

Четыре года назад база клиентов велась отдельно в каждом магазине плюс ещё одна — на сайте.

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

Самый простой юзеркейс: сделать заказ через сайт и забрать его в реальном магазине «Леруа Мерлен» в России. Раньше заказы интернет-магазина обрабатывались в другом приложении вообще и по другой схеме. Теперь нам нужна была омниканальная витрина, чтобы любой заказ был разбит на интерфейс: касса в магазине, мобильное приложение, терминал в магазине, сайт — что угодно. Если вы поставите Linux на микроволновку — пускай будет микроволновка. Главное, чтобы какие-то интерфейсы могли стучать по API к беку и говорить, что вот тут надо оформить такой-то заказ. И получали на это внятный ответ. Вторая история была с запросами наличия и свойств товара из его карточки.

На фронте (скоро и про это напишем) у нас монстр — AEM, а за ним в беке было два больших приложения: OPUS и MoVe. Первое — это база данных свойств каждого товара (от габаритов до описания), второе — отвечает за чекаут, то есть монолит касс. Если сильно упростить.Читать полностью »

Ожидания

В этом году сообщество разработчиков ждало от Apple нескольких новинок. Все были готовы к анонсу «темной темы» в iOS 13, проект «Марципан» (упрощенный перенос приложений с iOS на macOS) тоже уже не был секретом, тем более, что в прошлом году Apple уже показала наработки и обещала дать доступ разработчикам к этому инструменту «в ближайшем будущем».

Большинство обсуждений строились вокруг этих тем. Некоторые еще вспоминали про обещание Apple представить новый модульный Mac Pro также «в ближайшем будущем», хотя новое железо на WWDC анонсируется далеко не всегда.
Читать полностью »

Привет! Я Валерий Лаптев, руководитель разработки LM в России. За два года мне нужно было поднять огромный отдел, и это был довольно интересный опыт.

Дело в том, что «Леруа Мерлен» есть во многих странах. Головная компания — во Франции, называется ADEO. Там пишут код под Францию, Италию, Испанию и Россию. Бизнес-модели у нас разные: если на российском рынке мы держим минимальные цены (ниже всех конкурентов в мониторинге), то в Европе всё иначе. На самом деле отличий море — начиная от особенностей локали и заканчивая другим законодательством. Есть особенности инфраструктуры России (те же очень большие задержки до Хабаровска) и другой жизненный цикл оформления заказа. Всё это порождает вот такой адский код, состоящий из огромных блоков IF:

Зачем нам в «Леруа Мерлен» нужен собственный российский отдел разработки на 200 человек - 1

Два года назад у нас было 60 магазинов и много-много хотелок по фичам. Накатывались они примерно за полгода и не всегда правильно. Последней каплей после кучи отклонённых по низкому приоритету фич была просьба завести в заказ поле-строку, чтобы мы его уже потом сами парсили. Это нужно было для особенностей доставки в России, поскольку страна больше других стран присутствия LM. Нам отказали и в этом, точнее, сказали, что будет где-то через семь-восемь месяцев.

Полугодовой цикл неспешной головной компании нам не подходил. Естественно, мы предложили написать свой код, отдать на ревью и подождать внедрения… Правда, из этого ничего хорошего не вышло.Читать полностью »

Позвольте рассказать вам историю об одной очень успешной компании, совершившей большую, глупую ошибку:

Мы не нанимаем младших программистов и интернов… Если не заводить щенка, не придётся убирать лужи.
--Netflix

Я был совершенно поражён, как некое корпоративное нечто умудрилось представить щенков в отрицательном свете, да ещё кого-то этим убедило. Щенки — самые чистые создания на Земле, живая пушистая радость! Лучики света в одиноком мире. Но перейдём к сути.

Многие компании последовали данной стратегии «нанимать только сеньоров». Они обосновывают это так:

  • У нас нет времени и ресурсов нанимать младших программистов; мы слишком быстро развиваемся.
  • Наша компания может себе позволить сеньоров, так что в джунах нет необходимости.
  • На текущем этапе мы не можем позволить себе ошибки. Ставки слишком высоки.
  • Наш процесс предоставляет сотрудникам большую автономность. Мы не готовы держать джунов за ручку, как они в том нуждаются.
  • Мы хотим заложить фундамент продукта прежде, чем начнём нанимать неопытных сотрудников.

Читать полностью »

«Яндекс.Деньги в ваше приложение заходить неинтересно сделайте штонибуть» - 1

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

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

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

Пост об этом, а ещё о том, как мы сделали свой CSS на Swift.

Читать полностью »

9 лет инкапсулированного развития — как работает проектная команда в корпорации из 2500 человек - 1

У нас тут масса историй, начиная с того, как мы переманили MS-разработчика в Питон, и заканчивая тем, как разработка поставила тикет найти бутсы для президента Федерации футбола Уганды. Но я бы хотел рассказать не только их, а, скорее, то, на что похожа работа внутри большой компании.

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

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

Хочу рассказать, на что это похоже. Потому что, с одной стороны, у нас есть доступ к ресурсам, которых никогда не будет у отдельной компании, а с другой — есть и ограничения.
Читать полностью »

Как это влияет на коллектив, менторство, качество кода, а также вопрос денег

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

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

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

Команда Bitcoin Core (официальный клиент биткоина) не согласилась включить код SegWit2x в текущий протокол системы. По мнению представителей «официального» битка, работа по созданию SegWit2x велась без должного внимания к деталям, поэтому использовать эту технологию прямо сейчас не представляется возможным.

Разработчики Bitcoin Core не согласились включить код SegWit2x в свой протокол - 1

Основной момент, который критикует команда Bitcoin Core — это отказ разработчиков SegWit2x включить в код протокола защиту от атак повторного воспроизведения. Эта проблема действительно имеет важное значение для криптовалют. В частности, для биткоина, поскольку эта монета находится на вершине своей популярности, а курс её бьёт все рекорды, несмотря на то, что время от времени цена битка по отношению к доллару все же снижается.
Читать полностью »

Насколько разработчики конфликтные — инфографика по результатам опроса на «Моем круге» - 1

Мы провели опрос среди пользователей «Хабра» и «Моего круга», в котором приняли участие более 3800 респондентов. Вопросы были самые разнообразные, но цель одна — выяснить, как, почему и с кем конфликтуют программисты, дизайнеры, менеджеры и другие работники IT.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js