About Me
Introduction
•
안녕하세요! 6년 차 백엔드 개발자 이영훈입니다.
•
어제보다 더 성장한 오늘의 저를 발견하는 즐거움을 알기에 성장을 위해 꾸준히 노력하고 있습니다.
•
최근에는 성장의 기쁨을 함께 나누고 싶어 기술 블로그를 운영하고 있습니다. 일주일에 2개 정도의 글을 올리려고 노력하고 있습니다.
•
회사와 팀의 성장에 기여하는 것을 중요하게 생각합니다.
•
하루를 마무리 하면서 따뜻한 허브차를 마시며 다이어리를 작성하는 것을 좋아합니다. 식물 키우는 것을 좋아합니다.
Contacts & Blog
Skills
Backend
•
Java, Kotlin, Python, TypeScript, ES6
•
Spring Boot, Spring MVC, Spring Data JPA
•
MySQL, PostgreSQL, AuroraDB, DynamoDB
•
JPA, Querydsl
•
Junit5, Mockito
•
Gradle (Kotlin DSL, groovy DSL)
•
NestJS
•
TypeORM
•
Jest
DevOps
•
AWS EC2, Elastic Beanstalk, S3, RDS(Aurora, mysql, postgres), DynamoDB, CloudFront, Route53
•
EKS(Kubernetes), ECR, ECS, CodeBuild, CodeDeploy, CodePipeline, SQS, SES, WAF, Athena
•
Kubernetes, Docker, Helm
•
Jenkins, Github Action, Bitbucket Pipelines
•
Nginx
Frontend
•
React, React Native
•
TypeScript, ES6, yarn, npm
•
Redux(React-redux), Styled Components, React Query
Collaboration & Tool
•
Slack, Notion
•
Zeplin
•
IntelliJ, WebStorm, PyCharm, DataGrip
•
Git, GitKraken
Work Experience & Projects
플로틱 - 백엔드 개발
2022.01 ~ 성장중 (IT개발팀 리더)
•
•
Kotlin, Spring boot, Junit5, Mockito, RDBMS(mysql), JPA, Querydsl
•
Node, NestJS
•
AWS EKS (Kubernetes), AWS ECS
•
AWS RDS, AWS DynamoDB, AWS IoT Core, CI/CD - (AWS CodePipeline, AWS CodeBuild, AWS CodeDeploy)
•
Agile하게 일하고, 3주 단위의 스프린트와 매일 데일리 스크럼을 진행하고 있습니다
•
테스트 커버리지는 80% 이상을 유지하고 있습니다
•
로봇 IoT와 통합하기 위해 AWS IoT Core를 사용했습니다
◦
Device Shadow를 사용하여 IoT가 네트워크와 연결되지 않아도 끊임없이 통합할 수 있도록 설계하였습니다
◦
IoT에서 발생하는 대용량의 데이터를 Rule을 이용하여 DynamoDB에 적재하고,
◦
적재된 데이터를 가공/학습하여 알고리즘에 반영하여 로봇 IoT에 더욱 최적화된 명령을 내리도록 설계, 개발하였습니다
•
Kotlin 기반의 Spring Boot를 사용하여 API 서버를 개발하여 외부 시스템과 통합하였습니다. 자체 개발한 알고리즘을 통해 최적화된 명령을 로봇 IoT에 내리는 서버를 개발하였습니다
•
컨테이너 기반의 어플리케이션을 관리하고 있으며, 빠른 배포와 확장을 위해 Kubernetes로 컨테이너를 관리하고 있습니다
글림미디어 - StarPlay 백엔드 개발
2021.10 ~ 2022.01
•
•
트래픽의 80% 이상이 해외 (동남아시아, 북미, 오스트레일리아 등)에서 발생하고 있습니다
•
NestJS, TypeScript, TypeORM, Open API 3 (swagger), JWT, Jest (테스트코드), Passport (Google, Kakao, Apple Local Strategy 구현)
•
AWS ECR, ECS(ARM64 architecture), RDS(Aurora DB), S3, CloudFront, CodeBuild, CodePipeline, SQS, SES, Lambda, WAF, Athena
•
레거시 PHP 코드를 NestJS로 변경하였습니다. JWT로 회원 인증을 구현하였고 Google, Kakao, Apple 로그인을 구현하였습니다. 모든 코드에 대해 테스트코드를 작성하여 커버리지 80% 유지하였습니다
•
AWS SQS + Lambda를 사용하여 이벤트 발생시 (회원가입, 결제 등) 이메일을 보내는 로직을 구현하였습니다
•
AWS Cloudwatch event + AWS Lambda를 이용하여 정기적인 작업 (정기 구독 유저에게 포인트 지급 등)을 구현하였습니다.
•
정기적으로 대용량 트래픽이 발생할 때 서버 관제를 통해 안정적으로 서버를 운영하였습니다. AWS Cloudwatch로 관제하였습니다.
◦
2021년 12월: 동접자 1만 2천명, 5분간 최대 요청수: 126k
보이스루 - VWS 백엔드 개발
2020.09 ~ 2020.12
•
AI 기반 영상 편집 서비스 VWS 백엔드 개발 (JTBC, National Geographic 방송사가 초기 유저로 사용)
•
Kotlin, Spring Boot, JPA, QueryDSL, Junit5, Kubernetes
•
AWS DynamoDB (글로벌 서비스를 고려했고 빠른 응답속도를 보장하기 위해 사용하였습니다)
•
JWT, Spring Security, Open API 3 (swagger)
•
백엔드 개발/운영/배포 전 과정을 혼자 맡아서 진행하였습니다
보이스루 - Kubernetes 도입
2020.04 ~ 2020.09
•
Worker와 서버가 많아져 Kubernetes 도입을 결정
•
Kubernetes 도입을 위해 개발팀 전사적으로 학습과 스터디 진행
◦
책 "Kubernets In Action", k8s 공식 문서 스터디
•
AWS EKS, ECR, EC2, S3, CodeBuild를 사용하여 Kubernetes 시스템 구축
•
기존 Server, Worker를 Kubernetes로 마이그레이션 작업
보이스루 - JAMAKE 백엔드 개발
2020.01 ~ 2020.09
•
•
Kotlin, Spring Boot, JPA, Querydsl, Junit4, AWS Elastic Beanstalk, SQS, S3, Lambda, Kubernetes
•
JWT, Spring Security, Open API 3 (swagger)
•
백엔드 개발/운영/배포 전 과정을 혼자 맡아서 메이저 업데이트를 두 번 진행하였습니다
◦
프리미엄 자막 제작 서비스 'JAMAKE BLACK' 오픈
◦
성장 가능성이 높은 영상 추천 기능 연동 개발
◦
Youtube API 쿼터 최적화
•
유튜브 영상 다운로드 프로세스 개발
◦
AWS SQS, EC2(Spot Instance), youtube-dl을 이용
보이스루 - ETL 작업
2019.11 ~ 2020.01
•
AI 학습에 필요한 자막 데이터를 AI 학습 전용 데이터베이스에 추출, 가공, 적재
•
Airflow 도입하여 워크플로우를 관리
•
Docker, AWS EC2, ECR, RDS(postgreSQL)
뮤팟 - 뮤팟 서비스 개발
2018.04 ~ 2019.11
•
•
Ruby on Rails, HTML, CSS(SASS), JavaScript(ES6), jQuery
•
Python Librosa, Keras(Tensorflow), CNN, DSP
•
서비스 매출 증가(200% 이상)를 위한 서비스 개발 경험
◦
AI를 이용하여 유튜브 배경음악으로 적합한 음원 추천 기능 개발
◦
원하는 음악 특성을 멀티 셀렉트 가능한 태그 기능 개발
◦
유튜브 영상을 보면서 추천 배경음악을 실시간으로 들어보는 'Pick' 기능 개발
Open Source Contribution
NestJS 공식문서 (KR)
•
NestJS의 한글 공식 문서입니다
•
NestJS 공식문서가 잘못 기술된 부분을 수정하여 더 좋은 문서가 될 수 있게 기여하였습니다
•
현재까지 총 4번의 Pull Request가 merged 되었습니다
React Kakao Login
•
React로 카카오 로그인 구현할 수 있는 라이브러리입니다
•
React(TypeScript)로 구현하다가 타입 오류를 발견하여 기여하였습니다
React Kakao Map SDK
Education & Awards
한양대학교 벤처창업경진대회 혁신상
•
한양대학교 벤처창업경진대회 혁신상 (최우수 총장상)
•
2019년 10월 수상
•
인공지능 기반 TTS (Text To Speech) 서비스에서 서버 개발을 담당하였습니다
•
한양대학교 정보시스템학과 & 자원환경공학과
•
2014.03 ~ 2021.08
•
정보시스템학과, 자원환경공학과
•
졸업학점 : 4.02 / 4.5
•
한양학업 최우수상(상위1%) 2회 수상 (2020년 2학기, 2021년 1학기)