Программа конференции

Программа конференции уже сформирована и возможны лишь минимальные изменения. Мы приняли решение впервые провести конференцию JEEConf 2013 в два дня – 24-25 мая. В этом году мы хотим отобрать только лучшие доклады, сделав программу конференции действительно полезной и интересной. В преддверие конференции для желающих будут организованы разнообразные тренинги и мастер-классы. Таким образом, у участников будет возможность выбрать себе программу по вкусу и потребностям.

Расписание тренингов и мастер-классов 22-23 мая

!!! Внимание !!! Регистрация на тренинги и мастер-классы, а также их оплата осуществляется отдельно от основных дней конференции на. Следите за программой конференции и анонсами для выбора подходящих для себя дополнительных мероприятий и регистрации на них.

22 мая 23 мая
9:30-18:30
sold out
Тренинг “TDD в Java”

9:30-18:30
sold out

Детальная программа конференции 24 мая

english language – выступление проводится на английском языке.

Сцена A (600 человек)
Главная сцена
Сцена B (150 человек)
Core Java
Сцена C (150 человек)
Языки и библиотеки
Сцена D (70 человек)
Народная
9:00-9:40 Регистрация участников
9:40-10:00 Открытие конференции (главная сцена)
10:00-10:50 JavaEE.Next(): Java EE 7, 8, and Beyond

Taming Java Agents

Олег Шелаев (Эстония)
Mmmm… Clean code with Google Guava

Как устроен процесс изменения платформы Java

10:50-11:00 Перерыв
11:00-11:50 JDK8: Я, лямбда

Speed up your Web applications with HTML5 WebSockets

Spring Web Flow

Эксплуатация Clojure среди Java

11:50-12:00 Перерыв
12:00-12:50 Java Concurrency: битва за корректность

Stay sane. Test for real.

Bartosz Majsak (Switzerland)
Introduction to functional programming in Scala

Java приложения в облаке Azure

12:50-14:30 Обеденный перерыв
14:30-15:20 Surviving as a professional software developer

The Power of Java7 NIO.2 essential stuff

Секция мини-докладов
Роман Шрамков (Украина)
Java Enterprise без Java?

Елена Сирота (Украина)
15:20-15:30 Перерыв
15:30-16:20 Using NoSQL with JPA, EclipseLink and JavaEE

Modularity in the Cloud: a Case Study

Sander Mak (Netherlands)
Роман Сорока (Украина)
Anton Moiseev (Russia)
Banshun – очередной “убийца” OSGi

16:30-17:00 Кофе пауза
17:00-17:50 Picking a JVM Language, which one is right for you? (part 1)

 
JIT-компилятор в JVM глазами Java-программиста

Красная книга веб-разработчика

Extreme Programming practices for your team

17:50-18:00 Перерыв
18:00-18:50 Picking a JVM Language, which one is right for you? (part 2)

 
Быстрая разработка приложений (Java style)

Олег Шелаев (Эстония)
Как вернуть Java былую славу?

Антон Кекс (Эстония)
18:50-19:00 Закрытие первого дня конференции (главная сцена)

Детальная программа конференции 25 мая

english language – выступление проводится на английском языке.

Сцена A (600 человек)
Главная сцена
Сцена B (150 человек)
Core Java
Сцена C (150 человек)
Языки и библиотеки
Сцена D (70 человек)
Народная
9:00-9:50 Регистрация участников
9:50-10:00 Открытие второго дня конференции (главная сцена)
10:00-10:50 Programming with Actors (part 1)

Формальная верификация как средство тестирования в Java

Тонкости поиска в Lucene

Java особенно хороша с малиновым десертом!

10:50-11:00 Перерыв
11:00-11:50 Programming with Actors (part 2)

Эффективная работа с кодом в IntelliJ IDEA

Зачем нужен Kotlin, если будет Java 8?

Панельная сессия с экспертами

11:50-12:00 Перерыв
12:00-12:50 JDK8: Молот лямбд

The Power of Java7 NIO.2 advanced concepts

Effective messaging for Java applications

Join JCP Adopt JSR program

12:50-14:30 Обеденный перерыв
14:30-15:20 Не по дням, а по часам! Вертикальное и горизонтальное масштабирование Java приложений.

High-Performance Fork/Join in Java

Introduction to web application development in Clojure

Не будьте J2EE динозавром, сфокусируйтесь на коде, который имеет значение

Иван Лаппо (Украина)
15:20-15:30 Перерыв
15:30-16:20 Уменьшение расхода оперативной памяти в Java-приложениях

Обзор нововведений в java.util.concurrent (JSR166e)

Easy Scaling with Open Source Data Structures

Talip Ozturk (Turkey)
Spring integration: building blocks for message driven architecture

Роман Сорока (Украина)
16:30-17:00 Кофе пауза
17:00-17:40 The Art of Simplicity

Closing keynote talk
Структурируем большое приложение с помощью OSGi

Выбор фреймворков реализации ORM и пользовательского интерфейса для корпоративного приложения

Next stop: Spring 4

17:40-17:50 Перерыв
17:50-18:30 Покрытие кода. Прагматичный подход.

Spring Data – новый взгляд на persistence

18:40-19:00 Закрытие конференции (главная сцена)

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

Programming with Actors

Описание: Actor based concurrency was popularized by languages like Erlang and Scala. This model of programming provides isolated mutability (as opposed to shared mutability) and easy way to implement coordinating processes or tasks. Actors can be local to a JVM, or distributed across VMs and machines. In this presentation we will learn how to use Akka Actors to design and implement distributed concurrent Java applications.
Тип выступления: Доклад (1 час 40 минут)
Докладчик: Dr. Venkat Subramaniam

Picking a JVM Language, which one is right for you?

Описание: Over the past few years a few JVM languages have gained adoption. Suppose on your next project, you’re asked to use an alternate language. Which one would you pick? In this presentations, we’ll put our personal biases away, look far beyond the syntax, and into the capabilities, the strengths and weaknesses of select prominent JVM languages. We will objectively compare them and create a configurable metric that will help us select the right language for that next project.
Тип выступления: Доклад (1 час 40 минут)
Докладчик: Dr. Venkat Subramaniam

The Art of Simplicity

Описание: We’ve been told to keep things simple. It turns out, that’s easily said than done. Creating something simple is, well, not really that simple. If simple was sitting next to us, would we even recognize it? Is my design simple, is yours simple? How can we tell? That’s a simple question, but the answer to it is… well come to this talk to find out.
Тип выступления: Доклад (1 час 20 минут)
Докладчик: Dr. Venkat Subramaniam

Effective messaging for Java applications

Описание: Тяжело представить в современном мире распределенную масштабируемую систему, работающую на основе синхронного взаимодействия своих компонентов. Обмен сообщениями является неотъемлемым инструментом при построении большинства систем. В докладе будут рассмотрены советы и практики для повышения его эффективности, разнообразные грабли, на которые можно наступить по незнанию, а также особенности использования различных провайдеров/протоколов сообщений для обеспечения надежной и быстрой коммуникации. Я расскажу о своем опыте использования ActiveMQ и RabbitMQ, построения своих брокеров сообщений на базе Cassandra.
Тип выступления: Доклад (50 минут)

JavaEE.Next(): Java EE 7, 8, and Beyond

Описание: The Java EE 7 platform is soon coming your way and the horizons for Java EE 8 are emerging. This session looks into some of the key changes the community can expect. The goal of this session is to foster discussion, interest and participation around these changes.

Some of the changes discussed include cloud support, retiring EJB 2 entity beans and JAX-RPC, greater alignment with CDI, the long-awaited Java EE concurrency utilities, WebSocket/HTML 5 support, a standard API for JSON processing, the next version of JAX-RS, an overhaul of JMS, batch processing in Java EE and much, much more.

