Portfolio / 2026

Na
Keaunsol.

단순히 작동하는 코드가 아닌,
오래 유지될 수 있는 구조를 만드는 개발자.

Backend & Full-stack Engineer
3 years 7 months of building
HR solutions · Platform services · AI agents
3.7Y
Experience
6+
Projects
560D
Algo Streak

어제보다 나은
구조
만듭니다.

HR 도메인의 복잡한 비즈니스 로직을 직접 설계·구현하며, 공통 모듈 구조화 · 쿼리 튜닝 · SSO 연동 · Elasticsearch 계층 재설계까지 기능 구현을 넘어 시스템 품질까지 함께 고민합니다.

커리어 초반 화이트정보통신에서 HR 패키지의 권한·공통코드·전자결재 같은 공통 모듈을 전담하고, 신규 패키지의 프로퍼티 서버를 단독 구축하며 레거시를 지속 가능한 구조로 옮기는 경험을 했습니다. AS-IS Oracle에 파편화되어 있던 수백 개 공통코드·수천 개 코드 디테일을 BizUnit → CodeSys → CodeKind → Code 4단계 계층 구조로 재설계하고, Nori 한국어 분석기와 Keyword/Text 하이브리드 매핑, Bulk API 기반 이관 파이프라인으로 옮긴 경험이 이후 모든 설계의 뿌리가 되었습니다. 이 프로젝트는 Spring Boot 3.x 기반 Java + Kotlin 혼합 구성으로 진행해 Kotlin 실무 경험의 시작점이기도 합니다.

현재 휴먼컨설팅그룹에서는 SK바이오로직스 · SL글로벌 · 포스코인터내셔널 등 대기업 HR 플랫폼의 사회보험·퇴직금·연말정산 모듈을 전담 구축하며, Azure AD SSO 단독 적용, 쿼리 튜닝으로 병목 10초 이상 단축, 40+개 파일 약 8,000 LOC 단독 기여 등 실제 운영 성능을 개선해 왔습니다.

개인·팀 프로젝트에서는 린 스타트업 기반 서비스 기획부터 백엔드 전 구간 단독 설계·구현까지 경험하며, SSO · 크롤링 · 검색 · Push 알림 · AI Multi-Agent 등 다양한 기술을 실제 문제 해결에 적용했습니다. 최근에는 Claude Code와 Groq · DeepL API를 활용해 개발 생산성 도구(dev-trends, leetCodeHelper)를 직접 제작·운영하며 AI로 확장하는 백엔드 개발자로 한 걸음 더 나아가고 있습니다.

3년 7개월,
HR 도메인의 중심에서.

2024.04 — 재직중백엔드/풀스택 엔지니어
㈜휴먼컨설팅그룹
휴넬 HR 솔루션
  • 포스코인터내셔널 HR 통합플랫폼 구축
    2026.03 — 현재
    Self-Resume 기능 전담 구현 — 임직원 개개인이 자신의 이력서를 인사 사이트에 직접 등록·관리하고 보직 변경 등 인사 프로세스에 적극적으로 활용할 수 있는 자기 PR 페이지 설계 및 개발. 이력서 메인 화면 16개 비즈니스 메서드와 사내경험·주요성과·자격면허·경력개발계획 등 7개 모듈 단독 개발.
    JSP · Java · XML · Vue.js
  • SL글로벌 통합 인사시스템 신규 구축
    2025.02 — 2026.03
    사회보험·퇴직금 모듈 40+개 파일 단독 기여(약 8,000 LOC) · 연말정산 프로시저 레거시 개선 — 복잡도 높은 연산·신고·전표·전자결재 로직 전담. 사회보험(10개, ~1,400 LOC): 자격관리·피부양자/분할납부 신고·4대 보험 조회. 퇴직금(30개, ~6,700 LOC): 임원가산금·IRP·퇴직금 계산/시뮬레이션·지급명세서·전표관리·전자결재 연동. DB 프로시저·함수 신규 설계 — 피부양자 생성, 퇴직금 시뮬레이션(레거시 개선), 수당 조회 함수 등.
    JSP · Java · XML · Vue.js · Oracle · PL-SQL
  • SK바이오로직스 New HR 구축
    2024.04 — 2025.02
    사회보험 · 퇴직금 · 연말정산 인사시스템 구축, 외부 인터페이스 연동. MS Azure AD 기반 SSO 로그인 단독 구축(OAuth2 Authorization Code Flow 분석 후 적용), 쿼리 튜닝으로 병목 10초 이상 단축.
    JSP · Java · XML · Vue.js · Oracle · Azure AD
