홍민기

경희대학교, 컴퓨터공학과 2001cupid@naver.com

경희대학교 컴퓨터공학과 재학 (2020.03-2026.08 예정)
큐빙클럽코리아 개발팀 개발팀장 (2024.01-)
(주) 레플러스 솔루션개발팀 인턴 (2025.12-2026.02)

소개글

AIoT 프로그래머를 향하는 한 사람
보안을 엄격하게 지켜나가는 프로그래머
소프트웨어와 하드웨어를 모두 아우르는 엔지니어

SNS

About The Computer Engineer

Visions

앞으로의 트랙
2024년도

AIoT 개발자 - 소프트웨어와 하드웨어의 경계를 허물고 실제 문제를 해결하는 엔지니어

스마트팜
취미로 즐기던 게임에서 시뮬레이션의 한계를 느끼고, 현실의 농업 분야에 AI를 적용하고 싶었습니다. 빅데이터와 머신러닝의 경험을 통해:
- Hadoop/Spark를 이용한 대규모 농장 데이터 분석 (수천만 개 레코드 처리)
- 토마토, 딸기 등 작물별 성장 예측 및 수확량 최적화
- IoT 센서 데이터와 환경 요인을 통한 자동 제어 시스템
- 결과: 100여 팀 중 20등 입상, 실제 농업 현장 적용 가능성 확보

커넥티드카
자동차를 단순한 이동 수단이 아닌 하나의 지능형 디바이스로 보고, 다음 단계의 개발 방향입니다:
- 자동차 기반 IoT 시스템의 아키텍처 설계
- 실시간 차량 상태 모니터링 및 대규모 데이터 수집
- V2X(Vehicle to Everything) 통신 기술을 통한 자동차 간 상호작용
- 목표: 스마트팜의 경험을 자동차 도메인으로 확장

2023년도

Haptics, IoT, 웹개발 - 기술의 다양성을 탐색하고 진정한 관심사를 찾아나가는 과정

Haptics (감각 피드백 기술): 유로트럭 시뮬레이터와 지하철 운전 시뮬레이터에 빠져 있던 중, 단순한 화면과 사운드만으로는 부족함을 느껴 몰입감 있는 경험을 구현하고 싶었습니다. 포스 피드백, 진동, 무게감 등을 통해 현실감을 극대화하는 방법을 탐구했습니다.

IoT (사물인터넷): 생활 속의 번거로움을 자동화로 해결하고 싶다는 생각에서 시작했습니다. 여러 가전기기를 인터넷으로 연결하여 일괄적으로 제어하고, 스마트홈 시스템을 구축하는 경험을 쌓았습니다.

웹개발: 개발 기법의 빠른 변화 속에서도 핵심은 사용자 경험(UX) 개선이라는 것을 깨달았습니다. 아름다운 디자인과 직관적인 인터페이스를 통해 사람들에게 가치를 전달하는 방법을 배웠습니다.

이 세 가지 기술 경험은 결국 2024년의 AIoT 개발자라는 명확한 방향으로 수렴되었습니다.

Cubing Club Korea Ecosystem

큐빙 커뮤니티 통합 플랫폼
개요

Cubing Club Korea의 기록 관리, 결제, 녹화, 인증 등 전체 생태계를 개발 및 운영

역할

풀스택 개발자-기획, 뷰, api, 배포 전체 총괄

서버 관리자-ci/cd, 서버 모니터링

하드웨어 및 펌웨어 개발자-회로 설계, 기판 설계, 펌웨어 개발 전체 총괄

의의

- 명세 작성을 진행하면서 관리를 용이하게 하는 개발을 진행
- 실제 대회에서 사용했을 때 좋은 평가, 성공적인 사용
- 대회 운영 효율 30% 이상 향상
- 마이크로서비스화로 유연한 확장성 확보
- 지속적인 요구사항 분석, 진화하는 플랫폼

January 2024 - In progress

CCK_Ranking

기능

- 큐브 기록 입력 및 관리: 다양한 큐브 종목별 기록 저장
- 실시간 순위 조회: 카테고리별, 라운드별, 지역별 순위 표시
- 통계 분석: 개인 기록 분석, 개선도 추이 등 지원
- 스크램블 자동화: 공식 스크램블 생성 및 RFID를 사용한 선수 연동
- 대회 운영 지원: 예외상황 추가시도 인터페이스 제공, 대회 결과 및 대회별 통계 제공