Тип выступления: Доклад (50 минут)
Докладчик: Reza Rahman

Using NoSQL with JPA, EclipseLink and JavaEE

Описание: This session explores how NoSQL solutions like MongoDB, Cassandra, Neo4j, HBase and CouchDB can be used with JPA and Java EE. Although the primary focus is on EclipseLink NoSQL, we will also cover Hibernate OGM, EasyCassandra, Morphia, etc as well as seeing how and when NoSQL can be used natively via basic CDI injection without JPA.
Тип выступления: Доклад (50 минут)
Докладчик: Reza Rahman

Surviving as a professional software developer

Описание: During the last year’s JEEConf Yakov Fain made a presentation on how to become a professional software developer. This presentation is a sequel. Yakov will present his no-BS point of view on how enterprise IT shops live and operate. He’ll talk about communication skills, bad attitude, the team work, those stupid and useless IT managers, and how the life is unfair if young prodigies have to debug old and poorly-written code. This is not a technical presentation.
Тип выступления: Доклад (50 минут)
Докладчик: Yakov Fain

Speed up your Web applications with HTML5 WebSockets

Описание: HTML5 specification includes the communication protocol WebSockets, which is getting more and more popular in the Wall Street real-time Web applications. WebSockets API is include in the upcoming Java EE 7 specification. WebSocket offers solution to the problems of latency, scalability and performance associated with HTTP based solutions like polling, long-polling and HTTP-streaming. Online auctions, financial trading applications, and multi-player games can benefit from implementing WebSockets. This session starts with a brief overview of traditional HTTP protocols followed by covering of how WebSockets works. You’ll see how using WebSockets removes the overhead of heavy HTTP request and response headers. Finally, we’ll review the code of the Web application, where WebSockets is used for the data exchange between HTML-based front end and the latest build of the Java server GlassFish 4.
Тип выступления: Доклад (50 минут)
Докладчик: Yakov Fain

Структурируем большое приложение с помощью OSGi

Описание: Если вы часто используете IoC контейнер (например Spring), то должны были замечать, что с ростом приложения ваши контексты начинают напоминать взрыв на макаронной фабрике. OSGi даст вам возможность лучше связать и настроить ваши модули, поможет при разворачивании приложения и предоставит средства контроля.
Тип выступления: Доклад (40 минут)

Infinispan – громкое имя для JBoss Cache или еще одно NoSQL решение?

Описание: JBoss Cache уже несколько лет как вырос из “коротких штанишек” и называется Infinispan. Сейчас это вполне серьезный Key-Value NoSQL со своими изюминками, такими как транзакционность. Попробуем разобраться детальнее как и в каких случаях имеет смысл его применять.
Тип выступления: Мини-доклад (15 минут)

JDK8: Я, лямбда

Описание: Скоро выходит JDK8, и там будут лямбды! А на докладе мы узнаем:

  • что такое лямбды в контексте Java
  • как они соотносятся с существующими примитивами языка
  • лямбды – сахар или нет?
  • как jsr292 победил javac
  • сколько, где, и кому стоят лямбды
  • плюшки, грабли, и прочие особенности
Тип выступления: Доклад (50 минут)
Докладчик: Сергей Куксенко

JDK8: Молот лямбд

Описание: В докладе рассматриваются изменения в JVM/JDK, напрямую связанные с введением в язык лямбда-выражений: изменения в коллекциях и bulk collection operations, default-методы, и прочие интересности. Доклад рекомендуется уже посетившим доклад “Я, лямбда”, или знающим о синтаксисе и семантике лямбд из других доверенных источников.
Тип выступления: Доклад (50 минут)
Докладчик: Сергей Куксенко

High-Performance Fork/Join in Java

Описание: Уже давно в JDK появилась поддержка вычислений, ложащихся в модель, ложащихся в модель Fork/Join. Доклад посвящен тому, что делает реализацию ForkJoinPool важным звеном в производительности параллельных операций над коллекциями в JDK8, в работе актёров в Scala/Akka, и других сценариях. Посмотрим на явные ограничения и подводные камни, разные модели использования: рекурсивные джойны, эмуляция continuation’ов и проч.
Тип выступления: Доклад (50 минут)
Докладчик: Алексей Шипилёв

Java Concurrency: битва за корректность

Описание: Доклад про опыт тестирования concurrency в JDK/JVM, разного рода загадки и примеры как оптимизации и дефекты в реализации виртуальной машины и библиотек ломают модель памяти, и что нам с этим делать. Доклад *требует* знания JMM, понимания внутренней работы JRE, и устройства железа.
Тип выступления: Доклад (50 минут)
Докладчик: Алексей Шипилёв

Easy Scaling with Open Source Data Structures

Описание: Today’s applications are getting more and more distributed everyday and it is well-known that distributed programming is hard. With Hazelcast though, distributed programming is easy and lots of fun. A common reaction of Hazelcast users is ‘Ooh my God, this cannot be that easy’. Hazelcast is an open source, highly scalable, transactional, distributed/partitioned implementation of queue, map, set, list, lock and executor services for Java. Hazelcast is for you if you like to easily: share data/state among many servers (e.g. web session sharing), cache your data (distributed cache), cluster your application, partition your in-memory data, send/receive messages among applications, distribute workload onto many servers, take advantage of parallel processing or provide fail-safe data management.
Тип выступления: Доклад (50 минут)
Докладчик: Talip Ozturk

Introduction to web application development in Clojure

Описание: This is a talk about Clojure as a tool to develop web applications with leiningen, Compojure and Enlive (you could be using different set of projects, but since most if not all are based on Ring, the knowledge gained on this presentation should be easily applicable to other project sets, too).

During the presentation I demonstrate the tools needed to set up a complete environment for web development. It’s gonna be very easy to follow for people who want to start developing *something* in Clojure. The presentation is used as a vehicle to drive people towards a fictitious but research-oriented project to study functional concepts of Clojure further.

Тип выступления: Доклад (50 минут)
Докладчик: Jacek Laskowski

Introduction to functional programming in Scala

Описание: Functional programming has been driving my personal development for the past couple of years. It all began with Clojure, but given its different syntax and a complete departure from what a common Java developer has learnt, Scala might be a better vehicle to drive people towards functional programming in JVM. That’s why I chose Scala and have been studying its functional flavor.

I’m more into Scala for its functional aspect rather than as a way to develop Java applications with a higher-level language, without constructs that may have been itching you here and there. The presentation is based on my experience mostly gained from the book “Functional Programming in Scala” that I’m reviewing and Clojure (or should it be vice versa?) I’m not very good at developing applications in Scala (and wouldn’t very much argue hearing I’d rather stay away from speaking about or demoing Scala on conferences), but it may be the reason why people may like my presentation – I show the language from the perspective of a person who has just started the journey into the functional aspects of Scala and found some of its concept engaging.

Тип выступления: Доклад (50 минут)
Докладчик: Jacek Laskowski

Покрытие кода. Прагматичный подход.

Описание: Измерили покрытие кода – что дальше? Поднимать покрытие? Нужно ли? Если да – что покрывать сначала? С практичеcкой стороны, способы использования данных о покрытии кода можно разбить на категории: метрики, идентификация тестов (существующих или необходимых) и идентификация мертвого кода.

Я постараюсь рассказать о том что означает 100% покрытие кода (block/line/branch, etc.), о некоторых распространенных заблуждениях, о “хороших” метриках базирующихся на покрытии, о связи данных о покрытии с другими характеристиками исходного кода для приоритезации разработки тестов – все для того чтобы показать как можно практически применить данные о покрытии кода с пользой для продукта.