2022.10 — 2024.03백엔드/프론트엔드 엔지니어
화이트정보통신㈜
H5 사업부
  • 프론트엔드 신규 패키지 구축 · 팀 리드
    2023.12 — 2024.02
    프론트 담당 3인 중 유일한 React 경험자로서 팀 리드 — 폴더 구조·아키텍처·백엔드 통신 규약·프로퍼티 서버 연계 방식·공통 메서드 등 프론트 설계 전반 주도. 인사 기본·발령·조직 등 HR 핵심 도메인 화면 구현.
    React · Spring · Elasticsearch
  • 백엔드 신규 패키지 — 프로퍼티 서버 단독 구축
    2023.07 — 2023.12
    Oracle 스키마 계층 재설계 기반 Elasticsearch 이관 — 파편화된 공통코드·코드 디테일을 BizUnit → CodeSys → CodeKind → Code 4단계 계층으로 재설계, 4개 독립 ES 인덱스로 분리. Nori 분석기 + Keyword/Text 하이브리드 매핑, Bulk API 기반 이관 파이프라인 구현. Spring Boot 3.x Java + Kotlin 혼합 구성. 아리아 기반 암호화 로직 직접 구현.
    Spring Boot 3.x · Kotlin · Java · Elasticsearch 7.17 · Spring Data ES · Oracle · JPA
  • 유진투자증권 패키지 고도화
    2023.03 — 2023.07
    권한 · 공통코드 · 전자결재 · SQL 관리 등 패키지 공통 모듈 작업 전담.
    JSP · Oracle
  • LS오토모티브 패키지 기능 추가
    2024.02 — 2024.03
    반반차 기능 추가 — JSP 수정 및 신규 생성, 프로시저 추가·수정.
    JSP · PL/SQL

설계 패턴을
실전으로 옮기다.

전략 패턴 · 템플릿 메서드 · JWT 이중 토큰 · AOP 기반 성능 로깅 · Hexagonal Architecture · Multi-Agent — 교과서적 설계 패턴을 실제 문제 해결에 옮기는 것. 서비스 안정성과 확장성을 함께 고민하는 것. 여섯 개의 프로젝트로 증명합니다.

№ 01

AI Tools.

● AI Productivity

dev-trends & leetCodeHelper — AI 개발 생산성 도구 자체 제작

2026.04 · Individual · Python · Spring Boot · Groq · DeepL · GitHub Actions

Problem

AI 툴을 사용하는 것과 AI 기반 워크플로를 설계하는 것은 다른 역량. 실제 일상 개발에 녹아드는 도구를 직접 제작해 설계자 관점의 AI 자동화 경험을 축적했습니다.

Key Implementations
  1. dev-trends — 일일 개발 트렌드 자동 수집 파이프라인. Python + GitHub Actions 기반, 매일 08:00 KST에 Hacker News · Stack Exchange · GitHub GraphQL 3개 소스 통합 수집.
  2. 자체 스코어링 공식log10(upvotes+1)·1.0 + log10(comments+1)·1.5 + log10(views+1)·0.3으로 상위 5개 선별. DeepL API → deep-translator 폴백 2단계 번역 후 Slack 자동 전송 + 일자별 MD 리포트 Git 자동 커밋.
  3. leetCodeHelper — LeetCode 제출·AI 리뷰·Git 통합 자동화. Spring Boot 기반 로컬 서버, LeetCode GraphQL API 연동으로 일일 문제 자동 수신, IntelliJ External Tool로 제출.
  4. Accepted 시 엔드투엔드 자동화Groq API(llama-3.3-70b) 기반 한국어 코드 리뷰 자동 생성(시간/공간 복잡도·풀이 접근법·개선 사항), UnSolved → Solved 자동 이동, Git 커밋·푸시까지 자동 처리.
  5. 스케줄러 운영 — 일일(0 0 9 * * MON-FRI) · 주간(0 0 6 * * MON) cron으로 문제 동기화.
