Заявки на доклады

Поиск по тегам:
Показать только принятые доклады

Мастер-классы

Пирамида тестирования становится нарицательным выражением.
Про нее слышали многие, а построить на своих проектах получается не у всех. А все потому что большинство идет по стратегии "копи-паста" пирамиды, которую некогда популяризировал Мартин Фаулер. В 2012 году. Сейчас 2020. Технологии изменились, подходы к разработке тоже. Но продолжаем мыслить 3-мя уровня пирамиды тестирования. А еще, мы часто забываем о том, что Мартин Фаулер - был и вроде как и есть бекенд-разработчик. И автор пирамиды тестирования Майк Кон - тоже. Когда они ее придумали, даж SPA еще не было.
В своем докладе я расскажу про то, как построить правильную пирамиду тестирования именно для вашего приложения. На основании расчета стоимости тестов и с учетом построения дерева требований.
Доклад будет адаптирован под фронтенд-разработку, для демонстрации примеров будет использовано тестовое react-приложение.
В докладе будет много про построения дерева требований, про расчет на каком уровне надо проектировать тест, и много про тест-дизайн для разработчиков фронтенда.

Программный комитет ещё не принял решения по этому докладу

Новинки и хайпы

О чистой архитектуре сейчас много говорят. Да, книга Дяди Боба дает много идей, но при этом мало конкретики, и разработчикам непонятно как раскладывать по папкам файлы проекта, чтобы он соответствовал чистой архитектуре.
Я раскажу о своем опыте применения чистой архитектуры на практике. Покажу, какие нужно создать проекты, что поместить в каждый проект, как расставить ссылки между проектами. Также я расскажц как не только разработать качественную архитектуру проекта, но и мониторить и поддерживать ее качество на протяжении жизненного цикла проекта.
Фактически слушатели доклала получат шаблон, по которому можно будет делать свои проекты в соответствии с чистой архитектурой. Доклад не привязан к какому-то стеку технологий технологии и будет полезен всем разработчикам.

Программный комитет ещё не принял решения по этому докладу

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

Программный комитет ещё не принял решения по этому докладу

PWA(Progressive Web Applications) — это набор лучших практик для веба, которые подразумевают, что ваше приложение поддерживает оффлайн режим, имеет небольшой вес, вследствие чего быстро загружается, может быть установлено как standalone и предоставляет максимально комфортный пользовательский опыт. На данный момент, эти пункты соблюдаются в мобильных приложениях, а в случае с вебом все гораздо хуже.

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

Разрабатывать хорошее одно веб приложение под все платформы является наиболее выгодным решением по ряду причин:

1. Количество разработчиков зависит напрямую от сложности приложения, а не от количества платформ (отпадает необходимость в группе мобильной разработки).
2. Скорость разработки и простота коммуникации растет. Адаптировать текущее веб приложение для мобильной платформы можно за 2-3 недели, разработка нативного приложения под каждую платформу займет от 3-х месяцев.
3. Это стабильнее, чем внедрять гибридные решения. Например, cordova или кастомные обертки над webview могут порождать множество ошибок, на поиск и починку которых может уходить значительная часть времени разработчика.

Программный комитет ещё не принял решения по этому докладу

Микросервисы сегодня - это хайп, о котором говорят на каждой конференции. Складывается мнение, что старый добрый монолит - это плохо, а микросервисы - таблетка от всех болезней. Но так ли это на самом деле?
В своем докладе я расскажу о том, когда стоит предпочесть монолит микросервисам. А также о том, что монолиты бывают разные, это не обязательно большой комок грязи. Модульный монолит позволяет сделать такую же качественную изоляцию частей системы друг от друга, как это предлагают микросервисы, при этом сохранив простоту отладки, деплоя и работу в рамках одной транзакции. Да, писать хорошие монолиты тоже нужно уметь :)
В докладе я расскажу о том, когда обычному монолиту пора становиться модульным и как перейти от обычного монолита к модульному. И, конечно, о том, как выделять модули в отдельные сервисы.

Программный комитет ещё не принял решения по этому докладу

Простыми словами

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

Программный комитет ещё не принял решения по этому докладу

