미리보기
기본 정보
안녕하세요, 5년차 개발자 진수현입니다. 저는 사용자의 문제해결을 하는 것을 즐기며, 서비스를 단독으로 운영과 개발을 해본 경험이 있으며, TF 팀 리딩을 해본 경험이 있는 개발자입니다.
자기소개
[저는 외부 또는 내부 사용자의 니즈에 맞게 어떤 스택이든 빠르게 배워서 실무에 적용할 수 있는 개발자 입니다.]
최근에 React Native로 구현되어있는 앱의 오류 픽스 또는 새로운 컨텐츠 배포를 빠르게 배포해야하고, 추후에 웹서비스로도 앱을 제공했으면하는 니즈가 있었는데, 이를 실현하기위해 저는 쑨 서비스를 웹으로 제공하면서 RN에 웹뷰로 서비스를 제공하는 하이브리드 앱을 만들것을 제안하였고, 브라우저 렌더링 속도를 위해 SPA보다 SSR로 제공하는것이 성능적 이점도 있고 점진적으로 마이그레이션하기 좋아 Next.js로 구현할 것을 제안하여 실제 서비스에 적용해본 경험이 있습니다.
또한 저는 크몽 SOON팀에 입사했을 때, 비정상적인 인프라 비용 증가로 인한 비용 이슈가 있어 이를 해결해야하는 니즈가 있었을 때 전임자의 인수인계가 없는 상태에서 GCP 기반 레거시 시스템을 단기간에 분석하여 전체 서비스의 구조를 파악하고, 인프라 비용 문제를 해결하여 연간 2억 원의 비용을 절감한 경험이 있습니다.
또한 세금계산서 발급을 위한 실명 입력 시 실명 인증이 필요했었는데, 이 서버를 구축하기 위해 Spring Boot를 학습한 후, 서버를 구축하고 Nice 인증 API를 연동하여 AWS EC2에 배포하였습니다.
또한, ISMS 심사를 위한 인프라 전환 작업을 진행하면서 GCP와 대응되는 AWS 기술들을 학습해서 새로운 인프라 환경에 구성해서 서비스화 시킨 경험이 있습니다.
저는 이렇듯 새로운 기술을 학습하여 바로 실무에 적용할 수 있는 능력을 보유하고 있습니다.
[저는 프로젝트 리딩을 해본 경험이 있는 개발자입니다.]
ISMS 심사를 위한 GCP -> AWS 인프라 전환 작업에서 GCP로 구성된 SOON 서비스에 대한 전체 아키텍쳐 다이어그램과 전환될 AWS 기술과의 기술대조표 문서를 작성해 전체적인 전환 계획을 수립했습니다.
이 과정에서 크몽의 다양한 팀 및 내부 개발자와의 커뮤니케이션을 원활하게 하기 위해서 백엔드부터 프론트엔드, 클라우드까지 관련 기술 습득하였습니다.
또한 GCP Firebase Function으로 구성되어있는 SOON 서비스의 코어로직 API들을 AWS의 Lambda로 전환하기 위해서 관련 인프라 설계 및 구성부터 개발까지하여 전환작업을 완수했습니다.
저는 이렇듯 다양한 기술 스택과 팀 간 협업 경험을 바탕으로, 복잡한 기술적 도전에 대응할 수 있는 능력을 보유하고 있습니다.
기술 스택
AWS, JavaScript, Node.js, React, GitHub, github-actions, Google Cloud Platform, MySQL, MongoDB, Firebase, Spring Boot, Java, TypeScript, Next.js
경력
주식회사크몽(Soon팀)
Frontend Developer | SOON 팀 | 재직 중
2022.01. ~ 재직 중 (3년)
Soon Mobile Web(Next.js, Typescript)
Soon Admin Page(React.js, Typescript)
Soon Application(React Native, Typescript)
Soon 백엔드 AWS Lambda API(API Gateway, AWS Lambda, Nodejs)
ISMS 보안 규정 작업을 위한 전체 GCP 시스템 -> AWS Cloud 전환 리딩 및 인프라 설계(TF)
Soon Backend Firebase Function / Firestore API(Nodejs)
실명 인증 서버(SpringBoot, EC2)
주식회사더디랩스(TheDIILabs.Inc.)
연구원 | FrontEnd Developer
2021.02. ~ 2021.11. (10개월)
GraphQL Prisma CRUD 자동생성 서버
ERP 시스템 웹
물류창고 모바일 어플리케이션
거래처 입고 예약 시스템
바른설치 웹
설치기사 모바일 어플리케이션
KPI 권역/창고별 성과지표 검색 웹
(주) 우리테크인터내셔날
연구원 | 서비스 개발팀
2020.06. ~ 2021.01. (8개월)
클라이언트 사이드 리포트 솔루션 라이브러리
사내 업무 일정관리 시스템
프로젝트
Soon Mobile Web(Next.js, Typescript)
주식회사크몽(Soon팀)
2024.10. ~ 진행 중
프로젝트 설명: 이 프로젝트는 React Native로 구현된 SOON 서비스 모바일 앱 프로젝트를 Next.js로 마이그레이션하여 웹 및 하이브리드 웹뷰앱으로 제공하기 위한 프로젝트입니다.
참여인원: 1명
개발스택 : Next.js
Typescript
Soon Mobile Web 제공을 위한 프로젝트 초기 셋업 및 RN과의 상호작용 모듈 구현
Next.js에서 React Native 웹뷰로 postMessage 하여 서로 데이터를 주고 받을 수 있도록 모듈 구현
Next.js와 React Native간 메세지 통신 데이터에 대한 양방향 비밀키 암호화 모듈 구현(crypto-js를 이용한 encrypt, decrpt 모듈)
postMessage시의 타입을 명확하게 정의하여 유지보수하기 용이하도록 구현
공통 컴포넌트 구현
모바일 레이아웃 맞게 일관성있는 레이아웃을 제공할 수 있도록 BaseLayout, ContentsLayout 등 레이아웃 컴포넌트와 NavagationHeader, BottomNavigation 컴포넌트 구현
서비스의 테마에 맞게 공통으로 사용하는 유틸 컴포넌트 구현(버튼, 인풋, 체크박스, 딤 로딩스피너 등)
onClick과 같은 이벤트의 경우 여러번 클릭 이벤트가 일어나지 않도록 debounce 모듈 구현
회원가입 플로우 웹 이관
회원가입 접근 시 비밀키를 가지고 있는 클라이언트만 접근할 수 있도록 accesskey 발급 받도록 API 구현
encrypt된 정보를 받아 만약 decrypt 결과가 있는 경우에만 accesskey발급(비밀키를 가지고 있는 클라이언트만 접근)
회원가입 화면에서는 decrypt된 accesskey 정보의 핸드폰 번호를 파싱하여 사용, 없는 경우 404페이지로 리다이렉트
회원가입 완료 시 RN에 암호화된 정보를 보내 로그인 처리하도록 구현
Soon Application(React Native, Typescript)
주식회사크몽(Soon팀)
2022.01. ~ 진행 중
프로젝트 설명: 이 프로젝트는 SOON 서비스의 모바일 앱(AOS/IOS) 프로젝트로 기획, 디자인 의사결정 참여 및 구현, 신규기능 구현, 센트리 세팅, 웹뷰 세팅 등을 진행했습니다.
참여인원: 2명
개발스택 : ReactNative
Typescript
작업내용
회원가입 Next.js 웹뷰 도입 및 웹뷰와 RN간의 상호작용 모듈 구현
React Native에서 Next.js 웹으로 postMessage 하여 서로 데이터를 주고 받을 수 있도록 모듈 구현
Next.js와 React Native간 메세지 통신 데이터에 대한 양방향 비밀키 암호화 모듈 구현(crypto-js를 이용한 encrypt, decrpt 모듈)
alert 이벤트 발생 시 웹뷰의 host가 같이 나오는 현상을 방지하기 위해 Javascript를 inject하여 웹뷰에서 RN Module postMessage로 오버라이드 하도록 구현
Next.js 웹에서 웹뷰로 메세지를 발송할 수 있도록 global window에 toRNWebview 메서드 Javascript를 inject하여 처리
Next.js에서 받은 메세지 타입에 따라 RN에서 처리하도록 구현
NATIVE_ALERT(Native OS Alert으로 메세지 띄우기), TO_CALLBACK(콜백에 메세지 전달), BACK(네비게이션 뒤로가기 처리) 등 구현
회원가입 화면 Next.js 웹뷰로 동작하도록 마이그레이션
센트리 세팅
디바이스 고유 ID, 기기 모델, 기기 브랜드, 앱 릴리즈 버전, OS 등 센트리 로깅 시 항상 입력되도록해서 에러가 어느 기종, OS, 릴리즈 버전에서 일어난 것인지 트래킹 가능하도록 세팅
센트리 에러 발생 시 빠르게 개발자가 인지할 수 있게 슬랙으로 전송되도록 세팅
센트리 오류 API 에러, UI 이벤트에러 등 유형에 따른 에러 정의 및 셋업
js -> Typescript 마이그레이션
복수인원 채용공고 리스트 표시 개선
사장님 예약 기준 여러날짜 예약 시 알바가 다른 날짜도 지원할 수 있는 기능 구현
직업 안정법 시행령을 위한 세금계산서
사업자 번호 체크 API 연동(국세청 API)
사장님 공고등록 플로우 대규모 개편
UI 플로우 의사결정 참여 및 리뷰, 구현
앱스플라이어 마케팅 관련 SDK 도입 및 퍼널 설정
사장님의 초기 회원가입 부터 상점등록, 공고등록의 진행과 결제카드 등록, 예약까지의 퍼널 이벤트 구현
알바님의 초기 회원가입 부터 프로필 등록, 공고클릭, 지원, 출근확정까지 퍼널 이벤트 구현
모두싸인 전자계약 서명 API 도입 및 이용한 알바 근무자 계약서 서명 프로세스 구축
일자리 제안받기 기능 구현
성과/기술적경험/트러블 슈팅
센트리 세팅으로 28개의 에러 이슈를 발견했고 모든 이슈를 수정하여 앱을 안정화 시킴
앱스플라이어 마케팅 관련 지표 세팅 외 사용자 행동 지표 데이터에 대한 의사 결정 참여 및 세팅
공고 리스트 전체 UI 개선 및 기획 의사 결정 참여
Soon Admin Page(React.js, Typescript)
주식회사크몽(Soon팀)
2022.01. ~ 진행 중
프로젝트 설명 : 이 프로젝트는 SOON 서비스의 운영매니저들이 알바님을 공고에 배정, 취소, 결제등의 업무를하는 어드민 웹 서비스로, 기능구현 및 CI/CD 구축 작업을 진행했습니다.
참여인원 : 2명
개발스택 : AWS CLI, shell script, AWS Lambda, React.js
작업내용
공고 관리 리스트 속도 개선 작업
Firestore(DB) API의 테이블간 조인이 안되는 단점을 우회하도록 Rest api 방식으로 전환시켜 속도개선
Github Action, AWS S3 정적사이트 자동배포 프로세스 구축
Github Action -> Code Pipeline으로 전환
S3 -> ECR & ECS Deploy로 전환(ECS 컨테이너로 관리) 및 ALB로 인바운드 IP 컨트롤하도록 구현(내부 사용자 IP만 허용하도록 수정)
기능개발
일자리 제안받기 공고 딥링킹 링크 전송 기능 구현
블랙리스트 추가 삭제 리스트 페이지 구현
마케팅 이벤트 대상자 리스트 csv파일 데이터 기준으로 사장님 할인캐시 추가 지급 기능 구현
사용자 타입(사장님,알바님)에 따라서 Push 알림 메세지 보내는 페이지 구현
Soon Backend AWS Lambda(쑨 서비스 서버리스 Nodejs 백엔드 API) + AWS Doc DB
주식회사크몽(Soon팀)
2023.04. ~ 진행 중
프로젝트 설명: 이 프로젝트는 SOON 서비스의 서버리스 백엔드 API 프로젝트 이며 주로 프로젝트 구조 설계 및 구축, 배포 파이프라인 구성, 코어 비즈니스 로직 API 구현 등 작업들을 하였습니다
참여인원: 1명
개발스택 : AWS CLI, shell script, AWS Lambda
작업내용
프로덕션/개발 Lambda API, API Gateway, SG, 서비스 구성
GCP에서 사용하던 서비스와 대조되는 서비스로 컨버팅 작업
GCP CloudTasks -> AWS EventBridge Scheduler
Firebase Storage -> AWS S3
API Gateway 특정 도메인만 허용하도록 CORS 설정
Lambda API Integration 되도록 API Gateway Route Path 설정
모바일 앱과 어드민 웹에 대한 회원을 분리하여 토큰 인증 방식으로 관리하도록 Cognito 세팅 및 AccessToken, RefreshToken 시간 세팅
Firebase 코어로직 -> AWS Lambda API 전환
Spring Server를 통해 CUD가 일어날 수 있도록 internal ALB로 Cogninto인증 없이 통신하도록 SG 수정 및 서비스 구축
API 스케줄링 기능을 위한 AWS EventBridge Scheduler 서비스 구현
Private S3 Image PresignedUrl 로 FE에 제공할 수 있는 서비스 구현
ISMS 어드민 Activity logging 데이터 적재를 위한 AWS SQS 발송 서비스 구축
프로젝트 설계 및 구성
AWS Lambda API 프로젝트 컨벤션 및 서비스, apis 등 프로젝트 구조 설계
aws-cli, shell 스크립트 등을 조합하여 aws lambda 코드 배포 파이프라인 구성
템플릿 API 코드 generate 되도록 쉘 스크립트 구성
성과/기술적경험/트러블 슈팅
GCP -> AWS 인프라 환경으로 전환 완료(100%)
Firebase Functions API-> AWS Lambda API화하여 전환(150개)
ISMS 보안 규정 작업을 위한 전체 GCP 시스템 -> AWS 전환 리딩(TF)
주식회사크몽(Soon팀)
2023.04. ~ 2024.01.
프로젝트 설명: 이 프로젝트는 ISMS 보안 규정 작업을 위해 GCP로 구성되어있는 SOON 시스템을 AWS로 전환하는 작업이며, TF 리딩 및 유관부서(보안팀, 플랫폼기술팀)와 커뮤니케이션, 코어로직 이관을 위한 AWS Lambda와 관련된 인프라 설계 작업을 진행했습니다.
참여인원: 3명 & 보안팀 & 플랫폼기술팀
개발스택 : AWS CLI, shell script, AWS Cloud
작업내용
1차 목표 Task 계획 및 커뮤니케이션 진행
SOON 서비스 전체구조 다이어그램 작성, 기술대조표 작성, 작업 계획 타임라인 및 전환 시점 시나리오 문서화
ISMS 규정에 맞게 Bastion EC2, Lambda, API Gateway 등 인프라 설계 및 구축
API Gateway 특정 도메인만 허용하도록 CORS 설정
Lambda API Integration 되도록 API Gateway Route Path 설정
Lambda API 용 IAM Role 설정 -> Lambda에서 사용하는 리소스 액세스를 위한 API Gateway, Cognito, S3, CloudWatch, SQS, EventBridge에 대한 Access 권한 및 Assume Role 설정
모바일 앱과 어드민 웹에 대한 회원을 분리하여 토큰 기반 인증 방식으로 관리하도록 Cognito 세팅 및 AccessToken, RefreshToken 시간 세팅
Security Group 구성 -> Lambda API가 Spring Server와 Document DB에 통신할 수 있도록 Internal ALB SG와 Database SG 인바운드 설정 진행
Firebase Functions과 React Native, Meteor js 등에 분포되어있는 Firestore API로 구성되어있는 SOON 서비스 코어 비즈니스 로직 -> AWS Lambda API화 하여 전환
Soon Backend Firebase Function / Firestore API(Nodejs)
주식회사크몽(Soon팀)
2022.01. ~ 2024.01.
프로젝트 설명: 이 프로젝트는 AWS 클라우드로 전환하기전 SOON 서비스의 서버리스 백엔드 API 프로젝트 이며, 신규기능 개발, 인프라 비용관리 등 작업을 진행했습니다.
참여인원: 1명
개발스택 : Nodejs, GCP, Firebase Functions, Firebase Firestore(DB), CloudTask
작업내용
GCP DB 인프라 비용 감소 작업
SOON 레거시 서비스 GCP 사용 서비스 및 비용 청구 구조 분석
Firestore에 적재된 미 사용 더미 데이터(푸시알림용 데이터) 86TB 삭제
푸시알림용 트리거링 Firebase Function API 더미데이터 적재 포인트 개선
KPI 빅쿼리 통계 쿼리 자동화
Google Sheet App Script를 이용한 통계 데이터 쿼리 작업
카테고리별 매출액 / 카테고리별 예약, 배정, 취소 수 / 회원 가입, 탈퇴 수 / 카테고리별 리뷰 평점 통계 등등 쿼리 작업
Firestore BigQuery Streaming Export Extention 세팅하여 Firestore Database에 쌓이는 Rawdata가 GCP BigQuery에 Striming되도록 처리
비즈니스 로직 개발
휴면 문자 발송 및 휴면 전환 처리 스케줄러 기능 구현
마케팅 수신동의 문자 발송 스케줄러 기능 구현
마케팅 이벤트 대상자 리스트 csv파일 데이터 기준으로 사장님 할인캐시 추가 지급 기능 구현
블랙리스트 추가 삭제 API 구현
사용자 타입(사장님,알바님)에 따라서 Push 알림 메세지 보내는 API 구현
일자리 제안받기 API 구현
리뷰 점수에 따른 CloudTask Queue를 이용해 이벤트 참여 메세지 발송 시스템 구현
다중인원 채용공고 API 구현
240개의 레거시 코드 오류 및 장애 대응
성과/기술적경험/트러블 슈팅
GCP DB 인프라 비용 감소 작업 -> 연 2억원의 Firestore(DB) 비용 감소
KPI 빅쿼리 통계 쿼리 자동화 -> 통계 쿼리 작업을 통해 PO(프로젝트 오너)의 업무 효율을 70% 향상 시킴
- SOON 매니저 어드민 서비스 속도 개선 작업 -> 속도개선전 5개월 배정률 평균 56% -> 속도 개선 후 6개월 배정률 평균 73% 증가
실명 인증 서버(SpringBoot, AWS EC2)
주식회사크몽(Soon팀)
2023.02. ~ 2023.03.
프로젝트 설명: 이 프로젝트는 실명인증서버 구축을 위한 Spring Server이며, Nice에서 제공하는 Java 예제에 맞춰 컨트롤러 구축 및 EC2에 배포하는 작업을 진행했습니다.
참여인원: 1명
개발스택 : AWS EC2, Elastic IP, Spring Boot, Nice SDK
작업내용
Nice 실명인증 API 도입을 위한 SpringBoot 서버 API 구축
AWS EC2로 배포 작업
포트폴리오
교육
선문대학교
대학교(학사) | 경영학부
2011.03. ~ 2020.02. | 졸업