Тип выступления: Доклад (40 минут)
Докладчик: Александр Ильин

Формальная верификация как средство тестирования в Java

Описание: Насколько формальная верификация применима на практике? Как то, что применимо, соотносится с традиционными способами тестирования, такими как динамическое и статическое тестирование? Какие виды ошибок она помогает находить, насколько эффективно использование данного подхода? Мы постараемся передать всю боль испытываемую нами при тестировании Oracle JDK традиционными средствами. Мы покажем какие инструменты и какие фичи языка Java позволят нам и вам, разработчикам продуктов на Java, сэкономить на тестировании, переложив часть ответственности на средства формальной верификации.
Тип выступления: Доклад (50 минут)

JIT-компилятор в JVM глазами Java-программиста

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

Основной прирост производительности приложения на Java дает использование JIT-компилятора. Поэтому представление о принципах его работы является ключом к пониманию того, каким образом эту производительность можно улучшить. Работа JIT-компилятора будет рассмотрена на примере HotSpot JVM от Oracle. Доклад будет покрывать обзор общей архитектуры JIT-компилятора, базовые понятия и ключевые техники оптимизации кода на Java, инструменты и техники мониторинга работы компилятора.

Тип выступления: Доклад (50 минут)
Докладчик: Владимир Иванов

Уменьшение расхода оперативной памяти в Java-приложениях

Описание: Если вы устали от поиска утечек памяти в Java приложениях, не знаете как хранить большие объемы данных в “куче”, то этот доклад для вас. В докладе будут как описаны детали реализации, позволяющие оценивать расход памяти, так и даны конкретные советы, помогающие снизить потребление памяти. Вы услышите про особенности представления Java-объектов в памяти, тонкости процесса финализации, для чего нужны слабые ссылки, сжатые указатели в HotSpot JVM и много чего другого.
Тип выступления: Доклад (50 минут)
Докладчик: Владимир Иванов

The Power of Java7 NIO.2 essential stuff

Описание: In this session hear how a leading financial services company uses Java 7 NIO.2. This session will covers all the important essential aspects involved in developing NIO.2-based applications. It provides clear instructions for getting the most out of NIO.2 and offers many case studies to spice up your Java 7 applications with the new I/O capabilities.

  • The Path class operations.
  • Get/set file metadata through the new java.nio.file.attribute API.
  • Manage symbolic and hard links.
  • Manipulating files and directories through the new java.nio.file.Files API.
Тип выступления: Доклад (50 минут)
Докладчик: Mohamed Taman

The Power of Java7 NIO.2 advanced concepts

Описание: In this session hear how a leading financial services company uses Java 7 NIO.2. This session will covers all the important aspects involved in developing advanced NIO.2-based applications. It provides clear instructions for getting the most out of NIO.2 and offers many case studies to spice up your Java 7 applications with the new I/O capabilities.

  • The Path class operations.
  • Need to copy, move, or delete an entire directory? Use the FileVisitor API.
  • Explore the Watch Service API and file changed notification.
  • Develop blocking/non-blocking socket-based applications. Learn how to develop Java network-based applications in blocking and non-blocking styles. Both TCP and UDP are covered in brief.
  • The Asynchronous Channel API. You can develop asynchronous network based Java applications with a suite of classes and options.
Тип выступления: Доклад (50 минут)
Докладчик: Mohamed Taman

Как вернуть Java былую славу?

Описание: В настоящее время Java все ещё сохраняет позиции самого популярного языка программирования для разработки корпоративных систем и приложений. К сожалению, достаточно быстро эти системы превращаются в нечто огромное, неповоротливое и невероятно сложное для поддержки, и в то же время не приносящее слишком много пользы. Это приводит к тому, что разработчики начинают прибегать к альтернативным языкам и технологиям, хотя проблема лежит не столько в самом языке, сколько в архитекуре и дизайне, которые часто используются при разработке таких систем на Java. Может быть нам надо сперва исправить свое отношение к написанию приложений? Я покажу, как это можно сделать.
Тип выступления: Доклад (50 минут)
Докладчик: Антон Кекс

Быстрая разработка приложений (Java style)

Описание: JRebel делает процесс разработки Java приложений быстрее, эффективнее и, пожалуй, интереснее. JRebel создает виртуальную отображение приложения на файловую систему и умеет считывать изменения класс-файлов для того, чтобы незамедлительно отобразить их в работающем приложении. Больше никаких пауз для редеплоя!

Мы покажем как JRebel помогает:

  • всегда пропускать процессы сборки приложения
  • изменять приложение и менять конфигурацию фрэймворков на лету, например добавить Spring bean в уже существующий контекст
  • наконец-то снова сделать программирование на Java приятным!
Тип выступления: Доклад (50 минут)
Докладчик: Олег Шелаев

Taming Java Agents

Описание: Java agents are pluggable self contained components that run embedded in a JVM and intercept the classloading process. They were introduced in Java 5 along with the powerful java.lang.instrument package. Java agents can be loaded statically at startup or dynamically (programmatically) at runtime to attach to a running process in a fail-safe fashion.

Java agents were an awesome addition to the JVM as it opened a lot of opportunities for tool designers and changed Java tooling landscape quite drastically. In conjunction with Java bytecode manipulation libraries it is now possible to do amazing things to Java classes: we can experiment with programming models, redefine classes in runtime, record execution flow, etc.

In this session I’d like to give an overview of Java agents’ functionality along with the usage examples and real world experiences. You will learn, how to implement an agent and apply Instrumentation API in combination with bytecode manipulation libraries to solve interesting tasks.

Тип выступления: Доклад (50 минут)
Докладчик: Олег Шелаев

Java Enterprise без Java?

Описание: Сейчас часто задают вопрос: “какой язык заменит Java?”. Но куда девать существующие технологии разработки корпоративных приложений? Эти технологии однозначно имеют ценность. Можно ли одновременно заменить язык программирования и при этом сохранить существующие наработки и сделанные инвестиции? Ответ «да». С помощью Polyglot JVM.

Введение Polyglot JVM достигает двух целей: открывает путь инновациям и позволяет сохранить технологии Java в секторе enterprise. Этот доклад для разработчиков корпоративных приложений. Надеюсь, он поможет систематизировать знания по архитектуре серверных платформ на базе Java и, возможно, вдохновит расширить диапазон используемых языков.

Проанализированы архитектуры серверных платформ: CORBA, Java EE, Spring, Akka. Enterprise технологии по сути не зависят от Java. Они работают на платформе Java, но имеют отдельную от Java ценность. Можно сохранить эту ценность и при этом изменить язык программирования для того, чтобы привнести инновации и преимущества других языков, например, функциональных или языков с динамической типизацией. Для этого необходимо выйти за пределы архитектуры серверной платформы и поискать фундамент, на котором построена серверная платформа. Этот фундамент – JVM. Серверная платформа и бизнес-логика могут быть написаны на разных языках, выполняемых на одной и той же JVM. Именно поэтому активно развивается направление Polyglot JVM.

Тип выступления: Доклад (50 минут)
Докладчик: Елена Сирота

Scala – essentials and step beyond

Описание: Вы должны были заметить, что последнее время функциональная парадигма набирает все большие и большие обороты, уже сейчас вы можете попробовать ее в Java 8 EAP.

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

Данный доклад познакомит с некоторыми из основных инструментов Scala, которые позволяют на уровне языка решить многие из проблем изящнее и удобнее, чем с помощью Java. Join the ‘Scala’ side, we have implicits!

Тип выступления: Мини-доклад (15 минут)
Докладчик: Роман Сорока

Обзор нововведений в java.util.concurrent (JSR166e)