Все мы любим JS за его простоту и универсальность, но иногда его производительности не хватает, либо же существуют стандартные решения, и городить свои велосипеды не хочется. Мы могли бы использовать С/С++ код для решения таких задач. И экосистема JS дает нам такую возможность, нам на помощь приходят нативные модули для Node.js.
В этом докладе я разберу как создать, скомпилировать и опубликовать нативные модули, а так же их новый интерфейс. Я верю, что рано или поздно каждому JS разработчику понадобится нативный код для решения разнообразных задач, а также постараюсь развеять миф об их невероятной сложности.

Программный комитет ещё не принял решения по этому докладу

В докладе расскажу как и почему мы в Tinkoff.ru пришли к пререндеру главной страницы приложений, в чем отличие такого решения от SSR и CSR, сколько мы выиграли по "железкам", времени продуктовых верстальщиков и нужно ли оно вам. Разберем грабли, на которые мы наступили, чтобы вы их не повторили.
Выходя с доклада, вы оставите у себя знания как сделать пререндер вашего Angular приложения на node.js.

Программный комитет ещё не принял решения по этому докладу

Подходы к управлению большой инфраструктурой в разных ЦОД
IaC, тестирование инфраструктуры, автоматизация создания серверов

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

Программный комитет ещё не принял решения по этому докладу

Архитектура - совокупность важнейших решений об организации программной системы.
Как развивалась архитектура web-приложений?
Какие задачи и проблемы мы решали в прошлом? Какие решаем сейчас?
Эволюция web-приложений.
Сложность архитектуры.
Как архитектура влияет на бизнес?
Как бизнес влияет на архитектуру?
Какая основная ответственность лежит на архитектуре.
Сколько денег мы теряем на плохой архитектуре? И сколько экономим на хорошей?
Организация слоев архитектуры и добавление новых зависимостей.

Программный комитет ещё не принял решения по этому докладу

Компилятор TypeScript предоставляет более 90 флагов. 7 из них известны как "strict". 1 предназначен для того, чтобы управлять ими всеми.
В рамках доклада мы пробежимся по все 7 опциям, разберем, что они должны делать в теории. Рассмотрим код реальных приложений и случаи, когда "strict" режим может спасти нам множество нервных клеток.

Программный комитет ещё не принял решения по этому докладу

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

Дизайн система это не только набор UI компонентов, которые будут использовать разработчики. Библиотека компонентов - это всего лишь часть дизайн системы. Дизайн система - это еще и большое количество процессов, это изменения в работе команды/компании.

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

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

Программный комитет ещё не принял решения по этому докладу

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

Программный комитет ещё не принял решения по этому докладу

Доклад на тему как оптимизировать CI инфраструктуру, как найти проблемы в текущей инфраструктуре, советы по оптимизации Jenkins, процесса сборки и тестирования. Как мониторить свои достижения - мониторинг и KPI.

Программный комитет ещё не принял решения по этому докладу

Autoencoder (также — Автокодировщик) — специальная архитектура искусственных нейронных сетей, позволяющая применять обучение без учителя. Главная цель данной архитектуры - заставить нейронную сеть создать набор так называемых скрытых переменных (latent variables / latent space), управляя которыми, мы можем сделать очень много крутых вещей. Например:

- Убрать шумы из фотографии
- Super-resolution (увеличиваем разрешение фото)
- Добавить улыбку на грустное фото
- Обнаружение мошенничества
- Находить себя и других людей на фото

Все это и многое другое мы вместе с вами изучим на примере языка JavaScript и библиотеки TensorflowJS

Программный комитет ещё не принял решения по этому докладу

Добавить svg иконку на сайт просто. Это можно сделать в виде отдельного ресурса в спрайте. Можно заинлайнить в виде компонента. Можно воспользоваться css-masks или filter.
Спустя некоторое время, к нам приходит дизайнер и просит использовать другой размер или цвет в определенном месте. Мы добавляем какую-то логику, усложняем текущее решение и, возможно, приходим к инлайн варианту.
Этот способ очень удобен, и в современном вебе я встречал его на каждом 3-м сайте на React.
Главная проблема такого варианта: при SSR иконка не кешируется, и мы каждый раз гоняем от сервера к пользователю набор иконок на странице.
Мы сталкиваемся с задачей поддержки вариабельности иконок и их перфоманса.
В этом докладе мы разберем разные способы создания и оптимизации иконок. Окунемся в оверинжиниринг и попробуем ответить на вопрос: Только ли Ситхи возводят все в абсолют?

