소통을 좋아하는 계획적인 엔지니어입니다.
- 자신에게는 엄격하게.
- 계획한 일정에 맞추어 프로젝트를 진행하려고 노력합니다.
일정을 맞추지 못할 때는 자기 합리화가 아닌 노력과 여가 시간으로 맞섭니다.
- 타인의 것을 받아 들일 때는 너그럽게!
- 내 의견만 주장하는 것이 아닌, 타인의 의견을 경청합니다.
여러 사람의 시각으로 볼 때 다양한 아이디어가 나올 수 있다고 생각합니다.
- 기록의 중요성을 알고, 꾸준히 실천하는!
- 공부한 내용에 대해 블로그에 TIL을 작성합니다.
- 새롭게 알게 된 지식이나 기술의 경우 블로그에 기록합니다.
☎️ Contact
📩 E-mail: [email protected]
📞 Mobile: 010-6222-8389
💻 Github: https://github.com/ki1111m2
✍🏻 Blog: https://ksha0628.tistory.com
🔎 Discord: ki1111m2 (경서#2760)
🎮 Projects
마라톤 대회 결과 기록 시스템
: 마라마라톤, mrmrthon!
[프로젝트 개요]
- 개인 사용자와 대회 주최자를 위한 마라톤 대회 결과 기록 시스템
- 유저 데이터를 저장하고 있는 유저 데이터베이스는 다른 데이터베이스와 분리되어 있음
- 기록 데이터를 기반으로 사용자별 점수를 기록하는 시스템은 데이터 유실을 막기 위해 느슨하게 결합되어 있음
- 유저는 로그인 기능을 통해 토큰을 발급 받으며, 토큰을 기반으로 메인 서버에 대한 CRUD 요청이 동작함
- 가용성, 내결함성, 확장성, 보안성을 고려하여 시스템 구성
[기술 스택 및 역할]
- Stacks: AWS, Node.js, Express, MySQL, Docker, Github Action 등
- 기본 인프라 구성
- express를 이용하여 서버 구현
- AWS ECR, ECS를 사용하여 서버 가동
- ECS에 Auto Scailing 기능을 이용하여 확장성 확보
- ECS에 Application Load Balancer를 연결하여 가용성, 내결함성 확보
- CI/CD 파이프라인 구성 및 자동화 구현
- AWS Lambda, ECS, S3에 대해 CI/CD 파이프라인 구성
- Git Action을 사용하여 자동화 구현
- S3 버킷에 정적 웹 호스팅 파일 업로드, Lambda 함수 배포, ECR 이미지 Push, ECS 서비스 업데이트
- VPC 생성 및 서브넷 구현
- 데이터 보안을 위해 데이터베이스를 프라이빗 서브넷에 위치시킴
- jwt 토큰을 사용한 로그인 구현 및 CRUD 분리
- User 서버에 로그인 요청 시 데이터베이스에 일치하는 사용자가 있다면 user_id, user_type 값을 담은 토큰 발급
- Main 서버에 API 요청 시 헤더에 토큰을 첨부하고, Main 서버는 토큰을 디코딩하여 user_id, user_type 값을 사용
- AWS CloudFront 및 Route53 연결
- Https 연결을 통한 보안 강화
- 원하는 도메인으로 접속할 수 있도록 라우팅
- 모니터링 시스템 구현
- AWS EC2를 이용한 Ubuntu 상에서 Docker를 이용하여 Grafana 사용
- AWS Cloudwatch를 통해 각 서비스의 성능 지표를 추출하여 모니터링 시각화
- 문서 작업 총괄
- Readme, API 명세서, 아키텍처 다이어그램 등 작성 및 검수
[성과]
- Lambda 함수와 SQS를 이용하여 서비스를 느슨하게 결합하였고, User 서버와 Main 서버를 나누어 동작을 분리했습니다. 특정 부분에서 오류가 발생하더라도 서비스의 다른 부분은 정상적으로 작동할 수 있도록 구성하였습니다.
- Git Action을 통해 AWS 서비스 배포를 자동화하는 CI/CD 파이프라인을 직접 구성하였습니다.
- jwt 토큰을 이용하여 서버 간에 원하는 값을 전달할 수 있도록 구성하였습니다.
👩🏻💻Career / Experience
(주)시큐리티허브 전략기획팀 인턴
2022.06 - 2022.08
교내 중앙동아리 H.U.S.T 회장
2020.03 - 2022.02
- 정보보안 동아리로써 웹해킹, 서버, 개발 등을 학습함
- 칼리 리눅스를 활용한 드론 해킹 프로젝트 진행(방향 전환 패킷 탈취 및 조작)
교내 전산실 서버담당 근로장학생
2020.03 - 2021.02
- 로그 분석을 통한 침해 점검, 정기 점검, 백업 등의 리눅스 서버 관리