Владелец компании ByndyuSoft, практикующий программист в стеке. NET-технологий. Ведет блог по применению Agile и Lean, лучших практик в индустрии, принципов и паттернов разработки ПО. Организатор конференции. NETconf, которая проходит два раза в год в Челябинске. Преподаватель курсов по Технологии программирования в ЮУрГУ и ЧелГУ.
Типовые проекты, где в центре системы стоит реляционная БД, перестают удовлетворять современным требованиям рынка ПО. В норму входит использование очередей, поисковых движков, NoSQL решений, облачных технологий. Всё это требует перехода от «классической» архитектуры к дроблению системы на набор низкосвязанных компонентов, взаимодействующих друг с другом через сообщения или интерфейсы.
Мы рассмотрим примеры типовых подходов и инструментов, которые сейчас актуальны в мире разработки масштабируемых систем.
Вводные ссылки с примерами:
Integration Patterns: Shared DB, state machine и очередь сообщений
Integration Patterns: Репликация и очередь сообщений
Тезисы:
Доклад в первую очередь ориентирован на пользователей Sphinx. В нем будут освещены некоторые популярные модели использования сервера. Новичкам будем интересно получить представление о поисковом движке, а людям, уже знакомым со Sphinx, будет интересно услышать о последних изменениях в нем.
Занимается внедрением средств управления конфигурацией в течение последних трех лет и считает, что их применение — наиболее разумный и перспективный способ управления окружениями, состоящими из десятков серверов.
Необходимость использования средств управления конфигурацией в процессе эксплуатации сложных веб систем быстро становится очевидной, тем не менее, использование различных средств управления конфигурацией имеет свои нюансы и тонкости. Разные системы управления конфигурацией создавались с учетом различающихся требований их создателей, и они по-разному решают возложенные на них задачи. Доклад посвящен обобщению практического опыта применения четырех средств управления конфигурацией — Chef, Puppet, SaltStack и Ansible в гетерогенных окружениях разного размера, построенных на базе различных UNIX-подобных платформ, от FreeBSD и Linux до SmartOS.
Целевая аудитория доклада: веб-разработчики, инженеры отделов эксплуатации.
Ее примерный уровень: средний.
Highload-разработчик в команде flysoft с 2010 года. Занимается разработкой высоконагруженных сервисов.
Я расскажу про то, как выполнять тяжелые задачи, требующие значительного количества серверных ресурсов и времени так, чтобы это оставалось незаметным для пользователя. Какую архитектуру выбрали мы, каким инструментом пользуемся для решения асинхронных задач в iFunny. Поделюсь опытом: какие трудности были встречены на пути перехода к асинхронным задачам, какие решения выбрали и как мы видим наше светлое будущее.
Доклад будет интересен всем, кто интересуется сложными распределенными системами.
«Работаю с большими данными и технологичями их обработки с 2010 года, сначала в отделе рекламы Яндекс-Директ, затем с данными ЦЕРНа».
Для эффективной борьбы с большими данными одних технологий недостаточно. Необходим правильный настрой по отношению к ним, позволяющий видеть перспективы и особенности их использования. В данном рассказе предлагается точка зрения на совокупность проблем больших данных и их возможные пути разрешения. Рассказ построен на конкретных примерах из личной практики.
Целевая аудитория доклада, ее примерный уровень: аналитики, менеджеры ИТ, CTO.
«Занимаюсь профессиональной разработкой ПО более 10 лет, из которых пять посвятил разработке игр. На платформе, в создании которой я активно принимаю участие, вышли несколько игр. Участвовал в различных OpenSource проектах, вёл мастер-классы по ряду аспектов разработки ПО. Был докладчиком на специализированных конференциях. Уверенно владею массой „разношёрстных“ технологий как на сервере, так и на клиенте. Сфера активных интересов — создание игр для мобильных платформ и консолей с эффективным использованием возможностей устройства».
Надежный обмен данными в гетерогенной среде, между разными платформами и технологиями является одним из ключевых моментов разработки сложных систем. Во время обмена данные преобразуются в некоторый промежуточный формат совместимый между платформами. Преобразование в подобный формат и из него — крайне рутинная и подверженная ошибкам работа.
Метаописание данных неким декларативным языком с последующей автогенерацией типизированных структур облегчает жизнь разработчику. Снимает с него необходимость задумываться о промежуточном формате, о правильном порядке полей, а типизированность гарантирует выявление ошибок еще на этапе компиляции кода.
В докладе будет рассмотрено несколько подобных решений, их плюсы и минусы. Также будет рассмотрен с практической стороны наш собственный формат метаданных, используемый нами на протяжении более 5 лет.
Целевая аудитория:
Ограничений нет, но в большей степени разработчики, имеющие уже определенный опыт разработки разнородных систем или приступающие к подобной задаче.
Студенты и выпускники кафедры «Информационная безопасность систем и технологий» Пензенского государственного университета, организаторы IBST.PSU CTF I и IBST.PSU CTF II. Разработчики и админы, линуксоиды и виндузятники — все работают в разных областях и имеют свои предпочтения, но всех нас объединяет интерес к практическим аспектам информационной безопасности.
В рамках одного доклада мы расскажем, во первых, про наиболее популярные уязвимости веб-приложений. Также мы расскажем про такие классические вещи, как переполнение буфера (на стеке (stack) и на куче (heap), атаки на формат строки и не только. Многие про это слышали, но не многие знают, как этим может воспользоваться злоумышленник. Будет рассмотрена эксплуатация описанных уязвимостей без достаточной информации о приложении, принципы работы и написания шеллкода.
Будут функционировать два стенда, где все желающие могут попробовать свои силы и почувствовать себя настоящими хакерами.
Доклад будет интересен студентам и молодым разработчикам.
«Я фронтендер, сейчас живу в Ульяновске и работаю в Undev.
Почти 6 лет участвую в разработке самых разнообразных веб- и не только проектов. Люблю котиков, твиттер и всё новое».
«В докладе я расскажу, как автоматизировать рутинные задачи с помощью инструмента grunt. Сделаю обзор современных крутых штук для верстальщиков и их реализацию в модулях grunt. Затрону управление зависимостями и frontend-scaffolding».
Презентация доклада
«Работаю программистом в компании «Моё дело». Приобрел значительный опыт в разработке веб-приложений в стеке ASP. NET MVC. Прошел все этапы эволюции клиентского кода: от «макарон» до mvc подобных фреймворков. Ярый антогонист бездумного кодинга и халатного отношения к построению клиентской части приложения.»
Мысли о том, как можно сделать клиентскую разработку более простой.
Как можно просто расширять приложение.
Как лучше подойти к вопросу построения JavaScript приложения.
Философские заключения по столь нестандартной теме.
Доклад посвящен новым трендам развития браузерных технологий — внедрению в браузеры поддержки комплекса спецификаций Web Components — Shadow DOM, HTML Imports, Custom Elements, HTML Templates.
Будут кратко рассмотрены предпосылки и история создания комплекса спецификаций, их назначение, приведены примеры использования, рассмотрены плюсы и минусы внедрения, будет дан краткий обзор существующих библиотек, использующих эти технологии.
Подробнее о тезисах доклада
Презентация доклада
Работает в Mail.Ru с 2010 года, занимается разработкой высоконагруженных сервисов.
За последнее время очень сильное развитие получили мобильные приложения. Многие из нас используют свои любимые приложения каждый день. Push-уведомления являются очень важным инструментом для мобильных приложений. Рассылка push-уведомлений большому количеству пользователей является непростой задачей. В своем докладе расскажу о:
Доклад будет интересен всем, кто занимается разработкой сервисов для мобильных приложений.
Занимаюсь разработкой веб-приложений с 2005 года, мониторингом и оптимизацией доступности и производительности веб-приложений — с 2011 года.
Производительность имеет значение: производительность сайта напрямую влияет на успешность проекта и прибыль.
Что может быть измерено, может быть улучшено: основные показатели (метрики) производительности для веб-приложений: доступность и время отклика.
Почему нельзя доверять усредненным показателям? Процентили. Показатель удовлетворенности пользователей Apdex.
Тестируем производительность. Инструменты нагрузочного тестирования: ab, tsung, jmeter, blazemeter. Регрессионное тестирование производительности.
Следим за нагрузкой и производительностью на продакшен серверах. Инструменты: RRD, Graphite, NewRelic.
Из чего складывается производительность сайта: сервер + сеть + браузер.
Оптимизируем время загрузки страницы. Инструменты: YSlow, Google Page Speed, GTmetrix. Отдача статики с помощью Nginx, используем CDN, переносим сервера ближе к конечным пользователям.
Оптимизируем обработку запросов на сервере. Реверс-прокси. Php-fpm. Производительность СУБД. Кэширование. Стратегии обновления кэша. Асинхронность. Мониторинг фоновых процессов и очередей.
Целевая аудитория: обзорный доклад для студентов и начинающих разработчиков веб-приложений
Сферы интересов:
социальные и мобильные приложения, java, flash/air, android, игровой дизайн, алгоритмы, игровые механики.
Тезисы:
Целевая аудитория:
все, кому интересна разработка игр, с любым уровнем вовлеченности в индустрию.
«Расскажем о нашем опыте перехода к событийной модели при разработке одного из проектов заказчика. О том, какие подходы использовали, с какими проблемами столкнулись, как с ними боролись и что в итоге получили. А также о том, как бы сделали подобный проект, уже имея текущую экспертизу :)
Целевая аудитория: frontend-разработчики, познавшие боль при реализации сложных интерфейсных решений на базе коллбеков; использующие JS в качестве инструмента для разработки, а не только для подключения готовых скриптов».
«Создаю инженерную культуру компании и несу в массы XP, DDD, DevOps. Евангелист ментального программирования. Ruby ниндзя. Докладчик на РИТ, devconf и других конференциях. Последние годы много занимаюсь обучением и немного преподаванием. Соорганизатор конференции nastachku.ru. В свободное время пишу игровую систему на erlang/js для нестандартного обучения программированию.
В 2011 году, после 4 лет работы программистом в Москве, я вернулся в родной город чтобы создать собственную компанию. В 2012 она была трансформирована в филиал undev.ru. Сейчас в компании трудится более 40 программистов и в следующем году мы планируем вырасти в 2 раза».
«В этом докладе я расскажу о том как мы подбираем команду и прокачиваем скиллы, приобщаем к использованию экстремального программирования и практик devops, справляемся с проблемами роста и распостраняем знания в команде, формируем систему ценностей и мотивируем, проводим code review и воспитываем лидеров».
Уровень аудитории: новички, практикующие, эксперты
Направления: Engineering & Quality, Agile Process, Team
«Я верю, что автоматизация дает новые возможности для развития. Создавая автоматизированные системы, мы открываем путь прогрессу и делаем мир лучше. Проектирование архитектуры реальных систем, особенно в заказной разработке, — интереснейший процесс поиска баланса между общими архитектурными подходами и реализацией специфических требований конкретного проекта. Я разрабатывал архитектуру для множества систем и нескольких фреймворков.
Я верю в эффективность командной работы и профессиональных сообществ и категорически не согласен рассматривать людей как ресурсы. Командная работа необходима и в проектировании архитектуры, вопреки распространенному мнению, что этим должен заниматься единоличный творец. По моему опыту, лучшие архитектуры создавались совместно сильными архитекторами, хотя договариваться было не просто. Я внимательно слежу за трендами развития отрасли, включая управление проектами, и стараюсь формировать целостную картину. Мне нравится делиться своими взглядами в профессиональных сообществах, выступая на конференциях и работая в программных комитетах конференций SECR и Analyst Days».
Domain Driven Design (DDD) — подход, предложенный Эриком Эвансом для эффективного проектирования и реализации приложений в сложных предметных областях. Основой его является создание модели будущей системы на едином языке (ubiquitous launguage), разрабатываемом для проекта и обеспечивающим надежные коммуникации между всеми участниками проекта. Модель, описанная на этом языке, согласуется с бизнес-заказчиком и верифицируется им, а затем отражается в реализацию системы с использованием типовых шаблонов, так что элементы и конструкции модели могут быть прослежены в коде. Таким образом обеспечивается соответствие поведения готовой системы потребностям заказчика, без чего сложные IT-проекты едва ли могут стать успешными.
В докладе будет дан общий обзор DDD на основе многолетнего успешного опыта его применения для разработки приложений — от построения модели с формированием единого языка до выработки шаблонов реализации типовых элементов модели.
Опыт: более 10 лет обслуживания и администрирования сетей и систем в интернет-провайдерах, малом бизнесе и высоких нагрузках.
Тезисы:
Работа системного администратора интересна и полна неожиданностей. До какого-то момента это приносит радость и удовлетворение. Но периодически специалист обнаруживает, что стоит в тупике, и не знает, куда идти дальше. В своем докладе я постараюсь построить карту таких «тупиков» и возможных путей выхода из них.
Целевая аудитория доклада, ее примерный уровень:
Доклад рассчитан как на тех, кто еще только выбирает свое направление в IT, так и на системных администраторов, внезапно обнаруживших «потолок» своего роста.
Сфера профессиональных интересов: управление проектами, Agile
Информация об организации ИТ-мероприятий:
Лидер Таганрогского сообщества разработчиков
devcommunity.it
vk. com/devcommunity
Конференции, в которых был докладчиком:
— BORSCH
— Марафон разработки IT-проектов «47 hours»
— Урожай технологий Microsoft
— Windows Phone Launch
«Расскажу о том, как мы внедряли Agile с нуля и формировали команды на одном из ключевых проектов нашей компании (продуктовая команда — США, команда разработки, команда поддержки — Россия). С какими сложностями столкнулись, что для себя полезного почерпнули, как выглядят процессы сейчас и как планируем развиваться дальше в плане организации работ».
Аудитория: менеджеры проектов, Scrum-мастера
С 1994 года популяризирует открытые технологии и UNIX-решения. Работал экспертом по ОС Solaris в Sun Microsystems и Oracle, выступал на конференциях в 11 странах. Состоял в международной группе энтузиастов проекта OpenSolaris. Автор двух книг по администрированию UNIX и Solaris. В настоящее время работает в JetBrains экспертом по технологиям, основные интересы — среды разработки и серверные инструменты разработчиков.
Любая система трекинга заявок, будь то JIRA, Redmine или YouTrack, умеет решать более-менее одинаковые задачи. В постоянно меняющемся мире лучше выживают те организмы, которые умеют быстрее приспосабливаться. Гибкость YouTrack придают два его уникальных свойства: во-первых, все правила, количество, названия, и типы полей в любом проекте полностью настраиваются, во-вторых, механизм workflow позволяет выполнять широкий спектр действий по таймеру или изменению issue. В докладе будет показано, как приспособить YouTrack к практически любым проектам, сводимым к работе с задачами или заявками, причем не только в разработке программного обеспечения, но и в ЖКХ. Будет затронута и тема интеграции с системами непрерывной интеграции (CI), почтой и мессенджерами.
«Руковожу разработкой и поддержкой проектов 2 года, бэкграунд: программирование, тестирование».
Тезисы:
Целевая аудитория доклада, ее примерный уровень:
Интересы: новые интернет технологии, стартапы, SMM, интернет-маркетинг, 3D печать, цифровое производство.
В настоящее время в команде Grrow — интернет-сервис по изучению и отслеживанию путей распространения информации в Интернет.
В прошлом: руководитель Фонд поддержки предпринимательства (10 лет), руководитель Бизнес-икубатор «Импульс» (3 года) Заречный, сооснователь проекта myattn.com, moevnimanie.ru (2 года Пенза- Москва).
Опыт разработки интернет-сервисов с нуля, привлечения инвестиций в стартап, продвижения в интернет.
Побывал в Кремниевой долине с проектом myattn.com.
Проект Grrow. me стартовал год назад на конференции Secon 2013.
Проект основан на отслеживании путей распространения информации в сети интернет.
За год мы много что перепробовали, открыли удивительные возможности применения технологии, которую мы используем — от привлечения соцтраффика, до управления виральностью контента.
Тезисы:
ЦА:
Уровень аудитории — знающие, как делать проекты, пытавшиеся что-то продвигать в Интернете.
Обзор основных методик и методических инструментов, которые позволяют основателям стартапов по всему миру повышать свои шансы на успех в условиях экстремальной неопределенности. Ни один бизнес-план в таких условиях не выдерживает первой встречи с потребителем (клиентом). Продукт предпринимателя — не веб приложение или осязаемый предмет, а масштабируемая, повторяемая и прибыльная бизнес-модель.
Мастер-класс поможет ответить на вопросы:
Цели мастер-класса:
Программа мастер-класса:
«Довольно часто, начиная стартап, его создатели отталкиваются от продукта, работая по модели Product Developement.
Между тем практически все успешные технологические стартапы отталкиваются от запросов пользователей, развиваясь по модели Customer Development.
В чем достоинства и недостатки этих двух моделей развития стартапа я и попробую рассказать».
Тезисы:
Интенсивная образовательная программа для предпринимателей, занимающихся бизнесом в сфере интернета, облачных сервисов и разработки программных продуктов.
Курс основан на материалах ведущих мировых бизнес-школ, среди которых MIT Sloan School of Managment, Harvard Business School и многие другие.
Start in Garage охватывает такие темы, как:
В результате, начинающие компании быстрее перейдут в стадию роста, а уже работающие — получат мощный импульс в развитии.
Start in Garage доказал свою эффективность во многих странах мира, более 1000 стартапов стали успешнее и начали зарабатывать после тренинга.