Программный комитет ещё не принял решения по этому докладу

Все знают, что тестировать надо. Это полезно по многим причинам:
* Тесты это документация
* Тесты гарантируют работу кода
* Тесты позволяют нам безопасно рефакторить код

И практически все могут написать тесты, но многие не пишут. Потому что это сложно, или написанны тесты не помогают ни сегодня ни потом, или дедлайны горят - не до тестов сейчас.
Но написать тесты, которые будут простыми, которые будут помогать в написании кода и не срывать дедлайны - задача сложная. Она становится ещё сложнее, если учесть, что нам приходится тестировать вёрстку - это вам не 2 JSON сравнить, здесь не работают простые подходы - вызову функцию, проверю результат.

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

Программный комитет ещё не принял решения по этому докладу

Реакту уже почти 9 лет. Мы все можем вспомнить мем, где каждый год на фронтенде случалась новая технология? На самом деле, технологии приходят и уходят, а идеи, заложенные в решениях продолжают жить.
Этот доклад — это рефлексия на тему реакта, его трейдофоф и работы.

Программный комитет ещё не принял решения по этому докладу

Как писать современные фронтенд-приложения с помощью React/Vue/Angular, но:

1 Писать код как удобно для задачи, а не как навязывает библиотека.
2 Не боятся обновлений мажорных версий зависимостей.
3 Не переписывать проект каждый раз под новую библиотеку и переиспользовать свой код.
4 Использовать самые эффективные для своей задачи решения.

Программный комитет ещё не принял решения по этому докладу

Взаимодействие

Доклад для тех у кого в компании удаленной работы нет, но хочется ее попробовать. Ориентирован в первую очередь на руководителей.
Remote был написан 7 лет назад, а у нас все было по старинке в офисе. Расскажу о том, как мы в Циан пришли к разным форматам удаленной работы, какие инструменты используем и какие профиты это нам даёт.
- Немного истории, что было у нас до этого
- Что мы смотрели при найме?
- Какие эксперименты проводили перед внедрением и их результаты?
- Какие инструменты используем?
- Что меняется для сотрудников?
- Что в итоге внедрили?
- Что это нам даёт?

Программный комитет ещё не принял решения по этому докладу

Как решить проблему, когда разработка бек-методов отстает от фронта, но на клиенте необходимо делать запросы и изменять интерфейс в соответствии с полученными данными? Как легко разрабатывать SPA, если вместо необходимых ответов на запросы вам приходит 404?
В своем докладе я продемонстрирую и сравню множество stub-серверов для различных технологий и расскажу, как быстро наполнить создаваемые заглушки фейковыми данными. Независимо от того, что у вас в команде: REST API, GraphQL, SSE или WebSocket, вы сможете запустить свой stub-сервер и наполнить его требуемыми данными за считанные минуты.

Программный комитет ещё не принял решения по этому докладу

Обзор текущей ситуации

Многие C# разработчики воспринимают LINQ как набор удобных extension-методов, которые помогают генерировать SQL запросы при использовании ORM и обрабатывать коллекции объектов в памяти. Но способен ли LINQ на большее?
Я покажу, как при помощи динамической генерации LINQ выражений можно автоматизировать создание запросов к базе при помощи фильтров, что экономит огромное количество времени и сил при разработке админок с их бесконечными справочниками.
Также многие слышали о Dynamic LINQ, но мало кто использовал этот инструмент на практике. Я расскажу о своем опыте использования Dynamic LINQ и задачах, которые он позволяет решать. Также я покажу, какие существуют современные аналоги Dynamic LINQ.
Наконец, я покажу как создавать собственные extension-методы, которые можно использовать внутри Extression Tree. И расскажу об удобном инструменте LinqPad для удобного и наглядного конструкирования LINQ запросов.

Программный комитет ещё не принял решения по этому докладу

