cv

Basics

Name 이황로(Hwangro Lee)
Label Software Engineer
Email hwangro123@gmail.com
Phone 010-4503-7743
Url https://hwangrolee.github.io/
Github https://github.com/hwangrolee/
Linkedin https://www.linkedin.com/in/hwangro-lee-68082a185/
Medium https://medium.com/@lhr0419
Summary 새로움을 즐기고 어려움을 극복하면서 개발을 하고 있습니다.

스타트업에서 웹 프론트엔드/백엔드 업무 모두 경험을 했고 수많은 새로운 기능을 개발했으며 버그를 수정해왔습니다. 그리고 서비스가 불안정할 때 MySQL, Redis 등 시스템 퍼포먼스를 개선하여 안정화 시킨 경험이 있고 제가 좋아하는 업무입니다.

평소 소통과 신뢰를 중시하며 사소한 문제라도 팀원과 소통하는 편입니다. 특히 코드리뷰를 하면서 사소한 부분이라도 궁금한 부분에 대해서 소통합니다. 코드리뷰를 통해 잠재적 버그와 좋은 코드품질 유지, 견고한 서비스를 만들기 위해 노력하고 있습니다.

개발할 때 현재 개발 상황과 가까운 미래를 생각하여 오버엔지니어링이 되지 않도록 항상 고민합니다.

최근에는 테크 리드로써 팀원들이 즐겁게 개발하면서 성장하기 위해 어떻게 팀을 운영해야 할지 고민을 많이 하고 여러 시도를 했습니다.
 - 팀원 의견을 듣기 위한 정기적 1 on 1.
 - 업무에 대한 작은 부담을 주어서 책임감을 가지게 하기 위한 데일리 미팅
 - 코드 안정성과 코드 읽기 능력 향상, 책임 분배를 위한 코드 리뷰
 - PT 능력을 기르고 자신만의 경험을 공유하기 위한 DEV 세션
 - 본인의 경험과 지식을 잘 정리하기 위한 회사 블로그 운영
 - 특정 개발자에 의존하지 않고 안정적으로 운영하기 위해 Bus Factor 방식으로 운영
It's me 1. 평상시에는 조용한 사람이지만 일할 때 만큼은 제 의견을 최대한 말하려고 해요.
2. 퇴근해도 노트북은 들고 집으로 가요. 개발자는 퇴근 후에도 장애가 나면 바로 살펴볼 수 있어야 한다고 생각해요.
3. 개발자는 꼼꼼해야 하고 스스로 잘했는지 의심해야 한다고 생각해요.
4. 동료가 작성한 코드를 신뢰하기 보다 의심하고 개선점을 찾을 수 있어야 한다고 생각합니다.
5. 개발할 때에는 여러 명에게 코드 리뷰를 요청해요. 코드 리뷰는 코드에 대한 책임이 분산시키고 장애 발생시 다른 사람이 빠르게 해결 할 수 있는 환경을 제공해요.
6. 아침마다 오늘 할일을 정리하는 편이에요.
7. 오랜 시간 하나의 업무에 매달리는 팀원이 있으면 신경이 쓰여요.
8. 문제 해결을 위해 혼자 너무 많은 시간을 쓰는 사람을 좋아하지 않아요.
9. 유연한 사고 방식을 가지고 다른 사람의 의견에 경청 할 줄 아는 사람을 선호하고 저도 경청하려고 노력해요.
10. 자신의 생각을 논리적으로 다른 사람에게 표현하고 설득하기 위해 노력하는 사람을 선호해요