사용 프레임워크

Spring boot, React.js

CCK_Recorder

기능

- 하드웨어 기반 타이머: ESP32 마이크로컨트롤러 이용
- RFID 인식: 선수 식별을 위한 RFID 리더기 통합
- 공인 타이머 연동: 공식 타이머와의 연동으로 정확한 기록 측정
- OTA 업데이트: 펌웨어의 원격 업데이트 지원으로 유지보수 용이성 향상
- 대회 진행 과정 통합: inspection, solving, results 등 모든 과정 통합형 인터페이스 제공
- 자동 기록 전송: 기록 및 심판 정보를 자동으로 CCK_Ranking으로 전송
- 회로 설계 및 기판 설계: 커스텀 하드웨어 개발로 공간 및 사용 효율성 극대화

사용 기술

ESP32, ESP-IDF, WiFi 통신, OTA-update

CCK_Payment

기능

- 결제 수단: 계좌이체
- 결제 안내: 페이지, 메일을 사용한 다중 안내
- 승인 및 거부 기능 추가
- 대회 및 종목별 가격 설정: 카테고리별 다른 가격 적용
- 결제 확인 및 통계: 관리자 대시보드에서 실시간 모니터링

사용 기술

Spring boot, React.js

한계

카드 결제 수단 도입의 어려움-자본금 부족

SSO (Single Sign-On) 서버

기능

- 통합 사용자 인증: 모든 CCK 서비스에서 하나의 계정 사용
- 권한 관리: 역할별 권한 설정 (일반 사용자, 심판, scrambler, 관리자)
- 토큰 기반 인증: JWT를 이용한 안전한 세션 관리
- 세션 동기화: 모든 서비스 간 로그인 상태 실시간 동기화
- 보안: 암호화된 비밀번호 저장, 다중 인증 지원, 접근 제어

사용 기술

OAuth 2.0, JWT, Spring Security

HTPeo

비전 AI 기반 자동 분류 쓰레기통
개요

IoT 기술과 비전 AI를 활용한 자동 분류 및 분류된 쓰레기통

역할

하드웨어 및 펌웨어 개발자-회로 설계, 기판 설계, 펌웨어 개발 전체 총괄

소속

연구개발부

의의

- IoT 기술을 실제 하드웨어로 구현
- 비전 AI와 임베디드 시스템의 통합
- 실제 제품화 가능성 확보
- 확장 가능한 모듈식 설계 경험

August 2024 - In progress

Waste Handler

기능

- 메인 모듈: 분류된 쓰레기 저장 및 배출 관리
- 서브모듈: 분류별 카테고리 자동 분류
- 자동 개폐 시스템: AI 분류 결과에 따라 자동으로 올바른 칸 개폐
- 확장성 설계: 분류 카테고리 추가 및 모듈 확장 용이
- 센서 통합: 중량 모니터링 및 쓰레기 수준 감지

사용 기술

라즈베리파이5, ESP32, 모터 제어, 센서 인터페이싱

Half Handler

기능

- 데이터 수집 장치: 분류 AI 학습을 위한 대량의 쓰레기 이미지 수집
- 자동 촬영 시스템: 다양한 각도와 조명에서 사진 촬영
- 메타데이터 기록: 촬영 조건 및 분류 정보 자동 저장
- 수집된 데이터 실시간 업로드
- AI 모델 지속적 개선: 수집된 데이터로 분류 성능 향상

사용 기술

라즈베리파이5, 카메라 모듈

KHUropbox

클라우드 서비스
개요

사진, 문서 등의 저장, 다운로드, 버전관리 등의 기능을 가진 클라우드 서비스

사용 프레임워크

- API: Spring boot - View: React.js

역할

API-댓글, 파일 시스템, 팀스페이스 등

의의

- 대규모 프로젝트 진행, 형상관리의 발전
- 파일 구조 파악, 각종 응답 설정 학습
- 명세 작성, 소통을 통한 협업

