What we're about

  • At the San Francisco JUG you get to meet other local Java professionals and talk about code, architecture, innovation, opportunities, and share ideas about real-world problems. Want to submit a talk? Contact us via the meetup page, or at @pieterhumphrey on Twitter.
  • Recordings are posted on our YouTube channel
  • https://www.youtube.com/c/sfjava
  • Our meetings are technically focused and often include expert speakers on Java-related topics.
  • We welcome both beginners and gurus, both developers and managers, both geeks and professionals.
  • We typically meet on Wednesdays from 6:30-8pm of each month and our meetings are FREE and OPEN to the public.
  • If you're new, please refer to a Code of Conduct that we expect from our community members, adapted from the Contributor Covenant via http://coc.eddiehub.org/
  • If you are an employer, a recruiter, or simply someone looking for Java employment opportunities, check out Discussions -> Message Board -> Job Listings (you can track this forum to get email notifications)
  • Follow us at @sfjug!
  • Your hosts,
  • @pieterhumphrey & @crichardson & @djrooz
  • Sponsored by @logic2020 / www.logic2020.com and @JavaAtMicrosoft

Upcoming events (2)

Automated software refactoring with OpenRewrite and OpenAI

Link visible for attendees

Automated software refactoring with OpenRewrite and OpenAI
The software industrial revolution has arrived. Software is now 80% open source and third-party and 20% proprietary code that stitches it together into business-critical applications. We are challenged with the ongoing evolution of increasingly large and diversely composed codebases and ecosystems. Dependencies change frequently and evolve at their own pace. Security vulnerabilities can be introduced at any time by anyone. Not updating regularly leads to critical
bugs, performance, and security issues. In this talk, we’ll introduce OpenRewrite, an open-source, automated refactoring and
dependency management technology born at Netflix in 2016. It’s built on manipulating the Lossless Semantic Tree (LST) representation of code with recipes (programs) that result in 100% accurate style-preserving code transformations. It is a rule-based, authoritative system.
We’ll also show you how this system can benefit from the suggestive authorship of generative code AI. We can leverage the OpenAI API to assist with code transformations in OpenRewrite recipes. However, there is a tradeoff between creating recipes faster with OpenAI versus
accuracy of the recipe because of the probabilistic nature of generative AI and the potential for hallucination. Developers will have to be more diligent checking the transformed code in these instances. We will also show how OpenAI can be used to process the LST, performing in code
classification problems and providing natural language descriptions of errors.

OpenRewrite on GitHub: https://github.com/openrewrite/rewrite
Documentation: https://docs.openrewrite.org/
OpenRewrite community Slack:
Jonathan and Olga’s personal calendar: https://calendly.com/moderne
More about Moderne: https://www.moderne.io/

Jonathan Schneider is Co-founder and CEO at Moderne, which automates software refactoring at scale. He founded OpenRewrite, an auto-refactoring tool, at Netflix and went on to found the Micrometer project as a member of the Spring Team. Jonathan is the author of “SRE with Java Microservices” (O’Reilly).

Olga Kundzich is Co-founder and CTO at Moderne, which automates software refactoring at scale. She has extensive experience building enterprise software solutions. Previously, she worked as a technical product manager at Pivotal, focused on application delivery and
management solutions (e.g., Spinnaker), and was a lead software engineer and manager at Dell EMC, working closely with enterprise users on implementing data protection practices.

Why you need performance tests for proper Kubernetes scaling

Link visible for attendees

Kubernetes helps enterprises with complex deployments and rapid scaling. But developers often solve only a part of the problem, i.e., withstanding a certain load. Hence, “default” containers behave unexpectedly leading to resource misuse, degradation, and huge cloud bills. To remedy the situation, developers are to be involved in cost optimization with KPIs agreed with the business. From a technical standpoint, this means determining SRE metrics, building efficient containers, and conducting performance tests. In my presentation, I will show you how containers affect service behavior, and how microcontainers and native images help streamline the deployment. You will learn to measure performance and utilization and build container images differently. By having clear goals and necessary optimizations in place during application delivery, you can reduce costs and make production safer.

Dmitry Chuyko is a performance engineer at BellSoft, an OpenJDK committer, and a public speaker. Prior to joining BellSoft, Dmitry worked on the Hotpot JVM at Oracle, and before that he had many years of programming experience in Java. He is currently focused on optimizing
HotSpot for x86 and ARM, previously being involved in rolling out JEP 386, which enables the creation of the smallest JDK containers. Dmitry continues his journey in the containerization process and is happy to share his insights and expertise in this field. Dmitry is a well-known
speaker in the Java community, and one of his recent public presentations is available here:

Alexander Belokrylov is the CEO and co-founder of BellSoft. Alexander's Java journey started at Sun Microsystems and was followed by his Oracle experience, which helped to establish Alexander as one of the most influential Java thinkers and a significant contributor to Java's evolution and enterprise adoption.

Past events (194)

Running the Pizza Shop Demo with Apache Pinot and StarTree

This event has passed

Find us also at