Have something interesting to share with Java Eastern Europe community?
Become a speaker now
Dmitry Vinnik

Dmitry Vinnik

Senior Software Engineer at Salesforce, Canada

Senior Software Engineer at Salesforce, who has been passionate about software quality since the very beginning of his career. Started as a Quality Engineer, he was able to bring test expertise into current role of a software engineer, and ensure a delivery of a high quality product.

In addition to being an Individual Contributor, he is a Scrum Master focused on making his team more efficient and productive.

His background involves studying Medicine, later transition into Bioinformatics field, and now being in a purely Software Engineering-centric area.

Speaker's activity
Aspect Oriented Programming: Hidden Toolkit That You Already Have

Any developer that worked on a software projects, considered at one point few things like how fast his/her function is, how much test coverage do they have, or if there is a better way to recompile their code without a need to restart JVM. All of these questions can be answered by Aspect Oriented Programming.

Aspect Oriented Programming (AOP) is a cross-cutting concern of writing code across modules to bring a common feature to variety of methods, classes and packages. To illustrate, AOP allows developers to see which parts of actual code was triggered by a test, or to see performance metrics of a certain function. These examples can also be extended to how JVM sees source code and goes beyond Hot Swap in recompiling in runtime using Aspect Oriented Programming.

This talk’s main goal is to show a real power of AOP with focus on how it is already used in the industry, and how any engineer can write their own AOP application, or Java Agent. As a part of this talk, the speaker will cover common Open Source Java Agents such as JaCoCo and JMH, and touch based on paid-base Java Agents such as JRebel or AppDynamics.