Stack
PythonSpring BootJavaGroq APIDeepL APIGitHub ActionsGraphQLSlack Webhook
№ 02

POST EAT.

● In Progress

음식 사진 기반 미니멀 푸드 다이어리 앱 — 린 스타트업 기반 팀 프로젝트

2026.03 — 현재 · TroisLab (3인) · 기획 + 백엔드 API + DB 전담

Vision

린 스타트업(Lean Startup) + 애자일 스프린트 전략 기반. MVP 검증 후 단계적 확장 로드맵을 수립하고, 목표를 재방문 실사용자 100명 확보 → 유료 전환율 3%(Freemium 구독 모델)로 구체화했습니다. 단순 "기능 구현"이 아닌 서비스 관점의 설계를 실험 중인 프로젝트입니다.

Key Implementations
  1. Flyway 기반 DB 마이그레이션 관리 — 스키마 변경 이력을 코드로 관리, 팀 간 DB 동기화 문제 사전 차단.
  2. JPA AOP로 쿼리 타이밍 로깅 — 모든 리포지토리 호출의 실행 시간을 자동 수집, 병목 조기 발견 체계.
  3. Docker 멀티스테이지 빌드(Alpine) — 이미지 크기 최소화, 빌드 캐시 최적화.
  4. GitHub Actions → AWS ECR → EC2(SSM) 자동 배포 — 운영 관점의 CI/CD 파이프라인 직접 설계.
  5. 노션 기반 협업 프로세스 설계·운영 — 이슈 트래킹 DB · WBS · 백로그 · API 명세서를 모두 노션에서 통합 관리.
Stack
Spring Boot 3.xJPAMariaDBFlywayDocker Multi-stageGitHub ActionsAWS ECR / EC2 / SSMFlutter (협업)Notion
№ 03

KNOCK

Closed · Code Public

영화·공연 개봉일 리마인더 웹앱 — 백엔드 단독 전담

2025.01 — 2025.04 · Backend Lead · Spring Boot · Elasticsearch · Selenium · FCM · Heroku · Python

Problem

국내 영화·공연 정보는 KOFIC · CGV · MEGABOX · LOTTE CINEMA · KOPIS 5개 플랫폼에 파편화되어 있고, 같은 작품도 플랫폼별로 제목·날짜·포스터가 제각각. 관심 작품의 개봉을 놓치지 않으려면 사용자가 여러 앱을 매일 확인해야 했습니다.

Role

백엔드 단독 전담 — 크롤링 파이프라인, 소셜 로그인 인증 체계, 검색 엔진, Push 알림 스케줄러, 배포·운영까지 전 구간 설계·구현.

Architecture

확장성에 방점을 둔 설계 — OCP를 지킨 크롤링 파이프라인. 5개 플랫폼의 HTML 구조가 전혀 달랐지만, 템플릿 메서드 패턴으로 공통 수집 흐름을 추상화해 플랫폼 추가 시 기존 코드를 건드리지 않도록 했습니다. 유사도 기반 중복 병합 로직을 직접 설계해 파편화된 데이터를 하나의 작품으로 정규화했고, Elasticsearch + Nori 한국어 분석기로 비정형 콘텐츠를 검색 가능한 형태로 인덱싱했습니다.

인증은 전략 패턴으로. OAuth2 소셜 로그인(Kakao · Naver · Google) 3종을 Strategy로 분리해 제공자를 추가해도 기존 로직 수정이 없습니다. JWT는 Access(메모리) + Refresh(HttpOnly/Secure Cookie) 이중 토큰 구조로 보안·UX 균형을 설계했습니다.

