미리보기
기본 정보
제가 배울 수 있는, 제가 배풀 수 있는 그런 회사를 들어가고 싶습니다.
기술 스택
Java, Spring Boot, Oracle, PostgreSQL, mybatis
경력
스마트비즈
주임 | ERP 2팀 | 재직 중
2020.03. ~ 재직 중 (5년)
ERP 프로그램의 인사모듈
- 팀 내 개발리더
- 회사 내 개발교육
프로젝트
ERP OPEN API 통신 보안적용
스마트비즈
2023.08. ~ 2023.11.
주 내용 : API통신 시 요청/응답 데이터 RSA / AES256방식 암호화 적용 및 모니터링
상세내용
타 회사와 API통신 프로젝트를 진행하는 도중 데이터 암호화의 필요성이 있다 판단되어 해당 프로젝트를 진행하게 되었습니다.
이때 타 회사에서의 요청은 AOP를 사용해서 클라이언트 인증, 데이터 복호화, 역직렬화 기능을 비즈니스 영역과 분리해서 구현했습니다.
나의 역할
- AOP를 사용해서 클라이언트 인증, 데이터 복호화, 역직렬화 / 비즈니스 영역과 분리
- API 전용 객체 구조화 설립
- Mock을 활용해 단위테스트 진행
ERP Back-End 인사모듈 도메인 중심 설계(DDD)
스마트비즈
2023.06. ~ 진행 중
주 내용 : ERP Back-End 인사모듈 객체화 / 구조화 프로젝트(이하, 객체화 프로젝트)를 진행하며 도메인 중심의 설계 도입
상세 내용
객체화 프로젝트를 진행할 때 나온 결과물에 좀 더 시너지를 주고싶어서 자체적으로 도입을 했으며 약 1달간의 준비 후 진행했습니다.
화면단위의 기능만 부여되어있다보니 같은 도메인임에도 여러 화면단위의 기능에서 데이터조작기능이 구현되어있었으며 이로인해 도메인이 수정될 때 마다 각 기능을 찾아서 수정해야하는 번거로움 또한 없애고 싶었습니다.
나의 역할
- 도메인 채택
- 도메인에 대한 Package 규칙 설립
- 휴가, 퇴직연금, 근무요청에 적용
ERP Back-End 인사모듈 객체화 / 구조화
스마트비즈
2022.05. ~ 진행 중
주 내용 : 객체를 사용하지 않은 레거시 프로젝트의 인사모듈 객체화
상세 내용
오직 Map으로만 데이터 형태를 표현 및 활용함으로 인해 새로운 기능 구현 뿐만 아니라 관리할 때 필요성을 느껴 자체적으로 해당 프로젝트를 진행했습니다.
새로운 기능을 구현할 때는 객체를 활용해서 구현하며 기존의 기능은 작은 기능부터 점진적으로 객체로 바꾸는 과정을 밟았으며 이때 필요한 규칙 및 Package구조를 정했습니다. 이때 팀원들과 회의하면서 인사모듈에 맞는 구조와 규칙을 정했습니다.
나의 역할
- 코드컨벤션 개설
- Package 구조와 규칙 개설
Goparts
스마트비즈
2022.07. ~ 2023.03.
설명 : "Gopart"라는 회사 전용의 ERP프로그램 제작
환경 : Vue.ts + SpringBoot 2.5.x(Java8)
프로젝트에서의 역할 :
- 프로그램의 로그인기능 및 사용자, 회사 등 기초설정에 대한 설정
- 관련 팀원 및 관계자에게 Vue와 Typescript 교육 및 팀원 간의 코드리뷰 진행
ERP-Lite
스마트비즈
2021.10. ~ 진행 중
설명 : 프로그램 ERP의 경량화버전
환경 : Vue.ts + SpringBoot 2.5.x(Java8)
프로젝트에서의 역할 : 팀원 및 관계자에게 Vue와 Typescript 교육, 팀 내 인사관련 모듈 설명 및 개발리드
ERP
스마트비즈
2020.03. ~ 진행 중
설명 : ERP 프로그램이며 회사의 메인프로그램
환경 : AngularJs(ES5 + Jquery) + SpringBoot 2.5.x(Java8)
프로젝트에서의 역할 : ERP 프로그램의 인사모듈을 담당
자기소개
개선하기 위해 여러가지 시도를 합니다.
첫 회사에 들어왔을 때 오직 Map으로만 관리하는 것을 보고 방식에 의아했지만 회사 규칙이니 받아들었습니다.
이 의아함은 2년 동안 지속되다가 자체적으로 객체화 / 구조화 프로젝트를 진행했습니다. 초창기에는 다른 팀원들에게 여러 부정적인 이야기를 들었지만 그럴수록 주변을 설득하면서 프로젝트를 진행했습니다. 몇몇 기능들을 객체화 및 구조화를 한 후 여러가지 이슈와 변경점을 눈에 띄는 속도로 개선해나가며 팀원이 합류할 때 사용하는 객체들을 보여주며 비즈니스를 설명함으로서 팀원들의 업무분석에도 도움을 주었습니다.
하루에 한번쯤은 "그때 그냥 바꿀 생각을 접고 Map을 했으면 어떻게 됐을까?"라는 생각을 합니다. 그럴 때 마다 이런 개선프로젝트를 하며 쌓아온 경험을 보며 많은 생각을 하게 되며 앞으로 다른 프로젝트들을 잘할 수 있을거라는 자신감을 얻으며 살아가고 있습니다.
배움은 멈추지않습니다.
대학생 때 부터 학교에서 가르쳐주는 지식말고 어떤 지식들이 있을까 궁금해서 맨땅에 헤딩하듯 하나하나 컨퍼런스와 세미나 등을 찾아가며 들었습니다. 이때의 습관은 지금까지도 이어져 요즘도 여러 발표들을 직접가서 접하고 그 자리에서 만난 개발자들과 대화하며 다른 분야에서는 어떤지, 서로 어떤 지식을 접했는지 등 지식을 공유해가면서 새로운 지식을 접하고 있습니다.
최근에는 Kafka, Redis, JPA에 눈길이 가서 Kafka와 Redis는 관련 소식을 접하고 JPA는 별도 공부 중에 있습니다.
대외활동
한빛N MSA
한빛미디어
한빛미디어에서 주최하는 짧은 세미나
참여 프로그램 : Debugger, TDD, Code Review, Re-Search, Open Source, Documentation, Monitoring
인상깊게 들은 프로그램 : Code Review
이때 당시 팀원들의 Code Review를 어떻게 해줘야할지를 고민하고 있을 때 들어서 더욱 의미가 있었으며 해당 프로그램으로 코드리뷰 관련으로 큰 도움을 받아 팀 내 코드리뷰 문화를 활성화 및 개선을 했습니다.
I/O Extended 2023 Seoul
GDG Seoul
주제 : Google I/O 2023의 주요내용과 여러 구글 기술에 대한 컨퍼런스
인상깊게 들은 프로그램 : 구글 클라우드의 보안이야기
"구글이 보안을 어디까지 신경쓰는가"에 대한 관련 발표를 들으며 보안의 깊이를 다시한번 느끼게 해주었으며 추후 API통신의 데이터 암호화작업에 큰 도움을 주었습니다.
Spring camp 2023
한국 스프링 사용자 모임(KSUG)
주제 : SpringFramework에 대한 기술 컨퍼런스
인상깊게 들은 프로그램 : 대규모 엔터프라이즈 시스템 개선 경험기
이때 당시 한창 객체화 프로젝트를 진행하며 데이터 조작이 흩어져있는 점, 특정 기능이 중복되어 구현되어 있는 점 등 여러 불편한 부분을 개선하고싶은 생각을 하는 도중 해당 프로그램에서 들은 여러 아키텍처, 디자인패턴 등을 접하며 해답을 얻어 지금의 DDD프로젝트를 시작하게 된 계기를 만들어주었습니다.
교육
두원공과대학교
대학교(전문학사) | 컴퓨터공학과
2015.03. ~ 2020.02. | 졸업
KH 정보교육원
사설 교육 | 자바(Java) 프레임워크 개발자양성과정
2019.07. ~ 2020.02. | 졸업