One Year as a Technical Writer at Azul: A Journey of Growth and Learning.
Tags: programming, writing, learning, java
Published: 2023-06-14 07:26:08

Writing has always been my passion, and even in my previous jobs as a developer, I stood out as the one who enjoyed creating and maintaining documentation. But June 9th, 2023, marked my first birthday as a full-time technical writer at Azul. Yes, it's already a year ago that I changed from being a developer-who-also-writes to a writer-who-also-develops. Let's take a moment to reflect on my incredible journey over the past year.

NOTE: I'm not mentioning any names here, as a lot of people have helped me to evolve to where I am now, and I can not name them all :-)

## Highlights

Due to the COVID-19 pandemic, I had been working from home for a longer time already, but that was for local companies. So I could still visit the office whenever needed, to sit together with a few people, or test something on one of the devices I have been working on. But as I am now the "complete Belgium division of Azul," it's harder to meet my colleagues in real life. However, I quickly realized that Zoom became an invaluable tool for building personal connections despite being physically distant. Because the Azul team is spread across the globe, the biggest challenge was to determine the time zones everyone for everyone and when the best times to have a call. But again, this also brings an advantage as I can prepare a new document or suggest updates before the end of my working day, and by the following morning, it has been reviewed, or I have a bunch of Slack messages to handle and create a next iteration.

### Documentation and Articles

I joined Azul because I wanted to learn more about Java. I had been developing with it for over ten years, but I hardly knew what was happening "inside" the JVM executing that code. And I sure arrived at the perfect company! The amount of knowledge and years of experience within this company is impressive.

The main task for the docs team is to maintain, extend and keep [docs.azul.com](https://docs.azul.com/) up-to-date. Next to the docs site, we also write blog posts for [www.azul.com](https://www.azul.com/blog/). For example, I wanted to write articles to explain the [difference between Just-In-Time (JIT) and Ahead-Of-Time (AOT) compilers](https://www.azul.com/blog/jit-performance-ahead-of-time-versus-just-in-time/) and [how the Garbage Collector in the JVM works](https://www.azul.com/blog/what-should-i-know-about-garbage-collection-as-a-java-developer/). I had the opportunity to directly connect and collaborate with the creators and experts behind these technologies. I could have a chat with them and review the article. These were my first blog posts for the Azul website, but [a lot more got published](https://www.azul.com/blog/author/fdelporte/) since then.

### Trips

To meet my colleagues in person, I had a short trip to Prague and a week in New Orleans, which were great. Actually my first-ever trip across the ocean! However, for my colleagues who are constantly traveling, that's quite hard to understand ;-)

### Conferences

I wanted to start speaking at Java conferences just when the pandemic changed our way of living. The only benefit was the opportunity to [speak at virtual conferences across the globe](https://webtechie.be/presentations/). Fortunately, in 2022, circumstances changed for the better. I spoke (in-person) at Devoxx Belgium (twice!) and J-Fall in the Netherlands. At Devoxx, I was even part of the Azul team in the conference hall, which gave me the opportunity to speak to a lot of Java developers and learn about the real needs of running Java in production in small and big environments. A few weeks ago, I also had a "quickie" at VoxxedDaysBrussels, and on June 21st I will be closing [J-Spring in the Netherlands](https://jspring.nl/timetable-2023/).

### Java User Group (JUG)

During Devoxx, BeJUG was "reborn," and I organized my very first own [JUG in Kortrijk](https://www.meetup.com/belgian-java-user-group/events/290693260/). I'm happy to be a small part of this organization and look forward to contributing more to this community next season after the summer.

I'm convinced that being a part of the Azul team and writing about Java for both the Azul blog and [Foojay.io](https://foojay.io/today/author/frankdelporte/) has helped me to get invited to these conferences and to be able to invite excellent speakers to BeJUG.

### Podcasts

As part of my role at Azul, I aim to promote the Java ecosystem." That's why I took the initiative to relaunch the Foojay Podcasts. Thanks to my current job, I could invite many community members to discuss various topics. The complete list of the podcasts [can be found here](https://foojay.io/today/category/podcast/).

### Java Champion

To my surprise, earlier this year, I became a Java Champion! I'm convinced more people noticed me and invited me to join [this group of Java "speakers and lecturers,"](https://javachampions.org/members.html) thanks to my presentations at Devoxx and the articles I wrote for the Azul blog and Foojay.

## The Side Projects

Since embarking on my book project, ["Getting Started with Java on the Raspberry Pi"](https://webtechie.be/books/), I got involved in the [Pi4J project](https://pi4j.com/). As with all open-source "pet" projects, it can only progress based on the contributions of individuals with available time. I wish I could have done more, but there is a steady flow of contributions by different people, and it is nice to see that the library itself is stable and only minor bugs were discovered.

Nevertheless, despite my limited availability, I had another idea in my head for over a year. In my previous job, we used [Lottie animations](https://lottiefiles.com/) in the mobile app to guide the user through the installation process of a robot. I like the idea of this project as it reminds me a bit of the Flash animations from many years ago. As I couldn't find a player for these animations in JavaFX, I started the [Lottie4J project](https://lottie4j.com/). The first part of this project to read and parse Lottie files to Java objects is working for the most significant part. But the player gave me some headaches as the Lottie format regarding animations and timelines is quite complex. So I didn't get as far as I hoped in the first steps. But I hope to pick up this project soon and use it to fully master all the new features introduced in Java regarding `instanceOf`, like "[JEP 443: Unnamed Patterns and Variables](https://openjdk.org/jeps/443)" and "[JEP 441: Pattern Matching for switch](https://openjdk.org/jeps/441)", as they can reduce code and improve readability.

## The Bad

The past year we have been presented with significant personal challenges for our family. Our son changed from the local school to the secondary school in the city. Combined with puberty and the struggle with being adopted, this has brought a lot of conflicts and bad events. With long waiting lists, we discovered that psychological help is tough in Belgium. It has taken us a lot of time to see what could be a solution and a way forward, and we hope that a specialized school will bring back stability and the special care he needs.

Working from home and flexibly arranging my work have been critical factors in handling the stress involved in this process. Again a reason why I love my job.

## Conclusion

When I started this new job at Azul, one of my JavaFX heroes asked me if this was now my permanent new direction or if I would go back to programming one day. Frankly, I have no idea what the future will bring. But I do know I'm currently in the position I want and need to be. Doing what I need to do, with a lot of freedom when to do it, and continuously learning from the brightest people in the industry? Yes, I am excited to continue this fulfilling journey for the foreseeable future...