H.P
EMAIL
학력사항
- 서강대학교 경제학부 학사 (2014.02 - 2018.02)
 
👨💻 My career
- 2021.11 RSQUARE 데이터 엔지니어 입사
- Airflow + EKS(AWS Elastic Kubernetes Service)로 자동화 환경 구축
- 회사에서 진행되는 Data Warehouse 적재 프로세스 및 기타 정보 크롤링 프로세스를 Airflow로 자동화했습니다.
 
- Helm 차트는 공식 Airflow 차트를 사용하였으며, EKS는 t3.xlarge를 사용하는 구성으로 구축을 완료하였습니다.
 
- 단독 개발하고 운영 중인 DAG(Directed Acyclic Graph)은 총 40개이며 DAG 내의 총 Task 개수는 200개 이상입니다.
 
 
- 사내 신사업 DB의 DBA(DataBase Administrator) 업무
- 신사업 DB의 DBA업무를 맡으며, 각종 DDL 스크립트 실행 및 데이터 추출 요청을 맡았습니다.
 
- 통계에 필요한 계산 쿼리와 집계성 쿼리를 작성하여 운영하였고, 개발자들이 제출한 운영계 반영 쿼리를 검수 후에 수행하는 업무를 하였습니다.
 
 
- 신사업 대시보드 구성 및 유지보수
- 신사업의 매출, 고객 데이터 등을 Redash 대시보드로 구성하여 관리하고 있습니다.
 
- 매출을 시계열로 지속적으로 관리하고, 신사업부문에서 필요로 하는 통계 데이터를 대시보드에 띄움으로써, 불필요한 커뮤니케이션 비용을 줄이고 신사업부문의 즉각적인 피드백을 받을 수 있었습니다.
 
 
- 공공데이터 크롤링 자동화
- 공공데이터를 크롤링하는 과정을 Airflow로 자동화하여 DW에 적재 중입니다.
 
- 검찰청, 은행, 우체국, 학교, 주차장 등의 위, 경도 데이터를 수집하여, 제품 내의 지도에 띄워주는 업무를 수행했습니다.
 
 
- Capthca 인식 및 우회 자동화
- 국토교통부 실거래가 사이트에서 Captcha 인식을 자동화하고, 우회를 자동화했습니다.
 
- Selenium을 이용하여 Captcha 팝업에서 이미지를 300개 가량 자동으로 다운로드 하였고, 이를 직접 손수 라벨링하여 학습 모델을 구축했습니다.
 
- 실거래가 크롤링 시에는 Captcha로 인한 차단이 발생하였을 때 Selenium으로 팝업 사이트를 띄우고, 해당 이미지를 임시로 다운로드한 이후에, 이미지를 keras 모델에서 추론하여, 우회하는 프로세스를 만들었습니다. 정확도는 95%였습니다.
 
- 해당 작업으로 인해 연간 3,600만원의 비용을 절약했습니다.
 
 
- 외부 솔루션 대체 개발 및 비용 절감
- 기존에 외부에서 큰 비용(연 1억)을 들여 사용하던 네이버 잠재 매물 크롤링 솔루션을 내재화하여 개발하였고, 외부 솔루션보다 8배 빠른 성능을 보이는 프로그램을 제작했습니다.
 
- multiprocessing의 Pool과 imap_async를 이용해 병렬 처리를 하였고, 그로 인해 외부솔루션은 동일 조건(전국, 상업용)에 대한 데이터에 대해 48시간이 소요될 때, 제가 개발한 솔루션은 6시간만에 모든 조건에 맞춰 크롤링을 수행했습니다.
- starmap, map, imap, map_async, imap_async 등의 차이를 이해하고 적용할 수 있는 기회였습니다.
 
- 첫 개발 시에는 kargs(keyword argument) 전달을 위해 starmap을 이용하였으나, 이후 데이터 처리의 속도와 방향을 고려하여 imap_async로 전환하였고 더 빠른 성능과 데이터 정합성을 보존할 수 있었습니다.
 
 
- 매 주 일요일마다 100만건 가량의 데이터를 수집하여, 사내 솔루션에 데이터를 가공하여 적재하는 처리를 하였습니다.
 
 
- 등기사건처리현황 크롤링 개발
- 기존 타 업체들은 Selenium으로 개발했던 것을 Requests로 개발하여, 타 업체보다 더 시간을 줄여서 크롤링을 성공했습니다.
 
