Backend Developer focused on transaction processing systems and core financial logic.
I am interested in how financial systems guarantee atomicity, consistency, and data integrity under concurrent transaction environments.
Through implementing core banking features and migrating legacy systems, I have developed a strong interest in building reliable and maintainable financial software.
Repository: https://github.com/zzzyoonnn/FinFlow-backend
A backend application that simulates core banking operations with a focus on transactional integrity.
Designed and implemented essential banking operations including:
- Deposit
- Withdrawal
- Transfer
- Transaction history management
- Managed withdrawal and transfer operations within a single
@Transactionalboundary to ensure atomicity - Delegated validation logic (ownership, password verification, balance checks) to the Account domain entity
- Prevented negative balances through explicit business rule enforcement
- Recorded transaction history with balance snapshots at the time of execution for auditability
- Structured flow clearly as: validation β state mutation β persistence β response
Through this implementation, I became particularly interested in how financial systems prevent data inconsistency, race conditions, and double execution under concurrent requests.
π Core Banking Service Implementation: AccountService.java
- κ³μ’κ° λ§μμ§ κ²½μ°, μ΄λ»κ² μ€κ³νλ©΄ μ’μκΉ?π€
- N+1μ μ λ°μν κΉ?π€(Fetch Join μ μ© μ ν μ±λ₯ λΉκ΅)
- N+1μ μ JPAμμ λ°μν κΉ?π€(JPQL)
- N+1μ λ©λͺ¨λ¦¬μ μ΄λ€ μν₯μ λ―ΈμΉ κΉ?π€
- μμμ± μ»¨ν μ€νΈλ N+1κ³Ό μ΄λ€ κ΄κ³κ° μμκΉ?π€
Repository: https://github.com/zzzyoonnn/Servlet2Spring
This project reflects my growth in understanding backend architecture evolution and framework-driven design.
Started with a JSP-based architecture and progressively evolved it into Spring MVC and Spring Boot.
- Refactored the application into a clearer layered architecture
- Improved separation of concerns between controller, service, and domain layers
- Simplified configuration using Spring Boot auto-configuration
- Enhanced security structure using Spring Security
- Reduced boilerplate code and improved maintainability
- Improved deployment and dependency management with Maven
This migration process taught me the importance of modernizing systems without compromising stability, especially in environments where reliability is critical.
Backend
- Java 21
- Spring Boot
- Spring Data JPA
- Spring Security (JWT)
Database
- MySQL
- H2 (for testing)
Infrastructure
- AWS (EC2, RDS, S3)
Build Tool
- Maven
- Core Banking Systems
- Transaction Processing
- Financial Data Integrity
- High-reliability Backend Systems
I aim to build backend systems where correctness and reliability are prioritized over feature speed β especially in domains where data integrity is critical.