Описание: Пакет JSR 166e – это классы java.util.concurrent, которые появятся в JDK8. В частности, новый ConcurrentHashMap и StampedLock. Доклад про то, как устроены базовые классы, и почему они хорошо работают в условиях многопоточности. Будут описаны ситуации, в которых стоит или не стоит использовать известные альтернативы, и какой прирост производительности можно ожидать.
Тип выступления: Доклад (50 минут)
Докладчик: Дмитрий Чуйко

Красная книга веб-разработчика

Описание: Миллиарды людей по всему миру открывают веб-браузер утехи или работы ради. Сотни тысяч разработчиков, дизайнеров, тестировщиков и т.д., создают все новые и новые приложения для этих самых миллиардов. Тысячи языков программирования, помогают предыдущим ребятам. И Java один из таких языков!

И если ты выбрал для написания своего веб-приложения Java – ты скорее всего один из нас. Мои поздравления. Загвоздка лишь в том, что для Java существует несколько десятков веб-фреймворков и библиотек. Непростой выбор для человека, но критический для проекта. Что выбрать?

Скажу честно – я не знаю, но попробую помочь определиться с выбором. Мы пробежим по GWT, Spring MVC, Struts, DWR, JSF, Wicket, Portlet и некоторым другим фреймворкам, которые мне попадались в руки. Сравним сильные и слабые стороны, и подготовим почву для вашего собственного выбора веб-фреймворков будущего проекта.

Тип выступления: Доклад (50 минут)
Докладчик: Виктор Полищук

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

Описание: Ваше приложение становится популярным и у вас наплыв посетителей? Сайт уже не справляется с нагрузкой, а клиентов все больше и больше… В этом докладе я расскажу о том, как надо проектировать приложения, чтобы они могли выдержать свалившуюся на них славу и неожиданный поток клиентов, приемы вертикального и горизонтального масштабирования, преимущества и недостатки каждого подхода, узкие места и потенциальные проблемы. В том числе будут приведены примеры практической реализации обоих видов масштабирования в облачной платформе Jelastic.
Тип выступления: Доклад (50 минут)

Stay sane. Test for real.

Описание: It’s great to have a solid base of unit and integration tests; they give us confidence about the overall system integrity. But at the end of the day, it all amounts to whether our end users are happy using our application. So how can we keep the fail whale at bay and communicate with the stakeholders that the requirements are being met?

Not too long ago, running tests that were going beyond isolation was a challenging task. This required a well thought out process as part of the automated build. Nowadays we are equipped with a “Swiss Army knife” for almost all aspects of testing. Along this journey, in the world of testing, we will take a closer look at some of these tools.

We will learn that the Arquillian ecosystem is way more than just integration testing; it’s a comprehensive testing platform. We will dive into the concept of Acceptance Test Driven Development (ATDD) and demonstrate how to build higher-level, end-to-end functional tests; we will be emulating user interactions using the Arquillian Drone extension together with the open source browser automation tool Selenium. Reusable components like Page Objects will make our tests cleaner and easier to maintain. Eventually we will sugar coat them with a Groovy DSL for Behaviour Driven Development to achieve testing nirvana.

If you care about quality of your software you definitely shouldn’t miss this talk!

Тип выступления: Доклад (50 минут)
Докладчик: Bartosz Majsak

Зачем нужен Kotlin, если будет Java 8?

Описание: Kotlin – это статически типизированный язык программирования, разрабатываемый в компании JetBrains. Kotlin компилируется в байт-код для JVM и полностью совместим с Java, то есть код на Kotlin и Java можно легко использовать в одном проекте. Доклад будет посвящен различиям между Kotlin и Java (преимущественно Java 8), в том числе:

  • синтаксический сахар: строковые шаблоны, вывод типов, классы данных;
  • система типов: отслеживание нулевых ссылок, автоматическое приведение типов;
  • расширение существующих API (внешние функции в Kotlin vs интерфейсы с реализацией Java 8);
  • лямбда-выражения, функции высших порядков и приведение к функциональным интерфейсам (SAM);
  • работа с коллекциями в Kotlin и Java 8.
Тип выступления: Доклад (50 минут)

Nashorn – the new JavaScript engine for JVM

Описание: Nashorn is a new JavaScript engine written in pure Java. In this session you’ll get introduced to Nashorn and will get answers to the following questions:

  • What does it bring to the Java world?
  • What capabilities does it provide for the server and the client sides?
  • How can you leverage Nashorn in the real-life projects?

You’ll also learn how can we use it today, even before Nashorn is integrated into public JDK8 builds.

Тип выступления: Мини-доклад (15 минут)
Докладчик: Anton Moiseev

Эффективная работа с кодом в IntelliJ IDEA

Описание: IntelliJ IDEA – популярная среда разработки (IDE) от компании JetBrains, облегчающая написание кода на Java и других языках. Но IDE – это всего лишь инструмент, и эффективность при работе с ней зависит от того, насколько грамотно вы её используете. К сожалению, многие пользуются лишь частью возможностей, предоставляемых IntelliJ IDEA. В докладе на конкретных примерах будет показано, как лучше всего писать тот или иной код в IntelliJ IDEA, какие фичи помогают это делать, как узнавать о возможных проблемах в коде при помощи IDE и как их исправлять, как безопасно рефакторить существующий код. Будет рассказано о некоторых скрытых возможностях IDE и о том, как можно самому найти другие интересные фичи IDE, которые вы ещё не использовали.
Тип выступления: Доклад (50 минут)

Spring Data – новый взгляд на persistence

Описание: На сегодняшний день большое число приложений содержит более одного хранилища данных. Реляционные и нереляционные базы данных, кеши и data grid. Необходимо быстро и качественно организовывать работу со всеми хранилищами при этом соблюдая некое однообразие в интерфейсе взаимодействия. Данную задачу успешно решает проект Spring Data. Я хотел бы на примере показать как Spring Data облегчает жизнь при работе со старым-добрым JPA, а также какие возможности предоставляет при работе с NoSQL решениями.
Тип выступления: Доклад (40 минут)

Spring Web Flow

Описание: Шаблон MVC давно стал стандартом при разработке Web приложений. Если компоненты M и V этого шаблона (модель и представление) уже хорошо освоены и изучены на рынке, то C (контроллер) зачастую является темной лошадкой. Мы поговорим о Spring Web Flow 2.0, перспективной библиотеке от SpringSource, которая позволяет упростить разработку навигации внутри приложения. Вы узнаете о функциональности, которую предлагает эта библиотека, мы рассмотрим ее особенности и примеры практического использования. Доклад основан на 5-летнем практическом опыте работы с этой библиотекой.
Тип выступления: Доклад (50 минут)
Докладчик: Сергей Моренец

Modularity in the Cloud: a Case Study

Описание: Running in the cloud introduces many new challenges. How to deal with hot updates and auto-scaling for example? Modularity helps solving many of these challenges. In this presentation you will see how to create modular OSGi applications with RESTful web services, using MongoDB and cloud services such as BlobStores. You will also learn about deploying modular applications using Apache ACE and how to apply auto-scaling. Although the presentation gives real world examples, the session is highly technical and focussed on how developers could build and deploy applications with these kind of requirements. Examples will be based on an educational system focussed on personalized learning that is currently being implemented at several Dutch secondary schools. It is highly modular and completely runs in the cloud.
Тип выступления: Доклад (50 минут)
Докладчик: Sander Mak

Избавьтесь от рутины конфигурации окружений JEE проектов с помощью Vagrant

