Conference program is almost ready and detailed schedule for main conference days is published. CHANGES ARE STILL POSSIBLE. If you have any questions related to the program and talk submission please send them to firstname.lastname@example.org.
Training days (May 21-22)
!!! Attention !!! Registration on training days and payment for them should be done separately from main conference days. Follow conference program and announcements on the conference site to choose the most suitable trainings.
|May 21||May 22|
Detailed schedule on May 23
– presentation in English.
Detailed schedule on May 24
– presentation in English.
Spring configuration: how to do it right (experience report)
OOP paradigms, basics of good design and architecture for Java based systems
In this presentation, we will look at some advanced uses of reflection to delegate method calls automatically, to determine where we are being called from and to create new enum values dynamically for unit test purposes, including modifying the switch statements on-the-fly. We will look at how we can use the stack information to determine the class type in a static context. We will demonstrate how Externalizable allows the private state of an object to be read and then modified. Lastly we will demonstrate how we can construct new objects without calling any of the available constructors. This talk will be aimed at the advanced Java specialist who does not shy away from reflection code. Topics from the Java Specialists Newsletter and related research.
Bootiful’ code with Spring Boot
A Little REST with JAX-RS 2.0 and Java EE 7
Holding down your Technical Debt with SonarQube
In this session I’m going to talk about technical debt, the code quality factors, the SonarQube’s core ideas and its star features that simplify the process of tracking and improving software quality.
Groovy for Java Developers
Developing desktop and mobile applications in HTML5 for Java Developers
The way to know how your app is really perform with metrics by Coda Hale
Type Driven Development
I would like to show some Scala code examples which (hopefully) prove this statement is not correct – starting from basic ones, such as avoiding null pointers, and moving towards more complex ones – coming from libraries such as Scalaz and Shapeless.
JavaFX: Tools of the Trade
Easy Distributed Systems using Hazelcast
Yeah, TRUE real time web applications, no more hacks (a hack session)
HTML5 specification includes the WebSockets (WS) protocol, I will deep dive into the specification by introducing the Websocket protocol, API and working mechanism, alongside intro to the most widely used data exchange schema between front and back end, the JSON API.
In addition, there is a brief comparison of traditional HTTP & WS, followed by covering of how WebSockets works. You will see how using WS removes the overhead of heavy HTTP request and response headers with real case study. Finally, we will review the code of the Web app build on GlassFish 4 app server.
Tooling of a Test-Driven Developer
Developing Native & Hybrid Android mobile Apps, with Netbeans 7.4+
Importantly, we will go through 10 minutes of creating, building, and compiling a simple hybrid/native mobile application using PhoneGap and deploying it on android emulators. So what are you waiting for? Click to enroll!
Dining Philosophers Strike Back
I think that a majority of JEEConf participants wrote multithreaded code, at least, once. Among this majority, almost all people know what is deadlock. And many of these people know how to fight with deadlocks.
Or they just THINK they know it?
In my talk I consider the classical problem of Dining Philosophers. We will consider different solutions of it (implemented in Java) and see what are the dangers of each of them.
Automate Your Home with Java Embedded
From this talk you will learn what kind of Java platform is better to use for different cases. What kind of hardware supported by Java Embedded. What are the differences between the platforms. You will also get a notion of how to manipulate with UART, I2C, and SPI interfaces by using Java API. You will see an impressive demo of the Java based home automation system. This talk will train you, so that you’ll be able to start making your own home automation system in Java.
If you are a Java developer and would like to try the same developer experience on Embedded devices, this session is great choice for you.
Zulu: OpenJDK for cloud and enterprise
Spring 4, Java EE 7 or Both?
In this session I will build an application using Spring 4, then build the same application using Java EE 7 and at last build it again using a combination of the two.
Strengths and weaknesses with the three approaches will then be explored and lessons learned summarized.
Java8: Stream Style
This session presents the Streams API and examples how to get the best performance and scalability using the library.
Don’t tell me how to bring your beer
Java Concurrency Under The Hood
The session starts with a theoretical overview of the subject, and then moves on to a hands-on OpenJDK digging. We will cover implementations of synchronized and volatile. We will learn what a memory barrier is, and why everyone loves x86. Last but not least, we will do some very convoluted stuff to HotSpot.
Java8: Advanced Stream Techniques
Java Memory Model Pragmatics
In this talk, we will follow the logic of the model; review what pragmatic results the model was trying to achieve; look closely at the real world limitations the model had to endure; see how JMM tries to balance between developers’ needs and runtime/hardware maintainers requests.
Java Benchmarking: Easy Peasy, Right?
In this talk, we will see how does one uses benchmarks to measure the application performance, what mistakes are usually done in the course of that work, how to avoid those mistakes, and all-in-all how to get any sensible data from the world where everything depends on everything.
We will use Java Microbenchmark Harness (JMH), the standard harness in OpenJDK, in our tutorials.
Memory leak verification
Cooperation between Java compilers and IDEs
I’m going to talk about cooperation between Java-compilers and IDEs: how compiler can help IDE and how IDE can help compiler, and what features of javac make this a challenging task. Also I’ll show how to write a correct Java program which cannot be compiled.
Improve yourself through practice
Test with Spock and enjoy the life
In-Memory Data Grids Essentials: Oracle Coherence
Apache Lucene/Solr Internals
In-Memory Data Grid – an essential part of your architecture
- Why IMDGs are one of the primary approaches for building of BIG low latency applications.
- What are typical scenarios when you should consider using of an IMDG.
- Who are the major players, brief overview of existing implementations.
- Is it really so fast, some numbers from our lab.
Handling 20 billion requests a month? Easy!
Mobile functional testing with Arquillian Droidium
Extremely rapid application development with Apache Isis
Isis’ focus is on domain-driven design, with the emphasis on the bit that matters: the domain. The productivity and clean architecture comes about by omitting all the irrelevant artifacts of a custom-coded n-layer architecture (views, controllers, commands, persistence); you build your app solely and entirely by writing the core domain objects.
There’s a pattern for this type of approach: naked objects. Isis automatically provides a webapp UI inferred directly from the structure and behaviour of your domain objects. What’s more, Isis also makes your domain model accessible through REST following the “Restful Objects” specification.
Rapid Development of Big Data applications using Spring for Apache Hadoop
- High level APIs for different aspects
- Modularity & Testability
- Integration with Spring Batch and other Spring projects
- Extensibility & Caveats
Legacy projects: how to win the race
I have a decent experience with such projects and often after some work can be proud because the application receives a new life and a customer/product owner saves some budget. However, only few have the same passion for “deadly sick” projects so I would like to share the knowledge, how-to’s and recipes of handling those fragile but stubborn folks – legacy projects.
Web Apps in LISP!? EWW!
This talk will walk you through galaxies of the magical Clojure Web Universe. We’ll witness the beauty of client side (ClojureScript) core.async, and will time travel together on the shoulders of Om [Facebook’s React + Clojure Love]. The idea is to show that LISP is not only nothing to be afraid of, but also is a JVM Super Power of Simplicity that allows you to focus on creation rather than on “xyz framework specifics”.
Serialization and performance
During past years Java industry has released a lot of new frameworks, libraries and custom data formats to support and improve serialization for Java community. We will review the most popular frameworks, talk about usage and differences and analyze the performance testing. This seminar will be useful for everyone who wants to receive new knowledge or apply new persistence techniques in his project.
ScalaCheck: Property-based testing for Scala and Java
The Groovy Ecosystem
- Frameworks Grails, Griffon, Gaelyk
- Build Systems Gant, Gradle
- Testing Easyb, Spock
- Code Quality CodeNarc, GMetrics
- Libraries GPars, GContracts.
Memes and Cargo Culting in Java
Web application development with no front-end skills
- true Object-Oriented Programming (inheritance and composition)
- an abstraction over Web request/response with Event-Driven Programming
- data binding
- server push
Even better, Vaadin compiles to bytecode and if necessary, is extensible on the client-side. In this presentation I will demo those features to give a taste of how easy it is to develop with Vaadin.
Dart for Java Developers
Streamline your processes with jBPM 6
In this talk you will learn:
- why are business processes useful in information systems
- what are the most important jBPM 6 features in kie workbench and engine
- how to embed jBPM into a web application (CDI, EJB, JSF) as a workflow engine library
Spring the Ripper
Here are several topics about Spring internals, which will be covered during this session (with examples for each one):
- What is Spring impact on the performance of your application?
- What are the phases of Spring lifecycle?
- What is ApplicationContext structure?
- “You can’t do it with Spring!” – or maybe you can?
BDD and browser automation with Geb and Spock
Grails for Rapid Application Development
ESB. Mule ESB. From zero to Hero.
XP Injection / ZoralLabs, Ukraine
Java Tech Lead and Scrum Master. Expert in Java development, scalable architecture, Agile engineering practices and project management. Having more than 9 years of development experience, specializes on complex distributed scalable systems. Active participant and speaker of many international conferences. Founder and coach in training center XP Injection. Organizer and founder of Selenium Camp, JEEConf, XP Days Ukraine and IT Brunch conferences. Founder of active “Anonymous developers club” (uadevclub).
Heinz Kabutz is the author of The Java Specialists’ Newsletter, a monthly publication that looks at advanced core Java topics. He has been programming and consulting on Java projects since 1997 and has trained thousands of programmers on advanced Java techniques.
Farata Systems, USA
Yakov Fain is Managing Director at a software boutique Farata Systems. 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. Yakov is Java Champion. Yakov leads Princeton Java Users Group. This year he co-authored O’Reilly book “Enterprise Web Development” and is working on new version of “Java for Kids” book to be published by No Starch Press. His free video lessons on Intro to Java programming are being published at YouTube channel.
Josh Long is the Spring Developer Advocate. Josh is the lead author on Apress’ Spring Recipes, 2nd Edition, the O’Reilly “Pro Spring Roo” book, the Pearson “Livelessons for Spring” and a committer on several Spring projects and the Activiti BPMN framework. When he’s not hacking on code, he can be found at the local Java User Group or at the local coffee shop. Josh likes solutions that push the boundaries of the technologies that enable them. Josh’s interests include big-data, mobile, REST, NoSQL and integration. He blogs on the Spring blog and [on his personal blog].
Cacoethes Software, UK
Peter is a long time Java developer, Grails user, core committer, plugin author, and co-author of the book Grails in Action with Glen Smith. With a passion for how new technology can help developers get stuff done, he has worked with lots of open source projects and attempts to make the ones he likes more accessible. He is currently immersed in the Groovy ecosystem. This comes on top of more than 10 years experience in software development, from C to pure servlet development, to modern web apps.
Consultant and author Adam Bien is an Expert Group member for the Java EE 6 and 7, EJB 3.X, JAX-RS, and JPA 2.X JSRs. He has worked with Java technology since JDK 1.0 and with Servlets/EJB 1.0 and is now an architect and developer for Java SE and Java EE projects. He has edited several books about JavaFX, J2EE, and Java EE, and he is the author of Real World Java EE Patterns—Rethinking Best Practices and Real World Java EE Night Hacks—Dissecting the Business Tier. Adam is also a Java Champion, Top Java Ambassador 2012, and JavaOne 2009, 2011, 2012 and 2013 Rock Star. Adam occasionally organizes Java EE workshops at Munich’s airport (http://airhacks.com).
FoodTec Solutions Inc., Greece
Patroklos Papapetrou is a Java architect, addicted to software quality and an agile team leader with more than 15 years of experience in software development. He believes and invests in people and team spirit seeking quality excellence. He’s co-authoring “SonarQube in action” book, he is an active SonarQube community member and plugin contributor. He treats software systems as flowers that’s why he prefers calling himself a software gardener.
Maciek Próchniak is algebraic topologist, for more than 8 years developing on JVM for food and pleasure. This includes various subjects varying from architecture to operations and from integration to web development. Recently trying hard to code more functionally, preferably in Scala. Likes to speak at conferences from Bergen to Cairo on wide range of topics – from Scala type system to noSQL databases. For 5 years happy @ TouK, and even more happy husband and father.
Canoo Engineering AG, Germany
Gerrit Grunwald is a software engineer with more than eight years of experience in software development. He has been involved in Java desktop application and controls development. His current interests include JavaFX, HTML5, and Swing, especially development of custom controls in these technologies. Grunwald is also interested in Java-driven embedded technologies. He is a true believer in open source and has participated in popular projects like JFXtras.org as well as his own projects (Enzo, SteelSeries Swing, SteelSeries Canvas). Gerrit is an active member of the Java community, where he founded and leads the Java User Group Münster (Germany), he co-leads the JavaFX and IoT community, is a JavaOne rockstar and Java Champion. He is a speaker at conferences and user groups internationally.
Peter is Solution Architect and Senior Developer working at Hazelcast where he focuses mostly on the Hazecast core, the reactive programming model or the monitoring solutions. He is currently “writing the book” on Hazelcast. In the past he has been working on Open Source project like Multiverse: STM for Java and Akka.
Software architect with +10 years experience in demanding environments, meaning a wide range of customers and contexts (such as telco, banking, insurances, large retail, public sector, …). Mainly focused on Java and JavaEE technologies, but specific interests like Software Quality, Build Processes and Rich Internet Applications.
A Systems Architect, Java team leader, and consultant with around 12+ 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. Consultant / Architect for startup companies.
A JCP & EC (Executive committee) member at Java Community Process Organization. Working on many JSRs especially JEE7, 8 umbrella JSRs / Glassfish 4 evaluation and testing, and a member of Adopt-A-JSR, Adopt-OpenJDK, and FishCAT programs.
Member of MoroccoJUG and EGJUG, & Founder of JCP activities program group of EGJUG. Won the 11 annual JCP awards 2013 for Outstanding adopt-a-JSR participant. An Oracle Egypt Architects Club board member, with responsibility to define and put the correct architecture reference solutions for Oracle customer’s projects in EMEA.
Java developer for more than seven years. The last three years working in Oracle (Java Compatibility Kit, Java Platform Group). Leader of the St. Petersburg Java User Group, and CodeFreeze community, organizer of Russian Java conferences JPoint and Joker. Interested in multithreaded programming, psychology, the history of European philosophy and trash culture. Collects weapons, software engineering trade-offs and black unread books.
David Delabassee is a Software Evanglist working for Oracle. Prior to Oracle, David spent a decade at Sun Microsystems focusing on Java end-to-end (from the smart card to the high end server), related technologies and developer tools. In his various roles, David has been involved in numerous Java projects since the early days of this technology. David lives in Belgium and in his spare time, he enjoy tinkering and playing with technologies such as Java, Arduino, Linux, Home Automation, etc. You can follow David on Twitter under @delabassee.
Alexander have spent more than 15 years in IT industry. Grown from an engineer to a manager. Currently works as a product manager for Java ME Embedded at Oracle in Saint-Petersburg, Russia. Co-founder of JUG.ru community in Saint-Petersburd. Java and embedded devices enthusiast. Spoke at JavaOne Russia, JavaOne San Francisco, Java Days, Joker, and other conferences.
Azul Systems, Russia
JVM developer at Azul Systems. Leads the development afford at the Zulu project at Azul. Ivan has been in JVM development since 2005. For several years he was a developer at the Hotspot Runtime team and made multiple code submits into JDK 6 and 7. After stepping away from compiler work at AMD he returned to JVM development at Azul Systems.
Ivar Grimstad is an experienced software architect with a strong focus on Enterprise Java. He has been working with Java since the beginning and has over the years tried out everything from lightweight mobile applications to large scale enterprise applications. His experience covers all aspects of designing architectures based on a variety of technologies including standard Java EE as well as more lightweight frameworks such as Spring and a variety of open source products.
Ivar is always focusing on quality and on using the right tools and technologies for the right task to optimize the software development process. Ivar is a frequent speaker at conferences, locally as well as internationally.
Primary skills of Sergey are performance engineering, benchmarking, JVMs, JIT compilers, and class libraries. He has been accelerated JVMs since 2005 when he worked for Intel in Apache Harmony Performance team. Recently he is working on JDK8 Lambda Project performance.
Deutsche Bank, Russia
A high-performance fault-tolerant backend application engineer. Financial systems have received the most attention of all. Do a lot of digging and experimenting with OpenJDK in my spare time.
Aleksey is the Java SE Performance Engineer working for Sun/Oracle for 5 years. The primary skills include performance engineering, benchmarking, JVMs, JITs, and class libraries. Maintains multiple projects, including jmh, jcstress, and jol. Prior joining Sun, Aleksey was employed by Intel where he worked in Apache Harmony performance team for 3+ years.
Co-founder of Plumbr, the memory leak detection product, where he now contributes as core developer. Besides his daily technical tasks he is an active blogger, JavaOne RockStar and frequent conference speaker (Devoxx, JavaOne Russia, 33rd Degree, TopConf, JavaDay, GeekOut, Joker, Jazoon etc).
Prior to founding Plumbr, Nikita was a Java EE developer and performance consultant in the Baltics, and has worked with tens of different Java EE applications over the years. In the last four years he specialized in troubleshooting and performance optimization.
A programmer with over 15 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 5 years leads a software house in Warsaw called Pragmatists, this way he’s realising and verifying what he talks about.
Nikolay has over 10 years of professional experience with Java-related technologies. During the last 8 years he were working on IntelliJ IDEA project in JetBrains. He participated in development of the internal build system and integration with applications servers, implemented plugins for Google Web Toolkit and Google App Engine, developed the core of the debugger subsystem used for different languages and worked on many other parts of the product.
Lead Software Engineer at EPAM Systems. Speaker, active member of Kiev JUG. Participate in different educational initiatives and JCP/AdoptJSR programs. Passionate developer. Looking forward to learn more from other professionals and to share his knowledge with others.
Self employed, Israel
Since 2001 Evgeny was working as Java Developer, Team Leader, Java Architect and Java Trainer. Today he has his own consulting company.
Grid Dynamics, Ukraine
Lead Java engineer with more than 10 years of hands on experience. The main focus in the last years is on development of highly loaded eCommerce services platforms. Participated in projects connected with investigation and improvement of distributed applications stability and performance; research and application of different software design solutions based on Oracle Coherence, Ehcache, Cassandra.
Grid Dynamics, Ukraine
Anatoliy is passionate software engineer with different obligations, responsibilities and titles, depending on customer, project and time of the year. Adores programming, his wife and cycling.
Solution Architect at EPAM Systems. I lead JEE projects for many years and have a lot of interesting stories to talk about. One of my focus areas is Agile and XP development and adaptation of these approaches for different cases. Often I can be found discussing new technologies and architectural solutions with other people.
Java Team lead with 9+ years experience. For last 6 years working mostly on advertising projects. Designed scalable, high-load, distributed adertising systems. Closely working with big data and related tech stacks. Specializing on performance optimization and improvemnets. Have big experience with different no-sql solutions.
Red Hat, Czech Republic
What was only his hobby ended up as his job he loves – doing open-source, coding in Java and working for Red Hat as mobile quality engineer. Stefan provides new blood to Java and Java EE ecosystem. He is mostly contributing for Arquillian testing platform where he leads Arquillian Droidium and mobile continuous integration is his everyday bread. He is succesfull participant of Google Summer of Code 2013 and he loves pushing new code to upstream. Stefan is not scared by functional languages either. He hacks around Scala from time to time as well.
Jeroen van der Wal
As an entrepreneur and code junkie Jeroen is always looking for the silver bullet in software development. After a 25-year long journey along numerous platforms, languages and paradigms he discovered the Apache Isis project and helped that mature into a state-of-the-art framework for domain driven development. With a small team he is leveraging Apache Isis to deliver mission-critical enterprise applications to customers all over the world.
Zenyk Matchyshyn is a consultant/architect working for Lohika. His primary focus is consulting on advanced technologies for technological startups. He’s been doing software development since 2002, using Spring since 2005, and Hadoop since 2009. The main areas of interest are Big Data, Semantic Technologies, Robotics, and Machine-to-Machine interfaces.
Chariot Solutions, USA
Anatoly Loves People, Music and Coding. He went from “ZX Spectrum The Great” to z/Series and then back to human oriented hardware. He works at the Chariot Solutions where he has an opportunity to hack on Clojure, Scala, Java, Mobile and this thing people call big data. In his free time he drinks scotch, smokes hookah and jams some guitar chords with others, and then some.
Sergey works in IT since 2000 with 10 year of Java SE/EE experience. Occupied senior Java developer/Team Lead positions in more than 15 Java projects. Winner of 2013 JBoss Community Recognition Award.
Itera Consulting, Ukraine
Developer with 10+ years experience in different fields: from viral advertisements in social networks, to financial and internet search applications.
Software engineer working in EPAM Systems with primary skills in Java, with hands on Ruby/Groovy.
Participated in many different projects as a developer and architect. Actively promoting XP and Clean Code habits. Active member of EPAM Kyiv Agile User Group and JUG KPI, participated in JEEConf, XPDays, AgileEE, JavaDay, EPAM SEC in 2013.
Farata Systems, Russia
Anton is a software developer. He’s been developing enterprise applications for 7 years with Java 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 the back-end. He’s a huge enthusiast of programming languages.
Red Hat, Czech Republic
Jiri has been working as a quality assurance engineer for Red Hat for almost three years. He focuses mainly on jBPM business process suite; performance testing in particular. He enjoys learning new technologies from Java EE world and middleware.
Bogdan is lead developer in successful financial startup TransferWise. Inspired by extremely dynamic growing environment he became adept of agile methodologies and rapid application development tools. Always thirsty for a new knowledges and happy to share his experience with others. He helps people to understand magic of Groovy World as a teacher of GeekHub program.
Canoo Engineering AG, Switzerland
Andres is a Java/Groovy developer and Java Champion, with more than 14 years of experience in software design and development. He has been involved in web and desktop application developments since the early days of Java. He has also been teacher of computer science courses in the most prestigious education institute in Mexico. His current interests include Groovy, Swing and JavaFX. He is a true believer of open source and has participated in popular projects like Groovy, Griffon, Grails and DbUnit, as well as starting his own projects. Founding member and current project lead of the Griffon framework. He blogs periodically at http://jroller.com/aalmiray. He likes to spend time with his beloved wife, Ixchel, when not hacking around.
Bohdan works as Java/JEE developer/tech/team lead/architect since 2003. At the moment working as Java tech lead in the one of the most successful security/SSO sturtup in the word. Last several years mainly concentrate on develop/design SOA/SAAS applications. Since 2011 co-leader Lviv Java User Group.