What I do
Java를 통해 안정적인 백엔드 애플리케이션을 개발하고, 필요한 API 서비스 로직을 구현할 수 있습니다. Spring 및 SpringBoot 프레임워크를 사용하여 빠르고 효율적인 웹 서비스를 구축할 수 있으며 유지보수성이 뛰어난 객체지향적 프로그래밍에 중점을 두고 있습니다.
데이터베이스 설계 및 관리를 할 수 있습니다. RDBMS인 MySQL을 주로 사용하여 복잡한 쿼리를 작성하고 최적화할 수 있습니다. Kafka를 사용하여 메시지 프로듀싱 및 컨슈밍하여 처리할 수 있습니다. Redis나 MongoDB 같은 NoSQL 저장소에도 관심이 있습니다.
JavaScript를 통해 서버로부터 API를 호출하고, JSON 데이터를 활용한 작업을 할 수 있습니다. 함수를 통한 동적인 웹 페이지를 구현할 수 있으며, 다양한 JavaScript 라이브러리를 사용하여 프론트엔드 애플리케이션을 개발할 수 있습니다.
Apache Tomcat을 활용하여 Java 웹 애플리케이션을 배포,운영 및 관리할 수 있습니다. Maven과 Gradle을 사용하여 프로젝트 빌드, 의존성 관리 및 배포 환경을 효율적으로 구축할 수 있습니다.
ExtJS를 3년 이상 사용하였으며 제공되는 다양한 컴포넌트와 함수를 활용하여 복잡한 UI를 자유자재로 구현할 수 있습니다. 또한, Next.js와 React.js와 같은 JavaScript 라이브러리를 가볍게 경험해보았으며, 이와 같은 라이브러리를 활용하여 효율적이고 사용자 친화적인 웹 애플리케이션을 개발할 수 있습니다.
Git을 사용하여 소스 코드 버전 관리를 수행하며 팀 작업의 효율성을 향상시킬 수 있습니다. 분산 버전관리 시스템의 장점을 활용하여 협업 프로젝트에서의 코드 변경사항을 효과적으로 추적하고 병합, 롤백 등의 작업을 할 수 있습니다.
OAuth를 기반으로 IdP(ID제공자)와 SP(서비스제공자) 측면에서 SSO(SingleSignOn) 기능을 구현할 수 있습니다. JWT 형태의 AccessToken과 RefreshToken을 사용한 인증 및 재인증 로직을 구현하여 프로젝트에 적용해본 경험이 있습니다.
Swagger와 Spring Rest Docs를 사용하여 RESTful API의 문서화를 자동화할 수 있습니다. Swagger를 통해 API의 명세를 시각적으로 표현할 수 있으며, 단위테스트 코드를 기반으로 Spring Rest Docs를 생성할 수 있습니다.
Ibatis와 MyBatis를 활용하여 데이터 매퍼를 효율적으로 사용하고, 데이터베이스 연동 작업을 진행할 수 있습니다. JPA를 가볍게 경험해보았으며 JPA를 활용하여 CRUD 처리를 구현할 수 있습니다.
주로 IntellJ IDEA와 VS Code를 사용하여 개발하며, Eclipse와 WebStorm도 사용할 수 있습니다. GitLab과 Confluence, Mattermost를 통한 협업 경험이 있습니다.
Kubernetes 기반의 MSA 환경을 경험해보았으며, 컨테이너화된 애플리케이션의 효율적인 배포와 관리에 활용해본 경험이 있습니다.
Featured Projects
전자문서 자동발행 시스템
전자문서 자동발행 시스템 업그레이드 [2023.08 - 2023.10] 사내 각종 ERP 제품에서 사용하는 견적 및 발주서 전자문서 자동발행 시스템 1. Spring Legacy Project로 개발되어 10년 넘게 운영중인 전자문서 자동발행 시스템 버전 업그레이드 2. 자바 및 프레임워크 버전 업그레이드 및 코드 리팩토링을 통한 프로그램 성능 및 유지보수성 향상 - Java 8 → 11 / Spring → SpringBoot - iBatis → MyBatis - 빌드 자동화 시스템 (Maven → Gradle) - Spring 설정 방식 변경 (Xml config → Java config)
Educations
한신대학교
죽전고등학교
Careers
스마일게이트
그룹사시스템 개발 및 운영
가비아
그룹웨어 개발 및 운영
아이퀘스트
웹 솔루션 개발 및 운영
Certificates
SQLD
한국데이터산업진흥원에서 주관하는 데이터베이스 SQL 국가공인 자격증
정보처리기사
한국산업인력공단에서 시행하는 국가공인 자격증