Описание: Если вы устали от постоянной траты времени на настройку окружения для вашего проекта или на поддержку окружения в актуальном состоянии, либо если вы разработчик с несколькими параллельными проектами и не хотите погрязнуть в попытке подружить несовместимые технологии на вашей рабочей машине, этот доклад для вас. Вы узнаете как можно эффективно использовать возможности виртуализации и сэкономить немного времени для более интересных задач.
Тип выступления: Мини-доклад (15 минут)
Докладчик: Иззет Мустафаев

Gradle: MongoDB Java Driver Experience

Описание: Gradle – эволюционный виток развития систем автоматической сборки проектов. Комбинируя в себе гибкость Ant и структурированность Maven, Gradle предоставляет блестящие решения для многих задач автоматизации, что вытекает в рост производительности, простоту поддержки, расширяемость и стандартизацию. В этом докладе мы пройдемся по таким аспектам, как преимущества декларативных систем сборки над императивными, оптимизацию через инкрементальность и частичные сборки, интеграцию с существующими Maven и Ant конфигурациями и стратегии перехода с них на Gradle.

Доклад будет основываться на личном опыте миграции с Maven + Ant на Gradle для одного из популярных open source проектов – MongoDB Java Driver. Слушатели могут рассчитывать на интересные фишки, массу live demo и изящные билд скрипты.

Тип выступления: Мини-доклад (15 минут)
Докладчик: Владимир Мигуро

Тонкости поиска в Lucene

Описание: Доклад изначально задумывался как учебный материал для быстрого погружения новичков в тонкости алгоритмов поиска в общем и в Lucene в частности. В дальнейшем был дополнен богатым опытом нашей команды eCommerce поиска, перечислением грабель, примерами наших хаков, смешными случаями. Рассмотрим несколько примеров создания собственных запросов и неочевидных проблем на этом пути. Также рассмотрим некоторые крайние случаи при которых Lucene имеет большие проблемы со скоростью.
Тип выступления: Доклад (50 минут)
Докладчик: Михаил Хлуднев

Выбор фреймворков реализации ORM и пользовательского интерфейса для корпоративного приложения

Описание: Краткий обзор архитектуры наших приложений и выбранного стека технологий – Spring, OpenJPA, Vaadin.

Почему мы используем OpenJPA, а не Hibernate?

  • Описание отличий в принципах работы, их следствия для производительности базы данных и всего приложения.
  • Сравнительные тесты производительности на максимально приближенных к реальности задачах.
  • Чего нам не хватает в OpenJPA.

Использование Vaadin для реализации пользовательского интерфейса.

  • Краткое описание принципов работы фреймворка.
  • Преимущества модели разработки UI на Vaadin.
  • Для каких задач стоит использовать Vaadin?
  • Опыт построения над Vaadin слоя абстракции для декларативного описания компоновки экранов и унификации прикладного кода веб и десктоп клиентов.
  • Проблемы, с которыми мы сталкивались на протяжении 4-х лет работы с фреймворком.
Тип выступления: Доклад (40 минут)

Не будьте J2EE динозавром, сфокусируйтесь на коде, который имеет значение

Описание: Использование облачных бэкендов при написании приложений – не дань моде, а новый тренд. Как правило, функционал и требования к серверной части повторяются от проекта к проекту: отказоустойчивость и масштабирование, управление пользователями (регистрация, логин, логаут, геолокация), publish/subscribe сообщения, push уведомления, управление данными, медиа сервисы. Логично, что написание повторяющегося кода с одинаковыми функциями неумолимо автоматизируется. На конкретных примерах мы рассмотрим насколько сильно можно упростить разработку бэкенда и как автоматическая кодогенерация изменит отрасль в будущем.
Тип выступления: Доклад (50 минут)
Докладчик: Иван Лаппо

Разбираемся с OAuth2.0

Описание: Мы разберемся с OAuth 2.0 Authorization Framework, который подымает безопасность Web 2.0 приложений на следующую ступеньку. Посмотрим, какие известные компании уже начали применять этот подход для своих web-сервисов, и разберемся, почему вам как web-разработчику нужно уже сейчас понимать “новый подход”. Окунемся в детали реализации и обсудим существующие OAuth 2.0 Java библиотеки и фреймворки, которые стоит посмотреть и попробовать.
Тип выступления: Мини-доклад (15 минут)
Докладчик: Роман Шрамков

Mmmm… Clean code with Google Guava

Описание: The Guava project contains several of Google’s core libraries that we rely on in our Java-based projects: collections, caching, primitives support, concurrency libraries, common annotations, string processing, I/O, and so forth. There will be the slides presenting most useful and interesting features of Guava (v.12) that makes stuff simpler, better and code cleaner. We will cover most of the com.google.common.base.* classes and basic use of functions in collection and Google collections and few other features that are part of Guava and I find them very useful. Some of you will think that there is an overlap with Apache commons – and it’s true, but Guava is built with expectation that there is a Function and a Predicate class as well as various builders which makes it really cool and simple for many use cases.
Тип выступления: Доклад (50 минут)
Докладчик: Игорь Анищенко

Эксплуатация Clojure среди Java

Описание: Clojure — достаточно выразительный язык, самая функциональная реализация которого построена в экосистеме JVM. В докладе будут рассмотрены возможности языка, которые существенно упрощают интеграцию кода на Clojure с чужим кодом на Java, практика организации (в том числе непрерывного) развертывания программ на Clojure внутри Apache Tomcat, а также инструменты интроспекции уже запущенных и работающих программ.
Тип выступления: Доклад (50 минут)

Banshun – очередной “убийца” OSGi

Описание: Года три назад нам пришлось создавать платформу для eCommerce backend-а. Некоторое время погенерировали OSGi-манифесты bundlor-ом, затем решили подумать: “Зачем так сложно?”. Появились сомнения: загрузчик классов один (Spring Web App), зависимости разрешаются Maven-ом во время сборки, частичного перезапуска компонентов приложения нет.

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

Помимо рассказа про сам контейнер, интересно обсудить, какой части разработчиков действительно нужны тяжеловесы OSGi/EJB, и насколько популярные контейнеры помогают в повседневной работе. Начинающим разработчикам будет интересно услышать историю “с поля”. Особое приглашение опытным разработчикам, съевшим не одну собаку на корпоративной разработке и готовым поведать подробности. Легкий троллинг приветствуется!

Тип выступления: Доклад (50 минут)
Докладчик: Михаил Хлуднев

Extreme Programming practices for your team

Описание: Extreme Programming had some momentum as a practiced agile method in the beginning of last decade. But then SCRUM took over the lead and soft, PM-oriented practices started dominating the agile software development movement and thinking. Focusing purely on the PM side without strong technical background and practices has made a good few teams fail their projects and get back to the old-school waterfallish methods. In the presentation I’ll be talking about implementing technical practices of XP in your teams and projects. How to start using them, what to watch out for and how to make them stick. I’ll be talking about implementing TDD, Pair-Programming, Collective Code Ownership and Continuous Integration and Continuous Delivery – which should constitute a tooling of any contemporary agile team.
Тип выступления: Доклад (50 минут)
Докладчик: Paweł Lipiński

Spring integration: building blocks for message driven architecture

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

Join JCP Adopt JSR program

Описание: This talk is intended to give as idea about what is JCP and Adopt JSR program for those developers who are not familiar with it yet, to explain why this is a right thing to do and to show how easy to join and be involved. This is another step towards JCP openess and transparency and another try to involve more talented and passionate delelopers into moving Java forward.
Тип выступления: Доклад (50 минут)

Next stop: Spring 4

Описание: In this talk I’m going to go through latest features being added in Spring 3.1/3.2 one more time and also will try to look behind the scene on what new features are comming in Spring 4 which should be released at the end of this year.
Тип выступления: Доклад (50 минут)
Докладчик: Олег Цаль-Цалько

