I'm Yongjun Hong, a committer for Apache Seata and a backend engineer at NAVER WEBTOON.
In JUnit I added parallel execution to the Vintage engine, and I've made a few changes to Spring Boot and Spring Framework. I was also a GSoC '25 contributor for the Kotlin & Gradle project, and I maintain the Batch Control plugin for Jenkins.
I write about some of these on my blog. Lately I've been building AI tools for developers.
- Apache Seata: committer, 23 merged PRs
- JUnit: 7 merged PRs
- Spring Boot: 2 merged PRs
- Fail fast when both the management base path and an endpoint mapping are set to
/#45251
- Fail fast when both the management base path and an endpoint mapping are set to
- Spring Framework
- Reject effectively private handler methods on CGLIB-proxied controllers #35352
- LangChain4j: 3 merged PRs
PgVectorEmbeddingStoresupports full-text and hybrid search #4288
- Fixture Monkey: 4 merged PRs
- Register and select an
ArbitraryBuilderby name #1036
- Register and select an
- Batch Control (source): a Jenkins plugin that requires approval for every run and keeps an audit trail of every change.
- kotlin-pom-gradle: a Gradle plugin for error-free publishing to Maven Central (GSoC '25).
- Centralized POM Configuration Management with kotlin-pom-gradle
- Spring 관점에서 보는 Seata의 내부 통신
- Apache Seata란?
- 내가 JUnit5에 글로벌 Extension 필터링 기능을 추가한 이야기
- 내가 JUnit5에 병렬화를 도입한 이야기 - 메서드 단위
- 내가 JUnit5에 병렬화를 도입한 이야기 - 클래스 단위
If you've got something fun to talk about in AI, email me at yongjunh@apache.org.




