Agile Vector - внедрение agile разработки в РайффайзенбанкеAlexey Deryushkin
Доклад на 60 минут с пошаговым описанием процесса внедрения гибких методологий разработки в окружении, работающем по «водопаду», проблем такого точечного внедрения и их способов решений на примере нескольких связных проектов, а также влияние такого внедрения на IT банка в целом. Затрагиваются все темы, связанные с постановкой производства ПО -- от технических практик до образа мышления, на примерах из жизни. История успеха длинной в два года, которая не собирается завершаться.
Менеджерские школы учат, как готовить проекты правильно. А реальность говорит про 30% успешного завершения проектов. Чувствуете проблему?
Этот доклад про опыт. Про множество подходов, которые смогут помочь ускорить разработку. Никакой уличной магии нет, есть множество рецептов, приводящих к результату, который даёт на выходе работающий продукт и радует заказчика. Это факторы планирования, технологий, психологии, презентации, приоритезации и многие другие.
Приготовьтесь к изменениям!
Agile Vector - внедрение agile разработки в РайффайзенбанкеAlexey Deryushkin
Доклад на 60 минут с пошаговым описанием процесса внедрения гибких методологий разработки в окружении, работающем по «водопаду», проблем такого точечного внедрения и их способов решений на примере нескольких связных проектов, а также влияние такого внедрения на IT банка в целом. Затрагиваются все темы, связанные с постановкой производства ПО -- от технических практик до образа мышления, на примерах из жизни. История успеха длинной в два года, которая не собирается завершаться.
Менеджерские школы учат, как готовить проекты правильно. А реальность говорит про 30% успешного завершения проектов. Чувствуете проблему?
Этот доклад про опыт. Про множество подходов, которые смогут помочь ускорить разработку. Никакой уличной магии нет, есть множество рецептов, приводящих к результату, который даёт на выходе работающий продукт и радует заказчика. Это факторы планирования, технологий, психологии, презентации, приоритезации и многие другие.
Приготовьтесь к изменениям!
Boost Mode: что делать, чтобы выпустить игру в срок - и минимизировать риски ...DevGAMM Conference
В игровой индустрии встречаются ситуации, когда игру необходимо выпустить в установленный срок - при этом минимизировав риски, и не забывать про качество продукта.
В этой презентации - Заметки о нашем опыте и о тех методах, что работают (или не работают) для ускорения срока разработки.
В длительной перспективе ретроспективы – самая важная часть гибких процессов. Но очень часто у команд не получается запустить процесс непрерывного улучшения, либо через некоторое время этот процесс обрывается, когда команда думает, что все проблемы решены. Я расскажу не только теоритическую часть, которая позволит преодолеть эти проблемы, но и дам несколько десятков примеров конкретных практик, которые применяются на эффективных ретроспективах. Доклад рассчитан, как на начинающих ретроспективы, так и практиков гибких методологий.
Заказчики и общение с ними, распределение рабочего времени и совмещение должностей, работа под психологическим давлением, и многое другое, что встретилось за время двухлетней работы в аутсорсе.
Зачем нужны ретроспективы и как их проводить? Основные отличия ретроспектив в различных фреймворках, например, Scrum или Kanban, рекомендации по продолжительности, наполнению, советы по каждому этапу ретроспективы.
1. Выученные уроки - “(Не) Делай как мы, делай лучше нас”.
2. Система обратной связи и поощрений сотрудников на основании их Самооценки.
3. Акция - единовременная сгруппированная мотивация команды в игровой форме к концентрированному достижению цели.
Что делать в ситуации, когда несколько команд работают над одним проектом или продуктом? Возникают зависимости. Мы рассмотрим как ими можно управлять и как повысить общую эффективность процесса.
Выступление на коференции AgileDays'15 20 марта
7 Способы проведения ретроспектив для анализа и улучшения процессаMagneta AI
Ретроспектива играет большую роль в развитии команд, работающих в Agile проектах. В большинстве случаев, успех проекта зависит от того, насколько команда умеет совместно выявлять проблемы и улучшать свою работу от итерации к итерации.
Мы рассмотрим различные практики проведения ретроспектив, обсудим часто возникающие вопросы в организации работы команды и коллективного принятия решения.
Boost Mode: что делать, чтобы выпустить игру в срок - и минимизировать риски ...DevGAMM Conference
В игровой индустрии встречаются ситуации, когда игру необходимо выпустить в установленный срок - при этом минимизировав риски, и не забывать про качество продукта.
В этой презентации - Заметки о нашем опыте и о тех методах, что работают (или не работают) для ускорения срока разработки.
В длительной перспективе ретроспективы – самая важная часть гибких процессов. Но очень часто у команд не получается запустить процесс непрерывного улучшения, либо через некоторое время этот процесс обрывается, когда команда думает, что все проблемы решены. Я расскажу не только теоритическую часть, которая позволит преодолеть эти проблемы, но и дам несколько десятков примеров конкретных практик, которые применяются на эффективных ретроспективах. Доклад рассчитан, как на начинающих ретроспективы, так и практиков гибких методологий.
Заказчики и общение с ними, распределение рабочего времени и совмещение должностей, работа под психологическим давлением, и многое другое, что встретилось за время двухлетней работы в аутсорсе.
Зачем нужны ретроспективы и как их проводить? Основные отличия ретроспектив в различных фреймворках, например, Scrum или Kanban, рекомендации по продолжительности, наполнению, советы по каждому этапу ретроспективы.
1. Выученные уроки - “(Не) Делай как мы, делай лучше нас”.
2. Система обратной связи и поощрений сотрудников на основании их Самооценки.
3. Акция - единовременная сгруппированная мотивация команды в игровой форме к концентрированному достижению цели.
Что делать в ситуации, когда несколько команд работают над одним проектом или продуктом? Возникают зависимости. Мы рассмотрим как ими можно управлять и как повысить общую эффективность процесса.
Выступление на коференции AgileDays'15 20 марта
7 Способы проведения ретроспектив для анализа и улучшения процессаMagneta AI
Ретроспектива играет большую роль в развитии команд, работающих в Agile проектах. В большинстве случаев, успех проекта зависит от того, насколько команда умеет совместно выявлять проблемы и улучшать свою работу от итерации к итерации.
Мы рассмотрим различные практики проведения ретроспектив, обсудим часто возникающие вопросы в организации работы команды и коллективного принятия решения.
Socio-Economic Benefits of the World Heritage Status and Partnerships of Local Actors
Carola Neugebauer (Institute of the Regional Geography, researcher, Leipzig)
International NGOs forum «Protection of World Heritage Properties» June 22-24, 2012 St.Petersburg, Russia
Небольшая порция информация о том как легко добраться до данных приложений, несмотря на то что их разработчики совсем этого не хотят.
И несколько советов по предотвращению этого.
South Fest 2014. 6.09.14
Рассматривается модель предпринимательского образования, построенная на соединении практико-ориентированного подхода к обучению предпринимательству с традиционным высшим образованием. Эта модель может быть реализована в виде факультативного цикла дисциплин по выбору студентов, который добавляется к обычным направлениям и профилям образования. В основе такого факультатива лежит практическая формула: «стартап как дипломный проект»
Автоматизация "мобильных" сотрудников с помощью Android приложений и 1Сtabtabus
Как направить потенциал современных мобильных устройств (коммуникаторы, планшеты, телефоны) на развитие собственного бизнеса. В докладе расскажем о готовых решениях по автоматизации сотрудников курьерских служб и служб доставок, замерщиков окон, дверей, потолков, доставщиков пиццы и продуктов питания. Рассмотрим важный вопрос подключения мобильных устройств в единую информационную систему предприятия на базе 1С с целью дополнительного контроля сотрудников, оптимизации работы предприятия и привлечения новых клиентов.
Это программный комплекс для автоматизации работы
торговых представителей, занимающихся сбором
информации в торговых точках, аналитиков, операторов,
экспедиторов, супервайзеров, менеджеров и
руководителей бизнеса, который объединяет в одно
целое работу каждого из сотрудников,
а также берет на себя решение механических задач.
Solit 2014, Как создать продукт, как запустить стартап?, Граков Алексейsolit
Граков Алексей, Минск. Директор компании Анталика, которая является официальным представителем Unisender в Беларуси www.unisender.by
«Как создать продукт, как запустить стартап?». IT секция. Бизнес-отделение. Для всех уровней подготовки.
- определение ниши
- выявление ключевых потребностей
- специализация в нише
- тестирование идей (проверка гипотез)
- организация продажи через сайт
- комплексный подход к организации продаж через сайт
- стратегии email-маркетинга в продажах через интернет
В настоящее время существуют три подхода к мобильной разработке: 1. Native, 2. Hybrid, 3. Cross-platform. У каждого из них есть свои плюсы и недостатки, поэтому в ситуации, когда есть возможность выбора или есть возможность оказать влияние на выбор заказчика проекта, необходим аргументированный подход.
В докладе будут рассмотрены основные решения, представленные на рынке в настоящее время (в т.ч. Xamarin 4 и ReactNative), а также даны рекомендации по выбору оптимального подхода в зависимости от особенностей проекта.
Автор доклада: Виктор Котов — iOS разработчик, компания Аркадия. В ИТ-индустрии более 20 лет, начинал с разработки специализированной САПР, работал менеджером проектов, последние пять лет занимается мобильной разработкой (бизнес-приложения, social networking).
Проектирование Программных Систем. Лекция 01Dima Dzuba
Лекция рассказывает о базовых принципах построения программного обеспечения. Проводится сравнение гибких (Agile) и водопадных методологий разработки программного обеспечения.
Software craftsmanship фиксит проблемы AgilePavel Veinik
На 6м митапе мы подойдем к проблеме говна со стороны команды и процессов, а не со стороны технологий и архитектуры, и рассмотрим поближе, чем и как нам могут помочь принципы Software Craftsmanship. Мы увидим, что суть всех процессов - это коммуникации, а суть коммуникации - это настроенные каналы передачи информации. Мы рассмотрим, как настраивать эти каналы передачи информации, и увидим, что процессы - это отношения между людьми, прописанные на бумаге.
"Этот код плохой, его нужно переписать". Слышали? Как обосноватьMaksym Bezuglyi
Как на языке бизнеса доказать необходимость переписывания кода. Как бизнес может объяснить инженерам, что этого делать не нужно, либо как сделать это правильно с перспективы бизнеса.
Разработка сайта это как война: череда сражений за победу. А в современной войне есть три важные вещи: разведка, артобстрел и авиация. Небесные высоты мы оставим дизайнерам, а поговорим о разведчиках и об орудиях дальнего боя. То есть о системных аналитиках и о проектировании сайтов.
Какие вопросы встают перед руководителем разработки? Что нужно анализировать для успешного решения задач и запуска проектов? Как меняются вопросы, когда тим-лид дорастает до руководства департаментом?
OdessaJS 2017: Groupware Systems for fun and profitMax Klymyshyn
This document discusses synchronization techniques for groupware systems, including operational transformation (OT) and conflict-free replicated data types (CRDTs). OT allows concurrent editing by transforming operations to resolve conflicts. CRDTs use data types that can be replicated across systems and automatically resolve conflicts through properties like commutativity. Examples of CRDT types include counters, sets, and registers. Tools like ShareDB and OT.js implement these approaches to enable collaborative editing and real-time sharing across devices.
PyCon Ukraine 2017: Operational Transformation Max Klymyshyn
Nowadays IoT and partitioned sources of information require tricky approaches to keep data consistent and provide freedom on different levels of communication flow. Operational Transformation is one of the pioneering technologies providing good responsiveness in hight latency environments. Let’s have some fun with Python and OT.
Communicating Sequential Processes (CSP) in JavaScriptMax Klymyshyn
The document discusses Communicating Sequential Processes (CSP), a formal language for describing patterns of interaction in concurrent systems. CSP was initially developed to solve problems with asynchronous code leading to callback pyramids and unclear flow. The document advocates for using CSP and channels in JavaScript to make asynchronous code more readable and understandable through a synchronous-like programming style.
PiterPy 2016: Parallelization, Aggregation and Validation of API in PythonMax Klymyshyn
There's plenty of different approaches for building simle and robust API: REST, SOAP, RPC and so on. Some of them are too verbose, some – too complex. This presentation is a journey of finding balance between simplicity and flexibility, performance and robustness.
Max Klymyshyn discusses various approaches for handling asynchronous JavaScript, including promises, generators, async/await, CSP channels using js-csp, and the actor model. He describes some of the key benefits of each approach, such as CSP channels solving problems of coordinating asynchronous components and CSP alongside other approaches solving the problem of easy-to-understand code. Klymyshyn also provides code examples for using many of these approaches.
This document discusses building robust apps with React.js by avoiding tightly coupled components and focusing on proper data flow. It introduces React.js basics like components, JSX, virtual DOM and one-way data flow. It also covers Flux architecture with unidirectional data flow through stores, dispatcher and actions. The conclusion emphasizes that React.js is about understanding data flow in the app to reduce mistakes and increase immutability.
JavaScript и инновации by Max Klymyshyn
Published July 5, 2014 in Technology
Как возникло то, что мы имеем в JavaScript, что уже существует и какие инновации нас ждут в ближайшем будущем
Odessapy2013 - Graph databases and PythonMax Klymyshyn
Page 10 "Я из Одессы я просто бухаю." translation: I'm from Odessa I just drink. Meaning his drinking a lot of "Vodka" ^_^ (@tuc @hackernews)
This is local meme - when someone asking question and you will look stupid in case you don't have answer.
This document provides an overview of the AngularJS JavaScript framework. It discusses what AngularJS is, how it works, and its benefits. AngularJS is an MVC framework built by Google for building user interfaces with declarative programming and two-way data binding. It allows creating reusable components with directives and provides services for common tasks like data binding, dependency injection and RESTful APIs. The document highlights how AngularJS enables rapid prototyping, has a large community and structured codebase which can help startups build fast prototypes and robust solutions.
9. По факту
За одну итерацию не сработаешься
Понять интересы и «темперамент»
разработки занимает время
Притирку и заниженную продуктивность
не учли при планировании скоупа
15. Типичные проблемы
Задержки в коммуникациях - особенно с
американскими заказчиками
Один PO на 10-ть проектов - с трудом
удерживает контекст одного конкретного
проекта
Большая команда “менеджмента”: PO, CTO,VP,
архитектор, маркетолог - избыточные митинги
16. Решения
Самому понять цели и стратегию разработки
продукта
Углубиться в приоритеты и детали реализации
Встречи по узким темам минимальным
составом (разделить технические и
маркетинговые)
Выбрать правильного ПО (вместо всего
выше)
18. Что обычно тупит
Синхронная архитектура - когда “тяжелые”
задачи работают внутри слоя отображения
Dog-pile effect, “тяжелые” задачи кешируют
одновременно
Неразумное использование хранилищ -
например PgSQL как Key/Value или MySQL для
EAV
Запросы к базе данных в циклах,
автоматически генерируемые запросы, third-
party API
19. Очень простой рецепт
Оставьте синхронным только front-end -
отображение для пользователя
Как можно больше задач обрабатывайте
асинхронно
PubSub, MQ - это все создано для простых и
рабочих систем
20. Все для людей
Просите делать презентации по
архитектурным предложениям или
изменениям
Прежде, чем внедрять новую технологию
лучше внимательно изучить отзывы в
интернете
Метрики, метрики, метрики - очень хороший
аргумент для новой технологии
22. О чем это?
Не надо хранить пароли в открытом виде, в
виде md5 без salt-a
Крайне внимательно относиться к ACL
Правильный транспорт - SSL и тп
Некорректная архитектура защищенной сети
26. Планировать
два сценария
два сценария
1: Все OK
Все фичи в
полном
объеме и вовремя
2: Все по другому
• Меньше фич
• В меньшем объеме
• Включаем команду
27. Мотивировать команду
В зависимости от типа разработчика:
Задачи - интересные
Проблемы - посильные
Сроки - реалистичные
Нагрузка - поддерживаемая
Нет аджайл-образования, но есть опыт гибкой разработки, а именно: - работа короткими итерациями с сессиями планирования и демонстраций - тесное взаимодействие с заказчиком, небольшая команда - continious deployment (частота), инженерные практики (CI, Code Review, Collective Code Ownership, TDD) Чего нет: оценок и планирования в фичерпоинтах, ясного разделения ролей как в классических аджайл фрейморках: «я - лид».
команда это часто тоже ограничение, но не такое явное в начале, как дата релиза
когда горка пологая, но сила трения не позволяет скатиться какой-то цилиндрической херне. Надо слегка подтолкнуть, а дальше работает гравитация