Java приложения в облаке Azure

Описание: В презентации будет рассказано, как строить высоко доступные, масштабируемые приложения в облаке на Java с использованием преимуществ Windows Azure. Будут продемонстрированы различные варианты разворачивания Java приложений в Azure.
Тип выступления: Доклад (50 минут)
Докладчик: Виктор Цикунов

Как устроен процесс изменения платформы Java

Описание: Как шутят программисты, не бывает приложений без багов – бывают недостаточно протестированные. Любые Java-фреймворки, любая JDK от любого вендора, любые ОС и железо могут содержать различные баги, от чего ваше, пусть даже идеально написанное, Java-приложение может страдать различными спецэффектами. Компания Oracle, а точнее, её Java-подразделение пытается свести риски от этих спецэффектов к минимуму: регулярно выпускать апдейты, при этом тщательно следя за мультиплатформенностью, безопасностью, совместимостью, производительностью и т.д., а также, в особо тяжёлых случаях, втыкая в JDK специальные костыли, обходящие баги в ваших OC и железе. Поэтому апдейты платформы необходимы.

Процесс обновления Java пользователем выглядит обычно довольно просто: новая версия Java качается с сайта Oracle или OpenJDK и просто ставится вместо предыдущей. Более того, экосистема платформы устроена так, что позволяет с относительной лёгкостью сменить вендора Java! Но что за этим стоит?

Что мы, Java Platform Group, для этого делаем и сколько усилий тратим? Как вообще устроен процесс изменений платформы Java? Какие изменения допускаются в апдейтах (7u17 -> 7u21), а какие – в новой версии платформы (Java7 -> Java 8)? По какому принципу нумеруются апдейты внутри одной версии? Зачем пользователям нужно обновлять старые версии платформы (Java 5, Java 6)? Какие процессы и инструменты помогают инженерам Oracle управлять изменениями в платформе? Какие гарантии даёт Oracle, если вы используете Java от других вендоров (OpenJDK, IcedTea, Azul, Excelsior, IBM, SAP и др.)? Обо всё этом вы узнаете из моего доклада.

Тип выступления: Доклад (50 минут)
Докладчик: Алексей Фёдоров

Java особенно хороша с малиновым десертом!

Описание: Java проделала долгий путь от платформы для приставки кабельного телевидения в далеком 1994, до самых высоконагруженных серверов в 2013. Возможно в ближайшем будущем мы станем свидетелями того, как спираль истории поворачивается и очень скоро мы увидим Java на миллиардах встроенных систем.

Rasberry Pi – компьютер стоимостью $25 и размером с кредитную карту, который подключается к телевизору и клавиатуре. Он содержит чип ARM, мощность которого позволяет запустить полную версию Java SE, включая JavaFX. Во время этого доклада мы практически опробуем технологии Java и JavaFX, на очень доступной встроенной платформе. C полноценной виртуальной машиной Java ваши возможности бесконечны!

Тип выступления: Доклад (50 минут)
Николай Алименков

Николай Алименков

XP Injection / ZoralLabs, Украина
Практикующий Java технический лидер и Scrum Master. Эксперт в разработке на Java, Agile инженерных практиках и управлении проектами. Разрабатывает на Java более 8 лет, специализируется на разработке сложных распределенных масштабируемых систем. Активный участник и докладчик многих международных конференций. Основатель и тренер тренинг-центра XP Injection. Организатор и идеолог конференций Selenium Camp, JEEConf, XP Days Ukraine и IT Brunch. Основатель действующего «Клуба анонимных разработчиков» (uadevclub).

Dr. Venkat Subramaniam

Dr. Venkat Subramaniam

Agile Developer, Inc, USA
Dr. Venkat Subramaniam is an award-winning author, founder of Agile Developer, Inc., and an adjunct faculty at the University of Houston.

He has trained and mentored thousands of software developers in the US, Canada, Europe, and Asia, and is a regularly-invited speaker at several international conferences. Venkat helps his clients effectively apply and succeed with agile practices on their software projects.

Venkat is the author of “.NET Gotchas,” the coauthor of 2007 Jolt Productivity Award winning “Practices of an Agile Developer”, the author of “Programming Groovy: Dynamic Productivity for the Java Developer” and “Programming Scala: Tackle Multi-Core Complexity on the Java Virtual Machine” (Pragmatic Bookshelf). His latest book is “Programming Concurrency on the JVM: Mastering synchronization, STM, and Actors”.

Yakov Fain

Yakov Fain

Farata Systems, USA

Yakov Fain is Managing Partner at a software boutique Farata Systems (USA). He authored several technical books and lots of articles on software development. His book «Java Programming. 24-Hour Trainer» was published by Wrox in 2011, and Yakov sweared this was going to be his last technical book. Sun Microsystems has nominated and awarded Mr. Fain with the title of Java Champion. Yakov’s personal blog is located at yakovfain.com. Currently he works with his colleagues at Farata on a book for O’Relly on enterprise Web development.

Reza Rahman

Reza Rahman

Oracle, USA

Reza Rahman is a Java EE/GlassFish evangelist. He is the author of the popular book “EJB 3 in Action”. Reza is a frequent speaker at Java User Groups and conferences worldwide including JavaOne. He is an avid contributor to industry journals like TheServerSide. Reza has been a member of the Java EE, EJB and JMS expert groups. He implemented the EJB container for the Resin open source Java EE application server.

Reza has over a decade of experience with technology leadership, enterprise architecture, application development and consulting. He has been working with Java EE technology since its inception, developing on almost every major application platform ranging from Tomcat to JBoss, GlassFish, WebSphere and WebLogic. Reza has developed enterprise systems for well-known companies like eBay, Motorola, Comcast, Nokia, Prudential, Guardian Life, USAA, Independence Blue Cross and AAA using EJB 2, EJB 3, Spring and Seam.

Виталий Тимчишин

Виталий Тимчишин

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

Алексей Шипилёв

Алексей Шипилёв

Oracle, Россия
Oracle, Java Performance Engineer. За последнее время Алексей успел позаниматься Apache Harmony в Intel, затем перешёл в Sun Microsystems, а потом и в Oracle, где сегодня работает над Sun/Oracle JDK, в том числе над производительностью JVM, библиотек классов, фреймворков и приложений. Алексей занимается вопросами производительности на всех уровнях, от больших серверов приложений до микроархитектурных изысков, увлекается хардкорными вопросами в concurrency.

Сергей Куксенко

Сергей Куксенко

Oracle, Россия
Oracle, Java Performance Engineer. Большой профессиональный опыт, включая Российскую Академию Наук, стартапы, а также такие крупные корпорации как Intel и Oracle. Опыт работы с Java более 15 лет, начиная с разнообразных клиентских и серверных приложений и заканчивая библиотеками и JIT-компиляторами. Последние 8 лет Сергей занимается вопросами производительности Java, включая JVM, библиотеки классов и прочее.

Talip Ozturk

Talip Ozturk

Hazelcast, Turkey
Talip Ozturk is the founder of Hazelcast. He has been working with enterprise Java since 1999. He worked as a consultant at MIC (Virginia), developer at a start-up company, Syncline (Boston) and sales architect at Itochu Technologies (New York). In 2003, he got fascinated by Jini and developed an implementation of JavaSpaces. In 2008, his passion for distributed programming led him to develop Hazelcast. Before Hazelcast, Talip was the director of technology at Zaman Media Group (Istanbul). In his free time, he enjoys playing soccer.

Jacek Laskowski

Jacek Laskowski

