Friends of OpenJDK Today

Charting the Course of Java: An Insightful Conversation with Java Champion, Sebastian Daschner

July 11, 2023

Author(s)

  • A N M Bazlur Rahman

    A N M Bazlur Rahman is a Software Engineer with over a decade of specialized experience in Java and related technologies. His expertise has been formally recognized through the prestigious ... Learn more

In this insightful interview, renowned Java Champion, Oracle Developer Champion, and JavaOne Rockstar, Sebastian Daschner, shares his journey in the field of Java enterprise software development.

With a vast array of experience from being a self-employed consultant, trainer, and author to his contributions to the open-source community, Daschner provides a unique perspective on Java's current state and future, especially in the enterprise context.

He delves into his strategies for balancing his varied roles, offers tips for aspiring developers, discusses the challenges in the software development industry, and underlines the importance of continuous learning.

Whether you're a veteran developer or a novice just stepping into the field, there's a wealth of knowledge to glean from Daschner's experiences and insights.

Profiles:

🌐 Homepage: Sebastian Daschner
🐦 Twitter: @DaschnerS
🐙 Github: sdaschner
🐘 Mastadon: @daschners
🔗 LinkedIn: Sebastian Daschner

Fun Fact: I’ve travelled to over 50 countries.


Bazlur: Can you share with us your journey into Java enterprise software development and how you became a Java Champion, Oracle Developer Champion, and JavaOne Rockstar​?

Sebastian: Sure. Before I studied computer science in Munich, I worked at an internet agency, building websites and, later, simple web applications. During my studies, this evolved into writing more serious Java Enterprise systems.

After my studies, I immediately became a self-employed consultant. I also started attending conferences, and my goal was to one day speak at a conference myself. Around 6, 7 years ago, I gave my first presentations, and around that time also attended a lot of conferences. I also met a lot of people within the Java community, and another goal of mine was to share more open-source projects and to participate in standardization processes -- at that time, mostly the JCP and Java EE expert groups.

Another dream of mine was to one day speak at JavaOne in San Francisco, at that time, the most important Java conference in the world. I was speechless when in 2016, not only did that dream come true, but I was also voted to receive the JavaOne Rockstar Speaker award by the attendees of my talks. In the same year, I became a Java Champion.

In the following years, Oracle set up the Dev Champions program to enable external speakers to travel to conferences and talk about Oracle-related technologies, which I was a part of.


Bazlur: As a prominent figure in the Java community, how do you see the future of Java evolving, particularly in enterprise software development?

Sebastian: The past years have already shown a big move into cloud-native technologies, such as containers and container orchestration. Nowadays, I see a lot of interest in developer productivity, which I think is a very positive evolution. In the Java space, Quarkus is one of the most interesting technologies right now, especially its outstanding developer experience.

Every single enterprise Java developer is delighted when they try out the dev mode and see how short of a turnaround time Quarkus enables. Besides that, I'm very happy with the development state of Java. The previous versions have brought interesting additions, such as Records or Text Blocks, and with the modern JVMs, we have a competitive platform that powers pretty much the whole enterprise world. I think these are very exciting times to be an Enterprise Java developer!

In the Java space, Quarkus is one of the most interesting technologies right now, especially its outstanding developer experience. Every single enterprise Java developer is delighted when they try out the dev mode and see how short of a turnaround time Quarkus enables.


Bazlur: As a consultant, trainer, and developer, how do you manage to balance these roles, and what do you enjoy most about each of them​?

Sebastian: I do like all of these roles for different reasons. I know that I need to program and write code, ideally, every single day, just because I think it's a lot of fun to create something and a wonderful creative outlet for myself.

That's also the reason why I still love participating in my clients' projects. I also love teaching and learning something new, for which sharing knowledge and holding workshops and training is a great way. I especially like client workshops in which I can create tailored content to ensure the best learning experience possible for a specific client's situation.

In my consultant role, I like that there is always a new challenge to solve and new situations to assess since there is almost never a single clear answer, but as we know, "it always depends." As for balance, my regular weeks usually contain a good mixture of all of these different roles.


Bazlur: On your website, you mentioned that a correct understanding of IT and the technologies in use could significantly improve productivity and quality in software development. Can you share some tips for developers striving to deepen their understanding of their craft?

Sebastian: Reading, learning, asking questions, and sharing.

There is no substitute for reading the documentation.

Documentation, of course, can come in different forms, such as written documentation, code examples, or YouTube videos.

Try always to summarize what you've read and learned in your own words, and don't be satisfied if you think you "kind of" understood a topic, but instead, dig deeper and continue asking questions, even if you ask these questions to yourself.

Creating side projects or example projects is a great way to try out new technologies or approaches.

