Kona Token Trade
Backend services for a blockchain-based token-trading platform, built at Kona Software Lab.
- Role
- Software Engineer II, backend
- When
- 2022 – 2025
- Built with
- Java, Spring Boot, Apache Kafka, AWS S3, SNS, EC2
What I owned
The platform ran on 30 Spring Boot microservices. I owned 6 of them and contributed to 15, across trade, wallet, user, payment, and fee management.
From synchronous calls to Kafka
Services called each other over synchronous REST. If one downstream service was unavailable, a transaction already in progress could fail with it. I replaced those calls with Kafka messaging, so a service that is briefly down catches up when it returns instead of failing the trade.
Before
- Trade requestA user starts a transaction.
- Synchronous REST callThe service waits on a downstream service.
- Downstream unavailableThe in-flight transaction fails.
After
- Trade requestA user starts a transaction.
- Event on KafkaThe service publishes and moves on.
- Downstream consumesThe service processes the event when it is available.
A simplified illustration of the change, not the production topology.
Security and payments
I added two-factor authentication to asset buy and sell operations and integrated bank-account and Kona card payment gateways. I also added caching to reduce response latency, and built backend services against AWS S3, SNS, and EC2.
Also at Kona
- Built the Card Personalization System in Java and Apache Struts against GlobalPlatform, Visa, Mastercard, and EMV specifications. It is in commercial use, and I was chosen for a 14-day training program on it at parent company Kona I in Seoul.
- Mentored and onboarded two junior engineers.
- Joined as a Graduate Engineer and was promoted in 2024.
