Here you can find the sessions that I have presented on conferences like JavaOne, JFokus, Devoxx FR, Geecon or Java2Days. You can also find new ideas for sessions I’m working on. If you are looking for speakers to your conference or company, I’ll happily give any of these sessions to you. Feel free to contact me about it.
Five Ways to Not Suck at Being a Java Freelancer
Do you ever wanted to have a freelance experience, but don’t know how to get started? Do you think that becoming a freelancer is too much of a risk to trade with your stable job and steady income? Do you want to control and steer every aspect of your professional career without relying on someone else doing it for you? Maybe you feel unhappy with what you are doing and need a change? Or maybe you’re just adventurous enough and willing to try something different! Come to my lightning talk where I’ll discuss a few major points about doing freelance based on my own personal experience in the Java world, and hopefully this will help you clear up your mind and make your own decision about trying to freelance someday.
Java EE 7 Batch Processing in the Real World
This talk will explore one of the newest API for Java EE 7, the JSR 352, Batch Applications for the Java Platform. Batch processing is found in nearly every industry when you need to execute a non-interactive, bulk-oriented and long running operation task. A few examples are: financial transactions, billing, inventory management, report generation and so on. The JSR 352 specifies a common set of requirements that every batch application usually needs like: checkpointing, parallelization, splitting and logging. It also provides you with a job specification language and several interfaces that allow you to implement your business logic and interact with the batch container. We are going to demo a real life example batch application, starting with a simple task and then evolve it using the advanced API’s until we have a full parallel and checkpointing reader-processor-writer batch. By the end of the session, attendees should be able to understand the use cases of the JSR 352, when to apply it and how to develop a full Java EE Batch Application.
The 5 people in your organization that grow legacy code
Have you ever looked at a random piece of code and wanted to rewrite it so badly? It’s natural to have legacy code in your application at some point. It’s something that you need to accept and learn to live with. So is this a lost cause? Should we just throw in the towel and give up? Hell no! Over the years, I learned to identify 5 main creators/enablers of legacy code on the engineering side, which I’m sharing here with you using real development stories (with a little humour in the mix). Learn to keep them in line and your code will live longer!
Development Horror Stories
We all enjoy to hear a good success story, but in the software development industry the life of a developer is also made up of disasters, disappointments and frustrations. Have you ever deleted all the data in production? Or maybe you just run out of disk space and your software failed miserably! How about crashing your server with a bug that you introduced in the latest release? We can learn with each others with the mistakes we made. Come to this BOF and share with us your most horrific development story and what did you do to fix it.
Java EE 7, what’s in it for me?
The latest version of the Java EE plataform had three major goals. First, improve developer productivity by introducing more annotations and removing boilerplate code to simplify integration with the plataform. JMS 2 is the perfect example; Second, add first-class support for web standards, including a new API to build WebSockets, a new API to parse, process and generate JSON and a new Client API in JAX-RS 2 to invoke RESTful services; Third, meet the enterprise demands. The long awaited Batch Processing API is now available to build batch processing applications using all the capabilities of the platform itself. The Concurrency Utilities API provides you with asynchronous capabilities. This session will explore all the new features introduced in Java EE 7 and share information to learn, develop and contribute.
Maven – Taming the Beast
Love it or hate it (and a lot of people seem to hate it), Maven is a widely used tool. We can consider that Maven has been the de-facto standard build tool for Java over the last 10 years. Most experienced developers already got their share of Maven headaches. Unfortunately, new developers are going through the same hard learning process, because they don’t know how to deal with Maven particularities. “Why is this jar in my build?”, “I can’t see my changes!”, “The jar is not included in the distribution!”, “The artifact was not found!” are common problems. Learn to tame the Maven Beast and be in complete control of your build to save you countless hours of pain and frustration.
Migration tales from Java EE 5 to 7
Are you still stuck in Java EE 5? Eager to move and boost the developer productivity with all the cool things introduced in Java EE 7? Join us to hear some of the solutions we had to implement to completly migrate an application called Segurnet from Java EE 5 to Java EE 7. Expect a very technical session where we are going to look into the details.Segurnet is a platform held by APS (Portuguese Insurance Association) that serves as an integration network for the Insurance sector in Portugal for the last 20 years, with other 33 thousand active users.
Apache Tomcat to Apache TomEE in 1-n Steps
Everyone knows Tomcat, probably the most used Web Server and Servlet Container in the Java world, but have you heard about TomEE before? TomEE brings Java EE to the Tomcat plataform. With TomEE you can start developing your applications using a Java EE Web Profile Certified Server, but still keeping yourself familiar with the standard Tomcat tools. For this session, we will pick the popular JPetStore 6 sample and modify it to demonstrate a transition from Tomcat to TomEE.