And, of course, teaching is one of the best ways to learn.

When you teach something, -- and teaching can mean writing blog posts, writing documentation, creating YouTube videos, or giving presentations -- you always want to double-check and triple-check whether your assumptions and understanding are correct. Naturally, this forces you to level up.

All of these points combined will make you a better, more effective developer.


Bazlur: You mentioned that you started giving presentations at conferences about 6-7 years ago. Can you share some tips for developers who might be interested in speaking at conferences but don't know where to start?

Sebastian: I think a great way to start is with what you are learning or what helped you every single day. You don't have to try too hard to create or find some super-interesting topic; instead, if you found something helpful for your job or projects today, chances are that it is helpful for somebody else as well, so why not share it?

What also helped me a lot is to think that it's not "about me" when I'm standing up on stage, but instead, it is about all the attendees. I'm saying this because it is easy to get hung up on your ego, and you think you have to present a perfect picture of yourself as a developer, which might make you very nervous. Instead, you should focus on what the attendees can learn.

 I think a great way to start is with what you are learning or what helped you every single day. You don't have to try too hard to create or find some super-interesting topic; instead, if you found something helpful for your job or projects today, chances are that it is helpful for somebody else as well, so why not share it?

For example, I'm doing a lot of live coding, and a lot of developers would be afraid to put themselves in a stressful situation. But instead, you should see this as a fun opportunity to share knowledge and demo how to use technology -- even if you create a lot of compilation errors along the way. Focus on things that are helpful, that you need in your job, and try to dig deeper into understanding what's going on while you're preparing some presentation - then you will do great.


Bazlur: Let's shift gears and talk about the current state of software development. In your opinion, what are some of the biggest challenges that developers face today? Additionally, do you have any advice on how to overcome these challenges?

Sebastian: Good question. I think a lot of the recent developments in technologies are extremely positive, so in some way, this is a great time to be a software developer. The biggest challenge for any knowledge worker in these times is distractions.

Our phones, email clients, Slack, and social media are often just a hand movement away, and it’s too tempting to get distracted by all these dopamine-inducing activities. The best knowledge workers know how to focus, how to manage distractions, and how to create an environment in which they can fully be “in the zone”.

This is something that seems to get harder and harder. So put your phone on flight mode, close all communication channels, and allow yourself to get into the zone – at least for some time every day.

The biggest challenge for any knowledge worker in these times is distractions. Our phones, email clients, Slack ….The best knowledge workers know how to focus, how to manage distractions, and how to create an environment in which they can fully be “in the zone”


Bazlur: What advice would you give someone new to the software industry who is unsure about which career path to take? Could you also provide insights into the various roles within the industry, such as developer, quality assurance, manager, and developer advocacy, and the specific skills and interests needed for each of these roles?

Sebastian: Just try it out and see what you like. Coding and, in general, any technology job can be very interesting and fulfilling, but this also depends on the person and character. I think you only know once you try, and this is also true for various roles.


Bazlur: You emphasized the importance of continuous learning for developers. Can you recommend any resources or strategies that you've found particularly effective for staying up-to-date with new technologies and trends in the field?

Sebastian: It certainly helps to follow a carefully selected group of people or information sources online. But also, over time, you will get a better judgment over which technologies are helpful and move the industry forward and which are mostly “hype.” Nevertheless, it’s always worth trying out something new - e.g. in a side project - and learning from what you see and whether it’s worth applying. But instead of learning new technologies for the sake of new technologies, focus on how to solve problems and be pragmatic.


Conclusion 

In conclusion, Sebastian Daschner's passion for continuous improvement, programming, and sharing knowledge shines through in this interview.

His commitment to the Java community, deep understanding of enterprise technologies, and focus on productivity and pragmatism offer a well-rounded perspective on the dynamic world of software development.

From emphasizing the importance of understanding technologies in use to the necessity of managing distractions and fostering a learning culture, Daschner's insights are beneficial for anyone in the field.

As he continues to shape and contribute to the software industry, follow his journey and learn from his shared content on various platforms.

Through this interview, we understand that, truly, these are exciting times to be a Java developer.



Topics:

Related Articles

View All

Author(s)

  • A N M Bazlur Rahman

    A N M Bazlur Rahman is a Software Engineer with over a decade of specialized experience in Java and related technologies. His expertise has been formally recognized through the prestigious ... Learn more

Comments (0)

Your email address will not be published. Required fields are marked *

Highlight your code snippets using [code lang="language name"] shortcode. Just insert your code between opening and closing tag: [code lang="java"] code [/code]. Or specify another language.

Save my name, email, and website in this browser for the next time I comment.

Subscribe to foojay updates:

https://foojay.io/feed/
Copied to the clipboard