В 2019 году на сессии WWDC компания Apple представила фреймворк SwiftUI для создания и разработки приложений с декларативным UI. Данная технология анонсирована как альтернатива и, возможно, замена разработке c помощью InterfaceBuilder. Среди достоинств SwiftUI заявлена быстрота и простота создания кода приложения. Но действительно ли фреймворк готов к работе, и насколько он удобен? В своем докладе я предлагаю рассмотреть использование SwiftUI в разработке полноценного приложения iOS c чистой архитектурой. Какие решения предлагает сама платформа, и как наименее сложно адаптировать к новому подходу существующую бизнес-логику проекта.

Программный комитет ещё не принял решения по этому докладу

Долгое время мы разрабатывали web-приложения, которые используют 3rd-party куки, и считали что такие куки — неотъемлемая часть Интернета, и что они будут работать всегда. Но времена меняются, и разработчики браузеров всё активнее начинают ограничивать или вовсе блокировать работу такие кук. Из-за этого страдает не только работа всяческих систем отслеживания пользователей, но и более полезные вещи.
Например, различные виджеты и приложения, встраиваемые с других сайтов. Работа разных SDK авторизации, например именных кнопок входа, как у Mail.ru, ВКонтакте и Facebook. Всё это находится под угрозой.
Я хочу рассказать вам:
- что такое 3rd-party куки и как они используются в современных Интернет-сервисах;
- как работают различные провайдеры авторизации, такие как Mail.ru, ВКонтакте, Facebook и как они используют 3rd-party куки;
- что означают и как отразятся на работе Интернета новые изменения, касающиеся работы 3rd-party кук;
- как реализовать внешнюю авторизацию на своём сервисе без использования 3rd-party кук;
- какие планы у разработчиков браузеров по дальнейшему ограничению использования 3rd-party кук в web-сервисах.

Программный комитет ещё не принял решения по этому докладу

Все, кто знаком с DDD, слышали о паттерне Спецификация, который позволяет инкапсулировать правила бизнес-логики и комбинировать их между собой.
Однако с тех пор, как Эванс написал об этом паттерне в своей легендарной синей книге, мир разработки ПО ощутимо изменился. Теперь спецификация используется не только для проверки сущностей на соответствие правилам бизнес-логики, но и для генерации SQL.
Немало копий сломано в дискуссиях о лучшей реализации этого паттерна: использовать Generic-спецификацию или создавать отдельные классы для каждой конкретной спецификации, использовать ли специальные And и Or спецификации для комбинации спецификаций или комбинировать их операторами языка программирования.
И конечно, поговорим о правильном и неправильном использовании спецификации, стоит ли превращать спецификацию в фильтр и использовать для решения задач типа постраничной выборки. И вообще, стоит ли использовать спецификацию если мы хотим только генерировать SQL, а валидацию бизнес-сущностей делать не планируем.

Программный комитет ещё не принял решения по этому докладу

Kubernetes предлагает набор функций, применение которых в правильной сочетании позволяет получить multi-tenancy (мультиарендный) кластер с достаточным уровнем по обеспечению безопасности. Но далеко не всегда очевидно как соотнести конкретные требования по multi-tenancy с доступными возможностями и конфигурацией kubernetes. Это часто подталкивает к развертыванию отдельного кластера для команды или проекта, что сводит на нет все преимущества от общего кластера. В этом выступлении будет дана классификация multi-tenancy моделей, доступных для запуска с Kubernetes сегодня, а так же показано как настроить существующие опции по безопасности и политикам чтобы реализовать описанное модели. Реальным примером послужит нам опыт по построения фабрики enterprise уровня (couchbase, kafka и flink) с поддержкой multi-tenancy на базе Kubernetes кастера в облачном провайдере. Поделимся своими результатами и проблемами с которыми мы столкнулись в процессе внедрения и последующей эксплуатации.

Программный комитет ещё не принял решения по этому докладу

Научпоп

Ментальные модели – это способы понимания окружающей действительности, существующие в уме человека и направляющие его действия​. Ментальные модели как облегчают нам жизнь, так и ограничивают наши действия. Для аналитика и менеджера проектов важно знать, как работают ментальные модели, чтобы самому не натыкаться на проблемы, развиваться, и понимать, почему люди так думают или действуют.