Key Implementations
  1. 멀티 플랫폼 크롤러 — Selenium 기반 5개 플랫폼 동시 수집. 플랫폼별 파서를 Template Method로 분리.
  2. 유사도 기반 중복 병합 — 제목·개봉일·감독 등 다중 필드 매칭으로 플랫폼 간 중복 데이터를 단일 레코드로 통합.
  3. OAuth2 + JWT 이중 토큰 — Access Token은 메모리, Refresh Token은 HttpOnly/Secure Cookie 저장. Authorization Code Flow 직접 구현.
  4. FCM 푸시 알림 시스템 — 사용자 설정 D-day 기준 오전 9시 자동 발송. 프론트 Service Worker ↔ 백엔드 양방향 아키텍처.
  5. Heroku 메모리 제약 트러블슈팅 — R14 메모리 한계 문제를 스케줄링 로직 최적화 + 리소스 분산 + G1GC 튜닝(Xms512m, Xmx2g)으로 해결.
  6. PWA 적용 — Service Worker·Manifest로 모바일 네이티브 경험 구현.
Outcome
5
플랫폼 동시 크롤링
R14→0
Heroku 메모리 에러 해결
Vercel + Heroku
실사용자 대상 배포·운영

사이드 프로젝트에 머무르지 않고 실제 배포·운영까지 진행. "이론으로 안 것"과 "사용자 환경에서 문제를 해결한 것"의 차이를 커리어의 분기점으로 삼은 프로젝트입니다.

Stack
Spring BootSpring SecurityElasticsearchNori AnalyzerSeleniumPythonFCMJWTOAuth2HerokuPWA
№ 04

Gugudan AI.

Love-note

AI 심리·연애 상담 서비스 백엔드 — Hexagonal Architecture 기반 설계

2025.11 — 2025.12 · Backend · Python · FastAPI · Redis · OpenAI API · Docker

Approach

Hexagonal Architecture(Ports & Adapters)로 설계 초기부터 책임 분리. Domain · Application · Infrastructure · Adapter 계층을 명확히 나눠, AI 모델이 OpenAI에서 다른 LLM으로 교체되어도 도메인 로직이 흔들리지 않도록 구조화했습니다. SEO · AEO를 설계 초기 단계부터 고려해 검색 친화적 URL 구조와 메타데이터 체계를 적용했습니다.

Key Implementations
  1. OpenAI 스트리밍 AI 상담 — Server-Sent Events 기반 실시간 응답. 사용자 체감 지연 최소화.
  2. AES-256 대화 메시지 암호화 — 민감한 상담 내용을 DB 저장 시점에 암호화, 개인정보 보호.
  3. Redis 기반 세션 관리 + JWT 블랙리스트 — 로그아웃·토큰 탈취 대응을 위한 강제 만료 체계.
  4. CSRF 보호 + OAuth 2.0 소셜 로그인 — Google · Kakao · Naver 3종 연동, 보안 계층 다중화.
  5. Docker Compose 배포 — FastAPI · MySQL · Redis를 단일 파이프라인으로 관리.
Stack
PythonFastAPIMySQLRedisOpenAI APIDocker ComposeHexagonal ArchAES-256OAuth 2.0
№ 05

Finance Agent.

팀 리더 · 최우수 선정

재무 문서 기반 개인 자산 분석 AI — AI Multi-Agent 부트캠프 최종 프로젝트

2025.11 — 2025.12 · Team Leader (5명) · Python · Next.js · Multi-Agent · Redis · AWS

Concept

사용자가 원천징수영수증·급여명세서 등 PDF를 업로드하면, 여러 AI Agent가 자동으로 문서를 분류·분석하고 세액공제 항목을 식별한 뒤, 절세 전략과 미래 자산 시뮬레이션까지 가이드로 제공하는 서비스. 단일 LLM으로 처리하기 어려운 복합 금융 분석을 Multi-Agent 파이프라인으로 해결했습니다.

Key Implementations
  1. Multi-Agent 파이프라인 설계·구현 — 문서 분류 → 추출 → 분석 → 권고 → 시뮬레이션의 단계별 에이전트 체인 직접 설계.
  2. Hexagonal Architecture 적용 — 에이전트 교체·추가가 용이하도록 Port/Adapter 경계 명확화.
  3. Redis 캐싱 전략 — 반복 분석 요청에 대한 응답 속도 최적화, OpenAI 호출 비용 절감.
  4. 세액공제 자동 식별 + 절세 전략 — 도메인 지식을 프롬프트 엔지니어링과 검증 로직으로 구현.
  5. 팀 리더 역할 — 5인 팀의 업무 분배 · PR 리뷰 · 코드 리뷰 · 백로그 관리 · 주요 기능 다수 개발 병행.
