미리보기
기본 정보
"Talk is cheap. show me the code" - 리누스 토발즈 저 문장 처럼 말만이 아닌 코드, 데이터로써 제 생각을 증명 할 수 있는 개발자가 되고 싶은 개발자 김선민 입니다.
기술 스택
NestJS, TypeScript, JavaScript, TypeORM, PostgreSQL, AWS, Python
경력
(주)스타오토모빌
대리 | 플랫폼사업부 | 재직 중
2023.11. ~ 재직 중 (1년 4개월)
B2C 차량 렌트/리스 비교 플랫폼 백엔드 개발 및 외부 API 연동
Nest.js, TypeOrm
Postgresql
AWS
GitAction
(주)이노그루
주임 | 기업부설연구소
2021.05. ~ 2023.08. (2년 4개월)
챗봇 서비스 개발 : 기본적으로 룰베이스 챗봇 대화 흐름을 구축하였고, 기존 룰베이스 챗봇 서비스에서 자연어 질의, 사용자 질의에 따른 정보 검색을 위해 Elasticsearch을 도입한 경험이 있습니다.
데이터 시각화 및 데이터 분석 : Python(Pandas, numpy)을 통해 대용량 데이터를 분석후 데이터의 특징에 맞는 테이블을 설계하여 적재한 경험있고 이 과정을 쉘스크립트를 통해 자동화한 경험이 있습니다.
데이터 시각화에 필요한 데이터를 Postgres, Mysql등 RDBMS를 사용하여 시각화 쿼리를 작성하고 로우 쿼리의 경우 원인을 파악하여 인덱스, 쿼리 튜닝을 통해 1분 이상 걸리는 쿼리를 10초 미만으로 성능을 향상한 경험이 있습니다.기술 연구 : Yolov5와 deepsort 알고리즘을 활용하여 기존 Yolov3-darknet을 사용했을때 보다 영상내에 동일 차량 검출의 성능을 기존 10FPS에서 40FPS로 향상 시킨 경험이 있습니다.
LangChain, GPT-4, node.js을 활용해 PDF, word, web등의 데이터에 대해 질의 응답이 가능한 챗봇 API를 개발 하여 기존 챗봇의 단점인 사람이 일일히 데이터 수집, 정리하는 과정을 줄이는 연구를 했습니다.
프로젝트
ottol
개인
2023.09. ~ 진행 중
내용 : 1회 ~ 현재 까지의 로또 당첨 결과를 수집하여 사용자가 선택한 로또번호가 1회 부터 현재까지의 총 당첨 결과를 도출
- 초기 현재까지의 데이터를 수집 후 적재
- 매주 최신 데이터 수집 후 적재
- 로또 번호 검색용 테이블 생성
역활 : 로또 데이터 수집 및 당첨 결과 반환
성과 : 개발자 1명(100%)
사용 기술 : typescript, nest.js, postgres, AWS, docker
자체 NLP서버 개발
이노그루
2023.06. ~ 2023.07.
내용 : 자체 챗봇 솔루션 개발을 위해 자체 NLP서버 구축
- NLP.js를 통해 DB로 부터 인식해야 하는 단어(엔티티)를 불러와 사용자 질의로 부터 정의된 단어 도출
- node.js + express.js를 기반으로 PM2를 통해 배포
역활 : NLP서버 개발
- 각각의 챗봇에는 정의된 단어가 달라 각각의 학습 모델을 만들고 불러오기 위해 nlp.js 내부 라이브러리 소스를 수정하여 기능 개발
기여도 : 개발자 1명(100%)
사용 기술 : node.js, express.js, nlp.js
GPT-4를 활용한 외부 데이터 질의 기능 개발
이노그루
2023.03. ~ 2023.05.
내용 : LangChain + GPT-4를 활용하여 외부 데이터에 대해 질의가 가능한 API제작
- LangChain + GPT-4를 활용하여 외부데이터(PDF, WORD, WEB등)을 임베딩후 백터 저장소에 저장하여 사용자의 질의에 대해 응답이 가능하게함
- node.js, express.js를 기반으로 API를 제작하고 PM2를 사용하여 배포
역활 : API 개발
기여도 : 개발자1명(100%)
사용기술 : node.js, express.js, typescript, LangChain, pinecone, HNSWLib, gpt-4
특허중심 연계 활용기반 구축을 위한 AI TASK 연구 및 시범서비스 구축
이노그루
2022.07. ~ 2023.01.
내용 : IP5 국가의 특허 데이터를 수집하여 적재, 정제 후 통계 데이터를 생성 후 도출
- Python(Pandas)를 활용하여 대용량 특허 데이터 전처리 및 DB 적재
- 적재된 특허데이터를 Postgres 쿼리를 통해 유의미한 데이터로 후처리
- 후처리된 데이터를 시각화용 통계테이블로 생성
역활 : 데이터 적재 및 정재, 통계 테이블 생성
- 기존 적재소스를 수정하여 적재 로그 저장 및 에러처리 수정
- 적재 자동화를 위해 쉘 스크립트 제작
기여도 : 개발자 2명(80%)
사용 기술 : python, pandas, numpy, postgres, centos
BMW Korea 챗봇 서비스 구축
이노그루
2023.03. ~ 2023.04.
- 내용 : BMW Korea 챗봇 서비스 프로젝트 POC 개발
- 고객사의 요구사항에 충족하는 샘플 챗봇 개발
역활 : 챗봇 개발
기여도: 개발자1명(100%)
결과: https://www.aitimes.kr/news/articleView.html?idxno=23171
- 내용 : 상담원의 반복 업무를 챗봇으로 구현하고, 챗봇으로 수행하지 못 하는 업무에 한하여 실시간으로 상담사와 연락할 수 있는 상담사 챗봇, 챗봇 및 상담사 챗봇을 관리 할 수 있는 운영 관리 사이트 제작
- 룰베이스 챗봇 흐름 설계, 카카오톡 연동
- 운영 관리 페이지 내에 챗봇, 상담사 챗봇 관련 대시보드 및 통계 페이지 개발
역활 : 대시보드 및 통계 페이지 개발
기여도 : 개발자 4명(30%)
사용 기술 : java, spring, javascript, centos, AWS
문화정보원 전통문양 챗봇서비스 구축
이노그루
2021.08. ~ 2021.12.
내용 : 전통 문양 데이터베이스를 활용한 전통문양 챗봇 서비스 구축
- 룰베이스 대화 흐름과 자연어 질의에 따른 검색 결과를 도출 할 수 있는 대화 흐름 설계
- Elasticsearch를 통해 자연어 질의에 따른 전통 문양 정보 출력
- 전통 문양 전용 챗봇 응답 카드 UI 개발
역활 : 챗봇 대화 흐름 설계, 자연어 검색 개발
기여도 : 개발자3명(70%)
사용 기술 : java, javascript, Elasticsearch, centos
현대BNG스틸 사내 인사 지원 챗봇 고도화
이노그루
2021.08. ~ 2021.10.
내용 : 현대BNG스틸 사내 인사 지원 챗봇 고도화에 따른 룰베이스 챗봇 기능 추가
- 챗봇 기능 추가에 따른 대화 흐름 설계
- 기존 개발자를 통해야만 수정 가능했던 챗봇 엔티티 정보 수정을 사용자(운영)가 간단히 수정 가능 하도록 엔티티 자동 수정, 재배포 기능 자동화
역활 : 챗봇 대화 흐름 설계, 챗봇 기능 추가, 유지 보수
기여도 : 개발자1명(100%)
사용 기술 : java, javascript, oracle, centos
WeArtist
KH정보교육원
2021.04. ~ 2021.04.
내용 : 사진 또는 그림을 가상의 개인 전시관에 전시할 수 있고 사진 또는 그림을 제작하는 과정을 개인 방송의 형태로 제공하는 사이트
- 개인 전시관의 경우 Three.js을 사용하여 3D전시관을 만들어 전시관속 액자에 사진,그림은 전시
- 방송의 경우 WebRTC를 사용하여 구현하고, 1:N의 형태로 가능하게 구현
역활 : 전시관 구현 기능, 라이브 방송 기능
기여도 : 개발자 3명(40%)
사용기술 : java, spring, javascript, Three.js, WebRTC, AWS
포트폴리오
URL
교육
KH정보교육원
사설 교육 | 디지털 콘텐츠 융합 응용SW 엔지니어 양성과정
2020.09. ~ 2021.04. | 졸업
자격증
네트워크관리사
2급 | 한국정보통신자격협회
2016.07.