Amsterdam JUG Meetup at Backbase


Details
Join in with the latest Amsterdam JUG Meetup at Backbase, Oosterdoksstraat 114, 1011 DK Amsterdam.
For more details and discussions on the below, go to bit.ly/join-foojay-slack to join the Friends of OpenJDK (Foojay.io) Slack and use the #jug-amsterdam channel for conversations related to the below.
Agenda
17:00 - Doors Open (And Food!)
18:00 - 18:45 Talk 1: Pratik Patel—Architect's Guide to Managing a Code Base
19:00 - 19:45 Talk 2: Elias Nogueira—Beyond Unit Tests: Practical Tools for High-Quality Java Code
20:00 - 20:45 Talk 3: Brian Vermeer—Breaking AI: Live Coding and Hacking Applications with Generative AI
20:45: Networking
Talk 1: Architect's Guide to Managing a Code Base (Pratik Patel)
As an architect you're often working at a high level on projects, thinking of architectural concerns such as distributed applications, CI/CD pipelines, inter-team APIs, and setting standards.
Code quality affects everything that a software architect needs to work on - from a small way to a big way. We'll look at the common tasks of a software architect, as well as 3 reasons software architects should and should NOT code!
We'll look at techniques and tools for managing code quality from a high and low level. Our goal as architects is to maximize the manageability of code, consider different coding paradigms and their effect on the various areas of software dev, and how to create habits and processes to ensure long term code viability.
Talk 2: Beyond Unit Tests: Practical Tools for High-Quality Java Code (Elias Nogueira)
Embarking on a Java project involves employing the best strategies, patterns, and architectural decisions, all geared towards a customer-centric.
Yet, there exists an often overlooked facet: quality assurance. While not entirely disregarded, we, as developers, sometimes limit ourselves to performing the basic unity and integration tests, which may leave room for bugs.
Fortunately, there are several straightforward approaches and tools that can be implemented to deliver a bug-free project with minimal effort.
During this presentation, you'll gain practical knowledge of the application of the following tools and approaches:
- ArchUnit: Ensuring consistent adherence to architectural patterns, even when multiple developers making changes to the project
- FindBugs: Employing static analysis to proactively identify potential bugs in your code, effortlessly.
- SonarQube: Offering a suite of diverse metrics and enabling the establishment of quality gates to maintain a predetermined standard of quality
- PiTest: Enabling the power of mutation testing to uncover bugs that may otherwise remain concealed.
- TestContainers: Streamlining the process of running various components such as databases, services, and extensions, thereby minimizing the need for manual intervention
Throughout the session, we'll delve into concrete examples, ensuring a hands-on experience.
Talk 3: Breaking AI: Live Coding and Hacking Applications with Generative AI (Brian Vermeer)
Is your organization ready to revolutionize your coding experience with generative AI tools, like copilot, ChatGPT, or code whisperer? Do you know how to code safely with generative AI tools increasing your delivery speed without compromising security?
In this session, we’ll discuss some of the dangers of generative AI, including hallucinations and security risks. We’ll live code a Spring coffee shop application using copilot, and ChatGPT, and live hack the results, showing how the generated code can be exploited in a running app. We’ll uncover generated SQL injections, Cross site scripting, directory traversal and more.
Don't miss this electrifying opportunity to explore the cutting edge of coding technology. Join us and embark on a journey where velocity meets security, and innovation knows no bounds. In this session you'll learn how you can leverage the power of AI to increase your velocity while mitigating risks and staying secure.

Amsterdam JUG Meetup at Backbase