- 타 업체는 3,600건의 사건에 대해서 6시간 수행을 하여, 당사에 데이터를 취합하여 전달하였으나 제가 개발한 솔루션은 3시간 가량 수행 후 데이터를 DB에 직접 적재하는 프로세스를 취했습니다.
 
 
 
- 2021.04 HKSOFT 안드로이드 개발자로 입사
- 블록체인 기반 증명서 지갑, 코인 지갑 어플리케이션 WIZID 제작
- Java + MVVM + RxJava3 + Room + Retrofit2 이용
 
- Indy SDK라는 블록체인 SDK를 불러와서 작업을 진행했음.
 
- 다운로드 링크
 
- 아쉬웠던 점:
- Indy SDK가 무거워서 앱 번들 자체의 용량이 매우 컸는데, 이를 최적화할 방법을 모색하지 못했던 것이 아쉽습니다. 이 시기가 플레이스토어 업로드 시에 aab 이용이 강제되는 상황이었는데 apk가 오히려 용량이 작았던 점이 이해가 안 됐었습니다. 지금이라도 이유를 알고 싶습니다.
 
- 의존성 주입을 제대로 이용하지 못 한 것이 아쉬웠습니다. 분명히 의존성을 줄일 부분이 많았음에도 불구하고, 개발 시간에 급급하여 의존성 주입 프레임워크(Hilt or Dagger2)를 이용하지 못한 것이 이 프로젝트에서 가장 아쉬운 점 중에 하나입니다.
 
 
 
- 감정편지 어플리케이션 개발
- Firebase + Coroutine 이용
 
- 다운로드 링크:
 
- 아쉬웠던 점:
- Animation을 XML과 Kotlin Extension을 혼용해서 사용했던 점이 아쉽습니다. 이 부분은 MotionLayout으로 대체가 가능했던 부분이 있을 것이라고 생각이 듭니다.
 
 
 
- 까만물투어 어플리케이션 개발
- Kotlin + Coroutine + Retrofit2 이용
 
- GPS 이용 + 위치 트래킹
 
- QR 코드 인식 화면 커스터마이징
 
- 다운로드 링크:
 
- 아쉬웠던 점:
- Coroutine에 대한 이해가 전반적으로 부족했을 때 작업을 했던 어플리케이션이었습니다. 의도된 대로 동작하지 않는 로직이 많아서, 여러 꼼수를 많이 썼던 어플리케이션이었는데, 그에 따른 사이드 이펙트를 고치기 위해선 coroutine의 내장함수들을 좀 더 공부했어야 했다는 아쉬움이 듭니다.
 
 
 
- 남북금융어사전 어플리케이션 개발
- Kotlin + Coroutine + MVVM + Retrofit2 이용
 
- 다운로드 링크:
 
- 아쉬웠던 점:
- UI 구현에 있어서, 얕은 수를 많이 썼던 어플리케이션이었습니다. ConstraintLayout에 대한 이해가 많이 필요했던 것 같고, 그 점은 꾸준히 공부 중입니다.
 
 
 
- 사주 어플리케이션 소우주 개발
- Kotlin 이용
 
- Webview + PHP 이용한 사주 프로그램 통합
 
- 다운로드 링크:
 
- 아쉬웠던 점:
- 간단한 어플리케이션이어서, 구현 자체는 매우 쉬웠습니다. 다만, 좀 더 UI를 제가 디자인 했었는데, 더 예쁘게 했으면 좋았을 것 같다는 아쉬움이 듭니다.
 
 
 
 
- 2020.11 (주)트리프리 입사
- 세컨드리 백엔드 제작
 
- 세컨드리 패션 추천 시스템 제작
 
- 세컨드리 프론트엔드 제작 서포트
- React + TypeScript 사용
 
- Jest를 통한 단위 테스트 시행
 
 
- 세컨드리 웹을 Android + iOS WebView로 감싸는 작업 진행
- JAVA, Swift로 작업
 
- DeepLink 활용한 다운로드 유도
 
- FCM + Notification 활용
 
- GoogleAnalytics를 부착하여 사용자 통계에 활용
 
- 다운로드 링크:
 
- 아쉬웠던 점:
 
 
 
- 2020.06 딥헬릭스(주) 선임연구원으로 입사
 
- 2020.04 (주)미스테리코 퇴사
 
- 2019.11 (주)미스테리코에 합병
 
- 2018.02 서강대학교 경제학부 졸업
 
- 2017.10 개인사업자 챗봇공방 창업
 
🏆 Prize
sbqsbqsbq - Overview
개인 프로젝트나 팀 프로젝트를 진행하고 있는 깃허브 계정입니다.