IBM, Poland
Jacek Laskowski is the founder and a co-leader of the Warszawa Java User Group (Warszawa JUG). It works as a professional software specialist in the IBM World-wide WebSphere Competitive Migration Team to assist customers in their migrations from competitive Java EE application servers to IBM WebSphere Application Server. He develops applications, writes articles, mentors, records screencasts, delivers courses and reviews IT books. Jacek contributes to several open source projects with the longest track record in Apache OpenEJB. He regularly speaks at developer conferences. For his achievements he’s recently been appointed to the IBM Academy of Technology. He blogs at blog.japila.pl (en) and blog.jaceklaskowski.pl (pl). Follow him on twitter @jaceklaskowski. He has quite recently been active in StackOverflow.

Mohamed Taman

Mohamed Taman

Efinance, Egypt
Mohamad is a Systems Architect and Java Team Lead with around 11 years experience in projects architecture, manages department team, projects deadlines, delivery times, capacity plans, and resource planning in case of concurrent projects / change requests development. He is also a Java Community Process (JCP) member, who is involved in working on many JSRs speacially JEE7 and Glassfish 4. His career has taken him to different companies ( Oracle, Silicon Expert & Intercom Enterprise), where he work now as Java EE consultant / Systems Architect and Java Team Leader in e-finance.

Sander Mak

Sander Mak

Luminis Technologies, Netherlands

After getting his master’s degree in Software Technology, Sander became a software developer/architect specializing in Java and application integration. Recently, data analysis and machine learning were added to his list of interests. Sander loves sharing knowledge, for example through his blog and by writing for the Dutch Java Magazine. He speaks regularly at various international developer conferences, sharing his passion for Java, alternative JVM languages and related technologies.

Александр Ильин

Александр Ильин

Oracle, Россия
Alexandre Iline is a senior quality engineer in Oracle, working as a quality architect on several products in Java portfilio and as a test tools architect for the Java SQE. Prior to that, Alexandre was playing a role of quality lead/architect of such products as Java Studio Creator and Netbeans. Before that, Alexandre was working as a member/lead of NetBeans QE tools team.

Alexandre leads/led development for a number of test tools from test harnesses to metrics tools. In particular, Alexandre is the author of Jemmy – the open-source UI testing tool used widely for Swing/AWT UI applications testing as well as for testing of Swing itself. Jemmy v3 is a new generation tool developed/led by Alexandre which, along with the other UI libraries, allows to test FX UI. The tool is used successfully for testing Java FX SDK and Java FX products developed internally.

Bartosz Majsak

Bartosz Majsak

Cambridge Technology Partners, Switzerland

Bartosz Majsak works as a software developer and consultant at Cambridge Technology Partners based in Zurich. He is a passionate about open source technologies and testing methodologies. In the spare time he is contributing to open source projects and writing technical articles. He is a JBoss Arquillian team member and lead of two modules – Persistence Extension which makes writing database oriented tests even easier and Spock Test Runner which gives your Arquillian tests some BDD and Groovy love. One thing which might prove that he is not a total geek is his addiction to alpine skiing. He used to play Go game.

Владимир Иванов

Владимир Иванов

Oracle, Россия
Владимир является сотрудником компании Oracle и работает в группе разработки HotSpot JVM над JIT-компиляторами. Помимо плотной работы над виртуальной машиной Java от Oracle, принимал активное участие в большом количестве проектов, связанных с JVM и JDK в целом (например, Java Real-Time System, JavaFX).

Антон Кекс

Антон Кекс

Codeborne, Эстония
Антон Кекс является мастером создания софта от начала до конца, одним из основателем компании Codeborne, единственной в Прибалтике занимающейся экстремальным программированием (XP), регулярным докладчиком на конференциях и лектором в Таллинском Техническом Университете. Он также искренне верит в открытый код и методы гибкой разработки (agile), является автором популярного во всём мире сетевого сканнера – Angry IP Scanner, и регулярным комиттером в другие проекты свободного ПО. До основания Codeborne Антон в течение 5-ти лет руководил командой разработчиков интернет-банка Swedbank, получившего множество наград, постепенно вводя в использование методы Agile. В то же время он основал организацию Agile Estonia, организующую регулярные конференции по теме Agile. В свободное время он играет на гитаре и дарбуке, катается на мотоцикле и путешествует в отдалённые уголки мира.

Олег Шелаев

Олег Шелаев

ZeroTurnaround, Эстония
Олег Шелаев – инженер компании ZeroTurnaround, где он занимается проблемами деплоймента Java приложений в рамках проекта LiveRebel. В этом ему помогает пятилетний опыт разработки как стандартных Java веб-инфосистем, так и полностью in-house решений на Java SE.

Олег – частый участник Java конференций и любит путешествовать. В свободное от работы время Олег учится в докторантуре Тартуского университета и там же работает лектором и тренером ACM ICPC команд. Одними из его любимых занятий являются игра в шахматы и решение головоломок.

Елена Сирота

Елена Сирота

EPAM, Украина
Опыт в IT 15 лет. Языки, с которыми были связаны проекты: C++, PL/SQL, Java. Работала на разных позициях – от разработчика до технического руководителя проекта. Сейчас занимается подготовкой младших разработчиков в компании EPAM Systems (Киев), преподает в НТУУ КПИ. Активный участник JUG KPI.

Роман Сорока

Роман Сорока

EPAM, Украина
Роман работает Java разработчиком в EPAM Systems. Кроме многих достижений внутри компании, Роман активно занимается Community работой в JUG KPI, регулярно выступая с интересными докладами о последних технологиях в JVM-мире.

Иван Соболев

Иван Соболев

Lohika, Украина
5 лет разрабатывает распределенные системы в распределенных командах, прошлый год – в качестве лида. В свободное от разработки время автоматизирует тестирование и наблюдает за детищем. Его радуют велосипеды, альтимейт фрисби и горы.

Дмитрий Чуйко

Дмитрий Чуйко

Oracle, Россия
Сотрудник компании Oracle с 2012 года (Java Platform), до этого занимался разработкой ПО, от мобильного до серверного. В прошлом сотрудник Deutsche Bank, QuickOffice, Yota, Borland. Выпускник СПбГУ.

Виктор Полищук

Виктор Полищук

Инфопульс, Украина
Практикующий Java технический лидер компании Infopulse Ukraine. Более 10 лет занимается профессиональной разработкой программного обеспечения из которых примерно 8 на Java. Эксперт в разработке на Java и JavaScript. Умен, талантлив и безумно харизматичен.

Дмитрий Лазаренко

Дмитрий Лазаренко

Jelastic, Украина

Более чем 8-летний опыт проектирования и разработки на Java: высоконагруженных информационных систем и интеграционных решений. Руководитель интеграционного направления компании Jelastic, основное направление деятельности которого заключается в предоставлении облачного хостинга для новых и уже существующих Java и PHP приложений.

Евгений Геращенко

Евгений Геращенко

JetBrains, Россия

Последние полтора года работает над языком программирования Kotlin, в том числе над взаимодействием с кодом на Java и плагином к среде IntelliJ IDEA. До этого занимался интеграцией с VCS в системе языково-ориентированного программирования JetBrains MPS. Опыт программирования на Java около пяти лет. В прошлом учил программированию школьников и студентов.

Наталья Ухорская

Наталья Ухорская

JetBrains, Россия

Работает в компании JetBrains со середины 2011 года, с самого начала в проекте Kotlin. В проекте в основном занимается back-end (генерацией bytecode), а также плагином к Intellij IDEA. До этого занималась реализацией Kotlin Web Demo.

Anton Moiseev

Anton Moiseev

Farata Systems, Russia