발전시킬 사항

- speech-to-text파트 오류때문에 구현 중단-구현 완료 희망
- AI summary또한 오류 때문에 구현 중단-구현 완료 희망
- 디렉토리 구조 구현하여야 함

April 2024 - June 2024

Auto decision agriculture project

스마트팜 빅데이터 기반 자동결정 서비스
개요

토마토, 딸기 빅데이터를 사용하여 각종 성장, 수확량 예측, 장비 결정 등을 해주는 서비스

사용 프레임워크

- 빅데이터 처리: Hadoop-Spark
- 웹사이트: Django

역할

농장 데이터 수집, 데이터 전처리, 정제

의의

- Hadoop 클러스터 구축, Spark 사용법 학습
- 스마트팜 구조, 각종 환경 요소들에 대한 학습
- 유의미한 예측, 결과를 얻기 가능

발전시킬 사항

- 실제 스마트팜 장비 없음-입력값의 정확도 감소
- 더 좋은 방법의 사용이 필요-머신러닝에 대한 지식 필요
- 단위에 대한 명세 부족-데이터 제공자와의 소통 필요

May 2024 - June 2024

스마트농업 AI 경진대회

첫 대회, AI에 대해 학습할 수 있던 좋은 기회
개요

경희대학교 Hacker 동아리 부원들을 대상으로 모집하여 참여한 농업 AI 경진대회

사용 라이브러리

scikit-learn/pytorch

역할

토마토 농사법 강의, 머신러닝 모델 구축

의의

- 머신러닝 모델들에 대한 학습
- 농사법에 대한 정리 완료-실제 농사에서의 활용

결과

100여팀중 20등

September 2023 - September 2023

탈모 측정기

Teachable Machine을 활용한 웹개발
개요

머신러닝 api인 Teachable Machine을 활용하여 탈모를 4단계로 판별하는 사이트

사용 프레임워크

Express.js

역할

머신러닝 학습, 샘플 사진 분류, 결과창, SNS팝업창 만들기, 머신러닝 관련 스크립트 작성

의의

- git으로 branch관리하는 방법 습득
- 웹개발 입문

한계

적은 샘플-심각한 수준의 오버피팅

September 2022 - December 2022

First aid app

안드로이드 애플리케이션
개요

1학년때 디자인적 사고 시간에 텀프로젝트로 만든 안드로이드 애플리케이션

사용 프레임워크

Java API Framework

역할

퀴즈 데이터베이스, 실행부 구현/잠금화면 퀴즈 구현

의의

- 실용적으로 쓸 수 있는 것을 만들었다는 점,
- 프로그래밍에 대한 경험, 도전에 대한 동기부여

한계

- 데이터베이스에 대한 기초 부족-로컬 영역에 데이터 입력
- 프로그래밍 언어에 대한 이해 부족으로 인한 개발지연

September 2020 - December 2020

GPA

4학년 1학기까지의 성적

All: 3.57/4.3
Major: 3.66/4.3

2nd semester, 2024

About The Bowler

구력

2014-2015 중학생 볼러
2020-Present 성인 아마추어 볼러
March 2014 - Present

인적사항

구질: 스트로커
Avg: 185

볼링에 대한 지론

본인은 신체적인 능력은 손이 크다는 점을 제외하면 그다지 좋지 않다.
그렇기 때문에 가능한 머리를 사용해서, 생각을 하면서 볼링을 쳐야만 한다.
주로 사용하는 포인팅 방법은 라인 볼링을 하는 것이다. 전체적인 경로를 선으로 그린다는 의미이다.
이 포인팅의 장점은 레인 패턴에 따른 볼링공의 반응을 예측하기가 수월하다는 것이다.
레인 패턴, 상태에 따라 볼링공을 교체하거나, 아대의 각도를 조절하는 등의 볼링을 즐기는 편이다. 때에 따라 극단적으로 구속을 줄이기도 한다.
추후 에버리지가 210점을 넘는다면 그때에는 프로볼러 입단테스트에 도전할 계획이다. 1차 테스트 컷은 190이고, 2차는 200이다.
이를 위해 스페어처리 연습, 회전수의 증대 등의 과제가 남아있다고 생각한다.