Work

  • 2023.05 - 현재
    Technical Lead
    Metric Studio Inc. (NNT)
    NNT Tech 팀 테크리드, 팀 빌딩

    1. 프로젝트 PM , 개발 자문
     - Hyundai DDM 2.0 (w/ INNOCEAN)
     - Innocean Ads Hub 1차
     - LGU+ Marketing Data Warehouse
     - JYPThreeSix 커머스 데이터 통합 및 매출 대시보드

    2. NNT Consulting 서포트
     - Content SEO 를 위한 서브폴더/서브 도메인 워드프레스 서버 셋업 가이드
     - 리포트 자동화 파이프라인 구축
     - GCP/AWS 기반 서버리스 아키텍처 설계 및 개발

    3. 시스템 관리 및 사용 기술
     - 클라우드 비용 절감을 위한 퍼포먼스 개선
     - Cloud Quotas, Cloud Billing Budget
     - BigQuery 쿼리 개선
     - Python, Java, Spring boot, Airflow
     - 크롤링(Selenium, Playwrite)
  • 2019.06 - 2023.03
    Software Developer
    Tapas Entertainment(Kakao Entertainment)
    글로벌 웹툰 서비스
    재무/잉크/결제 업무 팀장
    대부분의 기능 개발을 주도적으로 개발 진행

    1. Spring, Java 기반 서버 개발
     - spring, java, MySQL, MongoDB, Redis, AWS(ec2, s3, rds, mq, etc...), 등
      - 다양한 피처 개발 및 버그 수정, 퍼포먼스 개선

    2. TDD
     - Spock framework 을 이용한 테스트코드 작성
     - 새로운 프로젝트에 Junit5 도입.
     -대부분의 코드 리뷰 적극적으로 참여(잠재적 버그 발견, 코드 품질 향상)

    3. 웹 프론트엔드 개발
     - jquery, jacascript, html, css, grunt
     - 메인 화면 개편
     - 대시보드 전체 개편(리드)
     - 전반적인 웹 개발

    4. 트래픽 장애 해결을 위한 디비 쿼리 개선
     - 슬로 쿼리 튜닝
     - 쿼리 용도에 따라 isolation level 을 조정
     - 트랜잭션을 리팩토링하여 퍼포먼스 향상시킴
     - 쿼리 용도에 따라 캐시 처리 및 리플리카 디비로 전환

    5. 레디스 최적화
     - 캐시의 용도를 파악 후 TTL 조정
     - 블락을 유발하는 명령어 개선

    6 새로운 기술 도입
     - 임시저장 기능을 위한 MongoDB 도입
     - redis pub/sub 단점을 보완하기 위해 RabbitMQ 도입
  • 2018.02 - 2018.10
    Software Developer
    (주)엑스트라이버
    패키지 여행상품을 모아 볼 수 있는 메타 서비스

    1. Tripstore 앱 관리 어드민 개발 및 유지보수
     - 어드민 리뉴얼(AngularJS 4 > Freemarker)
     - 홈 카테고리 관리 기능 구현
     - 태그 관리 기능 구현
     - 프로모션 관리 기능 구현
     - 여행상품에 적용되는 다양한 이벤트 관리 기능 구현(특가 등)
     - 기타 다양한 기능 구현

    2. Tripstore 앱 신규기능 API 개발
     - 홈카테고리 API 구현
     - 기타 API 구현

    3. 스케쥴러 서버 구현
     - 예약시 어드민페이지에 알람
     - 평일 예약현황을 이메일로 전송
     - 태그 및 프로모션, 특가 적용 및 해제 기능

    4. 페이스북 및 크리테오 리타게팅 모듈 개발

    5. 개발환경
     - Spring boot + Kotlin 기반 서버 프로그래밍
     - Spring boot batch + Quartz 조합으로 배치 및 스케쥴러 구현
      - AWS Aurora DB로 데이터 관리
      - AWS ElasticCache로 캐시관리
  • 2017.05 - 2017.10
    Software Developer
    Desire Lab
    브랜드 의류를 모아 볼 수 있는 메타서비스

    1. YOIL 앱 관리 어드민 개발 및 유지보수
     - 크롤링한 상품 데이터를 자동으로 가공하도록 구현
     - 어드민 기능 개선
     - 커머스 관리용 어드민 개발

    2. YOIL 앱 신규 기능 API 개발

    3. 카테고리 체계도 재정의
     - neo4j를 활용하여 카테고리를 그래프형태로 재정의

    4. 페이스북 및 크리테오 리타게팅 모듈 개발

    5. MSA 기반으로 개발

    6. 개발환경
     - Spring boot + Java 기반 서버 프로그래밍
     - AWS Aurora DB, MongoDB, DynamoDB로 데이터 관리
     -AWS ElasticCache로 캐쉬 관리
     - EC2 + ELB + Ansible + Jenkins 기반 서버 운영 및 배포
  • 2016.02 - 2017.03
    Software Developer
    DSMentoring
    1.LDAP성능관리 솔루션
     - 직원, 권한관리, 로그, 알림, 서버 상태 확인이 가능한 솔루션
     - backend, frontend 개발
     1) 대부분의 CURD및 frontend영역 개발
     - 실시간 모니터닝 기능 구현
     1) Websocket로 실시간 모니터링 데이터 통신
     2) D3를 이용하여 실시간 모니터링 뷰 구현
     - 개발환경
     1) Framework: Spring Framework 4.x, AngularJS
     2) Database: MariaDB, Redis

    2. 전자정부 디렉토리 사업
     - LDAP을 활용한 직원 및 조직관리 구
     - LDAP을 활용한 직원 및 임시 조직관리 구현
     1) 직원 권한에 따라 소속직원 추가,수정, 삭제 구현
     2) 임시조직 생성, 수정, 삭제 구현
     - LDAP을 기반으로 조직도 구현
     1) 사용자 권한에 따라 자신이 속한 조직도만 보이도록 구현
     - LDAP기반, 직원 권한에 따른 검색기능 구현
     1) 사용자 권한에 따라 기관 및 소속직원만 검색되도록 구현
     - 개발환경
     1) Framework: 전자정부프레임워크
     2) Database: Tibero, LDAP
     3) Was: Jeus

Education

  • 2009.03 - 2016.2
    학사
    조선대학교
    정보통신공학과

Skills

언어
Java
Python
Javascript
CSS
HTML5
프레임워크
Spring Boot
데이터베이스
MySQL
MongoDB
Redis
BigQuery
테스트
JUnit5
Spock Framework
인프라 - AWS
EC2
S3
API Gateway
Lambda
RDS
CloudWatch
CloudFront
MQ 등
인프라 - GCP
Compute Engine
Cloud Storage
Cloud Run Function
Cloud SQL
Cloud Logging
Cloud Task 등
기타
Airflow
Docker
Crawler(Selenium, Playwright)

Interests

Hard Skill
Kubernetes
Airflow
Elastic Search
Data Engineering
Soft Skill
Teamwork
Collaboration
Communication Skills
Time Management
Leadership