Anton Moiseev has been developing enterprise applications for 8 years with Java, JavaScript, and .NET technologies. He has a solid background developing rich Internet applications using various platforms. Currently he’s building e-Commerce applications based on Java EE platform. Anton has a strong focus on Web technologies implementing best practices to make the front-end work seamlessly with back-end. He’s a huge enthusiast of JavaScript and HTML5.

Николай Чашников

Николай Чашников

JetBrains, Россия

Имеет 10 лет опыта коммерческой разработки на Java, последние 7 лет работает над продуктом IntelliJ IDEA в компании JetBrains. Занимался внутренней build-системой, интеграцией с application servers, поддержкой фреймворков Google App Engine и Google Web Toolkit, инфраструкторой для поддержки дебаггеров для разных языков и многими другими частями продукта.

Алексей Резчиков

Алексей Резчиков

Cogniance, Украина

Опытный Java разработчик и тимлид. В разное время работал project, resource, development и competency manager. Последователь Agile/Lean, а также сторонник XP инженерных практик. В данный момент занимается консалтингом по Testing Automation, Continuous Integration & Continuous Delivery. Активно пропагандирует использование Spring Framework в рамках проекта SpringByExample.com.ua.

Сергей Моренец

Сергей Моренец

Provectus IT, Украина

Ведущий Java-разработчик в компании Provectus IT. Опыт в разработке более 12 лет, из них 8 лет Java(SE, EE), год работы руководителем команды в Exigen Services. Перешел на Java после 4 лет работы с Visual Basic и C#. Основным для себя направлением считает разработку enterprise приложений под Java EE с использованием баз данных (Oracle, MySQL).

Иззет Мустафаев

Иззет Мустафаев

EPAM, Украина

Работает с Java с 2007 года в EPAM Systems. Участвовал в разных проектах с разной сложностью от разработчика до системного архитектора. Активно продвигает идеи Agile, Clean Code и TDD практики в массы. Активный член EPAM Kyiv Agile User Group and JUG KPI.

Владимир Мигуро

Владимир Мигуро

EPAM, Беларусь

Java инженер в компании EPAM Systems, где занимается разработкой и проектированием информационных систем различного уровня сложности. Один из основателей Minsk MongoDB User Group. В последнее время активно работает над MongoDB Java Driver совместно с инженерами из компании 10gen.

Михаил Хлуднев

Михаил Хлуднев

GridDynamics, Россия

Ведущий инженер по поиску. Года три тому назад в процессе работы над поисковой eCommerce платформой обнаружил, что классические подходы к поиску не работают для магазинов. О чем до сих пор оживлённо рассказывает. До поиска в основном занимался высоконагруженными eCommerce приложениями. Интересуется и имеет мнение по широкому кругу вопросов, начиная от архитектуры и алгоритмов вплоть до тестирования и командного духа. Мечтает писать на Clojure, но из-за занятия поиском шансы на это пока невелики.

Константин Кривопустов

Константин Кривопустов

Haulmont, Россия

Технический директор Haulmont, архитектор и один из основных разработчиков платформы CUBA, являющейся основой всех продуктов компании. Опыт работы с Java – 10 лет, всего опыт разработки бизнес-приложений – более 15 лет. Начинал с участия в разработке тиражируемой системы управления предприятием, затем MES для автомобильного производства. В 2006-2008 годах был техническим руководителем проекта для Addison Lee – крупнейшего оператора minicabs (такси) в Лондоне, предъявлявшего жесточайшие требования по производительности и отказоустойчивости решения. В данный момент занимается разработкой ядра платформы, вопросами модульности и отказоустойчивости приложений, а также руководит созданием инструментов, повышающих эффективность процесса разработки ПО.

Иван Лаппо

Иван Лаппо

Backendless Corp., Украина

Ведущий Java разработчик Backendless – облачной платформы, предоставляющей бэкенд как сервис. Ранее Иван занимался разработкой сложнейших облачных решений таких как CloudPuncher и продукты линии WebORB. Иван – эксперт во внедрении энтерпрайз приложений и решении проблем взаимосовместимости и производительности.

Роман Шрамков

Роман Шрамков

EPAM, Украина

Chief Software Engineer в EPAM Systems, практикующий адвокат Agile в управлении корпоративными проектами, активный двигатель технических практик таких как Clean Code, refactoring, TDT и Pair Programming. В IT индустрии уже более 10 лет, 7 из которых связаны с построением крупных корпоративных Java приложений. За это время успел поучаствовать во множестве проектов в том числе и как архитектор. Сейчас использует накопленный опыт для постановки процессов разработки ПО и консультирования в области дизайна и технических практик.

Виктор Цикунов

Виктор Цикунов

Microsoft, Украина

Консультант по стратегическим технологиям – Windows Azure. Эксперт по облачным технологиям Microsoft. Опыт в ИТ более 10 лет. Последние 7 лет в компании Microsoft занимался продвижением серверных продуктов и работой с корпоративными клиентами.

Игорь Анищенко

Игорь Анищенко

Lohika, Украина

Java разработчик компании Lohika c опытом более 5 лет разработки ПО. Имеет большой опыт работы с различными Java-технологиями. Работал в должности Java Developer, Team Lead на проектах компании Hewlett-Packard и занимался разработкой agentless monitoring software. Занимается разработкой распределенных систем хранения и обработки больших объемов данных в облаке на базе NoSQL решения Cassandra и MongoDB.

Paweł Lipiński

Paweł Lipiński

Pragmatists, Poland

A programmer with over 14 years of professional experience, solution architect, team coach and trainer in agile processes and practices. Frequent speaker on Java and Agile conferences. Co-creator of Agile Warsaw group. Author of tumbler-glass, a BDD framework for Java. For over 3 years leads a software house in Warsaw called Pragmatists, this way he’s realising and verifying what he talks about.

Владимир Кириллов

Владимир Кириллов

Universal Mind, Украина

Молодой инженер в самом расцвете сил. Эксплуатировал много джавы в цдн, доэксплуатировался и начал на ней писать. Потом уволился, пришел на другую работу, а там опять джава. Решил писать на Clojure и очень доволен. В мире IT известен как @darkproger.

Олег Цаль-Цалько

Олег Цаль-Цалько

EPAM, Украина

Senior Java Developer in EPAM Systems. Mostly working with enterprise business applications. Member of LJC and JUG KPI communities. Also involved in Adopt JSR program. Last time interested in Cloud computing, NoSQL and Scalability/HA aspects in general. Looking forward to learn more from other professionals and to share my knowledge with others. Love skiing and good company…

Алексей Фёдоров

Алексей Фёдоров

Oracle, Россия

Занимается разработкой на Java больше шести лет, последние два из которых прошли в Java-подразделении компании Oracle в команде Java Compatibility Kit (JCK). Является лидером петербургской Java User Group и организатором петербургской Java-конференции JPoint, собравшей в этом году более 500 Java-специалистов уровня Middle/Senior. Так же развивает сообщество CodeFreeze в Петербурге и Москве. Время от времени выступаю на различных айтишных мероприятиях на технические и нетехнические темы.

Александр Белокрылов

Александр Белокрылов

Oracle, Россия

Руководитель программ для Java разработчиков в Oracle. Работает в информационных технологиях более 15 лет, и прошел путь от инженера до руководителя. Разрабатывает программу для конференции JavaOne Russia. Один из создателей активный участник сообщества JUG.RU.

Андрей Дмитриев

Андрей Дмитриев

Quickoffice, Россия

Разработчик программного обеспечения с опытом разработки коммерческих продуктов более 10 лет. Участвовал в создании и поддержке графического стека JavaSE: awt/Swing/JavaFX. В настоящее время руководит разработкой офисного приложения Quickoffice для платформы Android. В свободное время читает курсы по Java и Software engineering и участвует в развитии JUG.RU.