UX를 중요하게 생각하고, 새로운 기술을 빠르게 익히며 프론트엔드부터 백엔드, 인프라까지 폭넓게 다루는 개발자 박찬영입니다.
기능을 개발하기 전에, ‘사용자가 이 기능을 어떻게 사용할까?’, ‘사용자 입장에서 더 필요한 기능은 없을까?’ 라는 질문을 늘 스스로에게 던지며 개발해 나갑니다.
React, Nest.js 등 다양한 프레임워크를 활용해 전체 웹 서비스를 직접 기획, 개발, 배포한 경험이 있으며, 항상 사용자 중심의 경험과 기술적 완성도를 함께 추구합니다.
프로젝트 경험
(주)디오소프트랩
2024.10 ~ 현재

Guardian Watch WAF
2024.10 ~ 현재
프로젝트 소개
오픈 소스 방화벽 엔진을 활용해, 관리자 UI를 통해 쉽게 관리할 수 있는 웹 방화벽 솔루션입니다.
수행한 역할
- 기획 구체화
- 초기 아이디어 단계의 기획을 점진적으로 구체화하며, WAF 개발이라는 최종 목표에 도달하기까지 여러 시행착오를 주도적으로 해결하였습니다.
- 데이터 파이프라인 개발
- 오픈소스 방화벽 엔진의 로그를 수집하여 Vector Remap Language(VRL)를 사용해 목적에 맞게 변환하였습니다.
- 변환된 로그는 Elastic에 저장하여, 이후 로그 검색 및 분석이 용이하도록 구성하였습니다.
- 메인 백엔드 개발
- Elastic에 수집된 탐지 기록에 대해 복합 조건 검색이 가능한 쿼리 빌더 시스템을 개발하였습니다.
- 해당 시스템을 기반으로 공격 추세를 시각화하는 대시보드용 백엔드를 구현하였습니다.
- 쿼리 조건을 기반으로 알림 조건을 설정할 수 있도록 하였으며, Nest.js의 CronJob을 이용해 주기적으로 이벤트 조건을 확인하고, 이메일 및 카카오 알림톡으로 경보를 전송하도록 구현하였습니다.
- 모든 방화벽 설정 작업에 감사 로그를 기록하고, 이를 검색 및 조회할 수 있는 감사 시스템을 개발하여 사용자 활동 추적이 가능하도록 하였습니다.
- 에이전트 백엔드 개발
- Wireguard를 이용해 메인 백엔드와 안전하게 통신할 수 있는 명령 터널을 구성하였습니다.
- 템플릿 엔진을 활용하여, 사용자가 설정을 변경할 경우 자동으로 설정 파일을 생성하고 적용하도록 구현하였습니다.
- 설정 파서와 템플릿 엔진을 활용하여, 방화벽 규칙을 만들고 비활성화 및 삭제할 수 있게 구현하였습니다.
- 대시보드 프론트엔드 개발
- 통계 데이터를 시각화하여 최다 공격 IP, 공격 유형 등 주요 지표를 효과적으로 표현하였습니다.
- 상세 로그 테이블과 쿼리 빌더 시스템을 구현하여, 조건별 검색이 가능한 UI를 제공하였습니다.
- 기존 솔루션괴 연동
- 기존 솔루션과 연동하여, 기존 솔루션에서 인증된 사용자를 Oauth2와 유사한 자체 프로토콜로 인증하도록 구현하였습니다.
- 인증 시스템 개발
- Next.js 기반으로 독립된 인증 서버를 개발하여, 기존 서비스와 분리된 환경에서도 인증 기능을 제공할 수 있도록 하였습니다.
- Google Authenticator 기반 2단계 인증 기능을 추가하여 보안성을 강화하였습니다.
- 온프레미스 설치 자동화
- Bash 스크립트를 활용해, 필요한 설치 정보를 입력받고 .env 파일을 자동 생성한 후 전체 시스템을 빌드 및 배포할 수 있도록 자동화된 설치 시스템을 구현하였습니다.
개발: TypeScript, Nest.js, React, Next.js, VRL, Bash
인프라: Docker, Docker Compose, Vector, Elastic, Nginx, Wireguard
학생회 기능부
2022.03 ~ 2025.03