Outcome
최우수
코드랩 아카데미 수강생 선정
5
팀 리드 (분배 · 리뷰 · 개발)
Multi + Hex
Agent 파이프라인 · Hexagonal
Stack
PythonNext.jsMulti-AgentLangChain-styleRedisMySQLAWS EC2AWS S3AWS CognitoCloudFrontRoute53
№ 06

Properties Server.

Foundation · 2023

HR 패키지 공통 코드 관리 전용 서버 — 화이트정보통신 재직 시 백엔드 단독 구축

2023.07 — 2023.12 · Individual · Backend · Spring Boot 3.x · Kotlin · Java · Elasticsearch

Problem

AS-IS HR 패키지의 공통 코드 체계는 Oracle에 수백 개 공통코드 × 수천 개 코드 디테일이 파편화되어 있어, 코드 조회·유지보수가 사업 확장의 병목이었습니다. 비즈니스 서버와 코드 데이터가 섞여 있어 운영 관리도 어려웠습니다.

Architecture

계층 재설계 중심의 접근 — 파편화된 코드 체계를 4단계 하이라키 구조로 재정의:

BizUnit (사업부) └─ CodeSys (코드 시스템) └─ CodeKind (코드 종류) └─ Code (코드 상세)

각 계층을 독립 ES 인덱스(frm-biz-unit, frm-code-sys, frm-code-kind, frm-code)로 분리하여 조회 효율과 관리 용이성을 동시에 확보. 비즈니스 서버와 분리된 전용 프로퍼티 서버로 운영해 코드 관리 책임을 격리했습니다.

Key Implementations
  1. Oracle → Elasticsearch 이관 파이프라인 — Spring Data Elasticsearch의 bulkIndex + refresh() 조합으로 JPA 기반 Oracle 원본을 일괄 이관. @Setting(shards = 3, replicas = 2).
  2. Nori 한국어 분석기 전면 적용 — 모든 텍스트 필드에 Nori 분석기를 적용해 한국어 검색 정확도 확보.
  3. 타입 하이브리드 매핑 — ID·코드류(cdId, cd, mainCd)는 Keyword(exact match), 명칭·설명류(cdNm, cdKindNm)는 Text + Nori 타입으로 구분하여 정확 매칭과 검색 정확도 동시 확보.
  4. Spring Boot 3.x Java + Kotlin 혼합 구성 — 프로젝트 부트스트랩·샘플 컨트롤러를 Kotlin(@SpringBootApplication, runApplication<Main>(*args))으로, 도메인 엔티티·서비스·리포지토리를 Java로 작성해 점진적 Kotlin 도입 경험.
  5. 아리아 기반 암호화 로직 직접 구현 — 민감 데이터 암호화 계층을 자체 구현.
  6. Elasticsearch Java API Client + REST High-Level Client 병용co.elastic.clients(신규 Java API) + org.elasticsearch.client(7.17.10) 두 클라이언트를 용도별로 구분 사용.
Stack
Spring Boot 3.xKotlinJava 17Elasticsearch 7.17Spring Data ESES Java API ClientOracleJPALombok

깊이와
넓이를 함께.

Backend
01
Java·Kotlin·Spring Boot 3.x·Spring Framework·Spring Security·JSP·Servlet·REST API·JPA·MyBatis·Flyway·PL/SQL
Frontend
02
React·Vue.js·Next.js·JavaScript·TypeScript·XML·jQuery·Flutter (협업)
Database
03
Oracle·MariaDB·MySQL·Redis·PL/SQL 프로시저·함수 설계·쿼리 최적화·INDEX 튜닝
Search / 검색엔진
04
Elasticsearch·OpenSearch·ES REST/Java API Client·Nori 한국어 분석기·Bulk API·계층 구조 인덱스 설계·Keyword/Text 하이브리드 매핑
DevOps / Infra
05
AWS (EC2 · S3 · CloudFront · Route53 · Cognito)·Docker·Heroku·Azure AD SSO·GitHub Actions·Git
AI / Automation
06
Python·FastAPI·Multi-Agent·RAG·gRPC·Selenium·OpenAI API·Groq API·DeepL API·FCM (Firebase)·Claude Code
Collaboration
07
Notion (백로그·WBS·이슈트래킹)·Slack·GitHub·Figma·Jira