В докладе пойдет речь о работе ментальных моделей, а именно:
1. Как работают ментальные модели?
2. Треугольник Канижа и другие трюки нашего мышления.
3. Механизмы работы ментальных моделей.
4. Причины искажения опыта.
5. Использование системного мышления для эффективной работы.
6. Что такое ограничивающие ментальные модели?
7. Как закрепить системные ментальные модели?

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

Программный комитет ещё не принял решения по этому докладу

Личная продуктивность

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

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

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

Программный комитет ещё не принял решения по этому докладу

Что такое servant leadership? Чем этот метод управления отличается от обычного? Почему это работает? Что делают (и не делают) руководители, выбравшие метод руководства servant leadership? И в конце концов, как вообще слуга может быть лидером?
Я перешел на servant leadership 8 лет назад и ни разу не пожалел об этом. Мне удалось добиться повышения мотивации, производительности и самое главное достижения бизнес целей компаний, в которых я работал. Хочу поделиться с вами своим опытом, а также привести примеры из практик ведущих IT компаний.

Программный комитет ещё не принял решения по этому докладу

IT в смежных областях

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

Программный комитет ещё не принял решения по этому докладу

* Жил-был МойСклад на Java и GWT (тогда это было модно)
* И однажды появилась Касса МойСклад
* И стала она на ScalaJS и scala-react (тогда это было модно)
* И жила она так до тех пор, пока не стало совсем сложно
* И посмотрели мы на то, что получилось за годы разработки, и начали думать
* Думали-думали, и решили переписать
* ??? [тут начинается хардкор про то, как спланировать рефакторинг, придумать новую архитектуру, определить реперные точки, спланировать спринты, подготовить инструменты]
* PROFIT

Программный комитет ещё не принял решения по этому докладу

Внедрение принципов самоуправления — задача длительная, сложная и вообще не возможная:

А) в нашей стране;
Б) в нашей компании;
В) с нашими людьми;
Г) ... дальше придумываем сами.

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

Программный комитет ещё не принял решения по этому докладу

Backend

Иногда в своей практике мы сталкиваемся с очень странными вопросами: "Найти все реки длиннее k км." или "Найти все города-миллионники"... И вроде где-то ответы должны быть, но как их получить в json?! Например, выгрузить из Wikipedia. У неё есть API, а также специальный язык запросов SPARQL, предназначенный для получения структурированной информации.

Программный комитет ещё не принял решения по этому докладу

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

Помимо этих вопросов, я расскажу о том, как мы в Контуре решали проблемы, с которыми столкнулись при интернационализации сервисов:
- тонкости перевода: падежи, контекстозависимость
- процесс взаимодействия с переводчиками
- localization-friendly разработка
- как не задерживать релиз из-за переводов
- как можно масштабировать это в большой компании
- почему стало сложно переводить сроки вида "уважаемый <user_name>, вы должны перейти <a href=#> style="color: blue">в настройки</a>", и что с этим делать

Программный комитет ещё не принял решения по этому докладу

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

Программный комитет ещё не принял решения по этому докладу

В этом докладе обсудим особенности и подходы к разработке приложений с серверным рендерингом, поговорим о том, как это работает в одном мире с микросервисами и CI/CD, а так же сравним реализации самых популярных фреймворков.
Как разрабатывать SPA на любимом фреймворке не жертвуя SEO? Как сделать так, чтобы каждый занимался своим делом - фронтендеры делали UI, а бэкендеры разрабатывали бизнес-логику и API? Как перевести большое web-приложение с legacy кодом на SPA? Эти и многие другие проблемы можно решить с помощью SSR.

Программный комитет ещё не принял решения по этому докладу

Ошибки с которыми столкнулись разработчики (Ruby, Golang, Python) при масштабировании финтех стартапа в странах Азии.

Программный комитет ещё не принял решения по этому докладу

Много слухов ходит, про загадочный и суровый сайт в компании Одноклассники. Многие слышали, что там все делается на Java. Даже фронтенд.

А что же на самом деле там происходит?

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

Я расскажу о том:
- Почему мы не взяли NodeJS, Kotlin, Nashorn и другие решения
- Почему был выбран GraalVM
- Как работает JS в GraalVM и какие это дает преимущества
- Как собрать и запустить React в такой конфигурации
- Какие появляются задачи и способы их решения
- Как можно начать постепенную миграцию, огромного проекта

Программный комитет ещё не принял решения по этому докладу