한움 앱
2022. 4 ~ 2022. 10
프로젝트 소개
한움은 한세사이버보안고등학교 교내 통합 인트라넷 앱입니다.
급식 / 시간표 / 학사일정 정보부터 커뮤니티, 학생회 업무까지 교내 모든 정보가 하나의 앱으로 통하게 만들자는 목적으로 개발한 앱입니다.
수행한 역할
- 기획 및 디자인, QA
- 혼자서 초기 앱을 기획하고, UI를 Figma를 사용해 디자인했습니다.
- 혼자 개발하는 프론트엔드 개발자를 도와 프론트엔드 QA를 진행하고,
프론트엔드 개발자가 발견하지 못한 20개 이상의 버그를 발견하여 수정을 도왔습니다.
- 빌드 및 배포
- 프론트엔드 개발자가 완성한 앱을 일부 다듬고, 앱 스토어 프로덕션에 적합한 형태로 수정하였습니다.
- CodePush OTA, Google Play, App Store Connect를 통하여 빌드한 앱을 심사받고, 배포하고, 업데이트하는 전체 과정을 담당하였습니다.
- 인증 서비스 백엔드 개발
- FastAPI를 사용해 백엔드 개발을 진행했습니다.
- 앱의 각 도메인별로 마이크로서비스를 개발하여 마이크로서비스 아키텍처로 백엔드 구조를 정립했습니다.
- 내부 마이크로서비스 간 통신에 gRPC를 활용해 오버헤드를 줄이고 속도를 개선했습니다.
- Redis를 사용해 전화번호 인증과 세션 시스템을 구현하였습니다.
- 학생 정보가 미리 삽입된 인증 코드의 배포를 통해, 사용자가 인증을 진행할 수 있는 ‘재학생 인증’ 시스템을 구현하였습니다.
- FastAPI의 의존성 주입 기능을 사용해 인증을 처리하게 구현하여,
코드의 재사용성을 높이는 표준 인증 인터페이스를 구현하였습니다.
- 교내 행사를 진행할 때 30+ RPS의 비교적 높은 트래픽을 겪었으나,
모든 마이크로서비스의 중심이 되는 인증 서비스가 느려지거나 장애가 발생하지 않고 안정적으로 작동하였습니다.
- 학교생활 정보 서비스 백엔드 개발
- 인증 서비스에서 gRPC를 통해 사용자 반 정보를 가져와서,
나이스 API를 통해 해당 반의 시간표 정보를 불러오도록 구현하였습니다.
- 급식표 정보는 나이스 API에서 제공되지 않아,
학교 홈페이지를 크롤링하여 사용자에게 정보를 제공하도록 구현하였습니다.
- 외부 API를 과도하게 호출하지 않도록,
외부 API를 사용해 가져온 정보는 일정 시간 동안 캐싱되도록 구현하였습니다.
- 교내 행사 추첨 서비스 백엔드 개발
- 교내 행사 안내 팜플렛에 부착된 고유 QR 코드를 스캔하여,
경품 추첨 코드를 받을 수 있게 구현하였습니다.
- 고내 스포츠한마당 승부 예측 백엔드 개발 보조
- 채팅 서비스를 개선하고, 포인트 보유 순위를 정렬하여 보여 주는 순위표 서비스를 개발하였습니다.
- Redis를 사용해 순위표를 캐싱하도록 구현하였습니다.
Untitled
사용기술
개발: Python, TypeScript, FastAPI, Nest.js, React Native, MySQL, SQLAlchemy, Prisma, Redis
인프라: gRPC, Docker, Docker Compose
https://github.com/hansei-hanum
2023 한세톤
2023.07

‘우리, 같이’ - 기획 및 디자인
2023.07
프로젝트 소개
‘우리, 함께’는 내 주변 동네에서 함께 여가 생활을 할 사람을 찾고, 활동 진행 과정까지 관리해 주는 ‘동네 여가 생활 플랫폼’ 입니다.
해당 프로젝트로 2023 교내 해커톤에서 최우수상 (2위)를 수상하였습니다.
수행한 역할
- Disquiet 등 메이커 커뮤니티에서 레퍼런스를 수집하고, 주제에 맞춰 서비스 컨셉 구성부터 세부 기획까지 모두 수행하였습니다.
- Figma로 프로덕트 디자인을 진행하였습니다.
https://github.com/hanseithonkk