꾸준함을,
숫자로 증명합니다.

Solved.ac · 백준 온라인 저지
Platinum IV
상위 2.51% · 전국 #4,701 · CLASS 5
3,516문제
Problems Solved
560
Longest Streak
1,830pt
Rating
Core Topics
정렬·재귀·자료구조·DFS/BFS·Greedy·DP·네트워크 플로우
"루틴의 결과로 축적된 숫자들." 2023년 12월 알고리즘 스터디를 시작으로, 주 5회 이상 꾸준히 문제를 풀며 쌓아온 3,516문제와 560일 연속 스트릭. 이론으로 아는 자료구조가 실무의 쿼리 튜닝과 성능 개선으로 자연스럽게 연결됩니다.

혼자서,
동료와, 실전으로.

제 학습에는 뚜렷한 단계가 있습니다. 혼자 쌓은 근간 위에 동료와 함께 심화하고, 그 지식을 실무에 바로 연결하는 궤적.

01  ·  Foundation

Personal Study

2022 — 현재 · 개인 기술 학습 아카이브

Notion 원본을 GitHub에 동기화 운영하는 학습 저장소. 총 270+ 문서, 8개 카테고리로 분류해 실무에서 마주친 문제의 배경을 체계적으로 다집니다.

BackendJAVA · Kotlin(자바 개발자를 위한 Kotlin 입문 · 다재다능 코틀린 프로그래밍) · Spring(토비의 스프링 VOL1 · 뉴렉처 · OAuth2 · Cloud) · Elasticsearch(Elastic Guide 8.9)
DevOpsDocker & CI · AWS · Observability · REST API · JBoss · Hadoop
CSOS · 자료구조 & 알고리즘 · 통신/네트워크 · JVM 메모리 모델과 GC 튜닝
DBOracle · 최적화 · Saga 패턴과 분산 트랜잭션
AIAI Multi-Agent 서비스 실전 프로젝트 · Claude Code(Plan 모드·Memory·Skill·MCP 활용)
ETCTDD · Figma · OpenProject · 면접 대비
▸ github.com/keaunsolNa/PersonalStudy
02  ·  Depth

개발새발 스터디

2024.08 — 2026.01 · 현업 8인 하브루타

현업 개발자 8인과 월 1회 하브루타 발표·토론. 발표 주제가 그대로 실무와 연결됩니다 — 인덱스 발표 달에 SK바이오로직스 쿼리 병목 10초 단축, GC 발표가 KNOCK의 G1GC 튜닝으로, Docker 발표가 멀티스테이지 빌드로.

▸ 일급 객체 · 람다 · 멀티스레드 동시성 · 인덱스 튜닝 · Docker · GC · Compiler/Interpreter · AST · Elasticsearch · 신경망 · Pretraining · Fine-Tuning
03  ·  Expansion

AI Multi-Agent

2025.11 — 2026.01 · 코드랩 아카데미

Python 기반 AI Multi-Agent 학습 및 실전 프로젝트 2개 수행(재무분석 AI · Love-note). Slack-GitHub-Notion 백로그 기반 토스식 협업, AWS 배포 실습. 최우수 수강생 선정.

▸ AWS EC2/S3/Cognito/CloudFront/Route53 · SEO/AEO · gRPC · RAG · Claude Code
Education & Certifications
국가평생교육진흥원 · 컴퓨터공학 2022.11 – 2025.04 · GPA 3.9/4.5
명지전문대학 · 문예창작학과 2011.02 – 2013.02 · GPA 3.81/4.5
정보처리기사 (2024) · 사무자동화산업기사 (2025) · SQLD (2022) · 정보처리산업기사 (2023) · 컴활 2급 (2023)

Let's
build something
that lasts.

GitHub
@keaunsolNa
Study Archive
PersonalStudy
Main Project
KNOCK
시간에 쫓겨 작동만 되는 코드가 아닌, 오래 유지될 수 있는 구조를 만들겠습니다. 새로운 기술을 도입할 때도 실제 문제 해결에 어떻게 기여하는지까지 함께 고민하겠습니다.