기록/SKN 주간회고

[플레이데이터 SK네트웍스 Family AI 캠프 15기] - AI 부트캠프 6개월 회고

jumemory 2025. 11. 30. 10:36

안녕하세요.

취업이 고픈 SKN 15기 김주형입니다.
저는 5/21~11/21(6개월) 동안 진행한 SK네트웍스 FAMILY AI 캠프 15기 교육 내용을 정리할겸 수료 후기를 적어보려고합니다.


 

  • 교육을 참여하게 된 계기와 목표

먼저 저를 간단히 소개하자면, 저는 20살에 오산대학교 컴퓨터소프트웨어과에 진학하며 IT 분야와 인연을 맺게 되었습니다. 전문대학의 특성상 수업은 대부분 실습 위주로 진행되었고, 실제로 다양한 언어와 기술을 직접 접해볼 수 있다는 점은 분명 장점이었습니다. 그러나 이론적인 기초가 충분히 다져지지 않은 상태에서 여러 언어를 폭넓게 배우다 보니, 실습 내용을 깊이 있게 이해하고 응용하는 데에는 한계가 있었습니다.

 

여기에 더해 코로나로 인해 약 1년간 온라인 강의가 이어졌고, 군 복무를 마치고 복학했을 때는 “1년만 다니면 졸업”이라는 현실이 다소 허무하게 느껴졌습니다. 그때부터라도 제대로 된 실무 경험을 쌓아야겠다고 다짐하며 2학년 1학기 여름, (주)휴네시온에서 현장 실습을 진행하게 되었습니다. 네트워크 보안 기업이다 보니 네트워크 전반에 대한 이해를 쌓을 수 있었고, 졸업 작품 역시 모의 해킹을 포함한 네트워크 관련 프로젝트로 마무리하게 되었습니다.

 

졸업 이후에는 취업 준비 과정에서 약 1년간의 공백기를 가지며 자격증 취득과 일경험 프로그램 등을 병행했지만, 스스로 생각하기에 여전히 취업 시장에서 경쟁력이 부족하다고 느끼게 되었습니다. 여러 고민 끝에 지인의 추천을 통해 부트캠프를 알아보던 중 SK네트웍스 FAMILY AI 캠프를 접하게 되었고, 기존에 제가 공부해왔던 개발·네트워크 분야와는 또 다른 방향의 교육 과정이라는 점이 인상 깊었습니다.

 

최근 개발자 취업 시장의 변화와 AI 기술의 빠른 확산을 체감하며, 이제는 선택이 아닌 필수라는 생각이 들었습니다. 저는 기존에 쌓아온 개발 경험에 AI 기술을 더해, 단순히 한 분야에 국한된 개발자가 아닌 융합적인 시각을 가진 인재로 성장하고 싶다는 목표를 가지게 되었고, 이러한 이유로 SK네트웍스 FAMILY AI 캠프에 지원하게 되었습니다. 그렇게 저의 SK네트웍스 FAMILY AI 캠프 여정이 시작되었습니다.


  • 커리큘럼을 통해 배운 핵심 내용

 

https://jumemory.tistory.com/manage/posts?category=1178099

 

① 프로그래밍과 데이터 기초

SK네트웍스 FAMILY AI 캠프에서 가장 먼저 진행된 커리큘럼은 프로그래밍과 데이터 기초 과정이었습니다. 이 과정은 이후 본격적으로 다루게 될 인공지능 학습을 위해 반드시 필요한 기초 역량을 다지는 단계로, Python을 중심으로 컴퓨터 과학의 기본 개념을 함께 학습하는 구성으로 진행되었습니다.

 

Python의 경우, 책 한 권을 처음부터 끝까지 공부하는 방식이 아니라 AI 학습과 데이터 처리에 반드시 필요한 문법, 함수, 클래스 위주로 압축해서 학습할 수 있었던 점이 인상 깊었습니다. 덕분에 불필요하게 방대한 내용을 다루기보다는, 실제로 이후 과정에서 바로 활용할 수 있는 핵심 문법들을 중심으로 효율적인 학습이 가능했습니다.

또한 데이터베이스 기초로 SQL을 배우며 MySQL을 활용한 데이터베이스 생성, 구조 이해, 조회 및 관리 방법을 익혔습니다. SQL은 하나의 문법만 제대로 익혀두면 다른 DB 환경에서도 쉽게 확장 적용할 수 있기 때문에, 데이터 활용 관점에서 매우 실용적인 내용이었다고 느꼈습니다.

 

이렇게 Python과 SQL을 통해 기본적인 데이터 처리 역량을 갖춘 이후에는, 웹 크롤링을 통해 실제 데이터를 수집하는 과정을 학습했습니다. 크롤링은 인공지능 학습에 필요한 데이터의 출발점이라고 볼 수 있는데, BeautifulSoup와 Selenium을 활용하여 웹 페이지 구조를 파악하고 원하는 데이터를 수집·저장하는 전반적인 흐름을 경험할 수 있었습니다. 이 과정에서 HTML 구조와 웹 페이지의 기본 개념까지 자연스럽게 이해할 수 있었습니다.

 

저는 대학교 재학 중 유사한 내용을 접해본 경험이 있어 비교적 수월하게 따라갈 수 있었지만, Python이 처음이신 분들은 플레이데이터에서 제공하는 Python 기초 및 GitHub 활용 강의를 개강 전에 미리 학습하고 오신다면 훨씬 수월하게 커리큘럼을 따라갈 수 있을 것이라 생각합니다.

 

  • 중간 / 팀 프로젝트 경험과 배운 점

https://github.com/SKNETWORKS-FAMILY-AICAMP/SKN15-1st-2TEAM

 

첫 번째 교육과정을 마친 후 진행된 Pilot Project 01은, 지금까지 배운 Python, SQL, 크롤링 내용을 실제로 연결해보는 첫 단위 팀 프로젝트였습니다. 해당 프로젝트는 이틀이라는 짧은 기간 동안 진행되었으며, 정해진 주제에 맞는 데이터를 직접 수집하고 데이터베이스에 저장한 뒤, 이를 조회할 수 있는 간단한 서비스 형태로 구현하는 것이 목표였습니다.

프로젝트의 전체 흐름은 다음과 같았습니다.


먼저 데이터 조회에 사용할 데이터를 정의한 후, 웹 크롤링을 통해 실제 데이터를 수집하였습니다. 이후 MySQL을 설치하고 ERD를 설계하여 수집한 데이터를 데이터베이스에 저장하였으며, Python을 활용해 SQL로 데이터를 조회하고, 최종적으로 Streamlit을 이용해 데이터 조회 GUI를 구현하는 방식으로 진행되었습니다.

저는 팀 내에서 웹 크롤링을 담당하게 되었습니다. 크롤링은 캠프에 참여하며 처음 본격적으로 다뤄보는 영역이었기 때문에 초기에는 많은 부담을 느꼈습니다. 하지만 교육 과정에서 배운 Python 문법과 BeautifulSoup, Selenium 사용법을 바탕으로 하나씩 문제를 해결해 나가며 역할을 수행했습니다.

 

가장 먼저 마주한 어려움은 웹 페이지 구조가 예상과 다르게 구성되어 있어 원하는 데이터가 정상적으로 수집되지 않는 문제였습니다. BeautifulSoup으로는 데이터 수집이 불가능했고, Selenium을 사용하기에는 프로젝트 일정상 시간이 오래 걸리는 문제가 있었습니다. 이에 웹 페이지의 Network 탭을 분석하여 실제로 데이터를 제공하는 API 엔드포인트를 확인하였고, Python의 requests 라이브러리를 활용해 필요한 데이터를 직접 호출하여 수집하는 방식으로 문제를 해결했습니다.

 

이후 팀에서 설계한 ERD 구조에 맞춰 데이터를 전달하는 과정에서도, 컬럼 타입이나 길이 문제로 MySQL insert 에러가 발생하기도 했습니다. 이 문제는 팀원들과 함께 ERD를 다시 점검하며 데이터 구조를 통일하는 방향으로 수정해 해결할 수 있었고, 이를 통해 데이터 수집 단계와 데이터베이스 설계가 얼마나 밀접하게 연결되어 있는지를 체감하게 되었습니다.

 

비록 짧은 기간 동안 진행된 프로젝트였지만, 단순히 기능을 구현하는 것을 넘어서 데이터 수집 → 저장 → 조회 → 시각화로 이어지는 전체 흐름을 팀 단위로 경험해볼 수 있었던 의미 있는 시간이었습니다. 특히 크롤링이라는 새로운 영역을 맡아 직접 문제를 마주하고 해결해 나가면서, 강의로 배운 내용이 실제 프로젝트에서 어떻게 활용되는지를 명확히 이해할 수 있었습니다.

 


  • 커리큘럼을 통해 배운 핵심 내용

 

② 데이터 분석, 머신러닝, 딥러닝

두 번째로 배우게 된 핵심 커리큘럼은 인공지능의 중심이라고 할 수 있는 데이터 분석, 머신러닝, 딥러닝 파트였습니다. 이 과정에서는 통계적인 개념과 함께 데이터에 대한 이해, 그리고 모델의 동작 원리를 함께 요구하기 때문에 개인적으로 가장 어렵게 느껴졌던 파트이기도 합니다.

 

가장 먼저 Python의 대표적인 데이터 처리 도구인 NumPy와 Pandas를 활용해 데이터를 다루는 방법을 학습했습니다. 단순히 데이터를 불러오는 것에서 그치지 않고, 결측치 처리, 이상치 확인, 데이터 타입 변환 등 데이터를 분석 목적에 맞게 정제하는 과정을 중심으로 실습이 진행되었습니다. 인공지능 모델은 데이터의 품질에 크게 의존하기 때문에, 이 단계가 매우 중요하다는 점을 체감할 수 있었습니다.

 

특히 크롤링이나 외부에서 수집한 데이터에는 불완전한 값이나 불필요한 정보가 많이 포함되어 있는데, 이를 그대로 학습에 사용하면 모델 성능에 악영향을 미칠 수 있습니다. 이를 해결하기 위해 범주형 데이터를 수치형으로 변환하는 **인코딩 기법(Label Encoding, One-Hot Encoding)**과, 데이터 스케일 차이를 보정하는 스케일링(StandardScaler, MinMaxScaler) 개념을 배우며, 데이터를 인공지능이 학습하기 적합한 형태로 변환하는 과정을 이해하게 되었습니다.

 

이후에는 Scikit-learn을 활용하여 머신러닝의 기본 개념을 학습했습니다. 지도학습과 비지도학습의 차이를 이해하고, 분류와 회귀 문제에 맞는 다양한 알고리즘을 직접 실습해보며 모델 학습 과정을 경험했습니다. 또한 단순히 모델을 학습시키는 것뿐만 아니라, 학습 데이터와 검증 데이터를 분리하고, 정확도 외에도 Precision, Recall, F1-score 등 여러 평가 지표를 통해 모델을 객관적으로 분석하는 방법을 배웠습니다. 이를 통해 과적합 문제와 모델 일반화의 중요성도 함께 이해할 수 있었습니다.

 

머신러닝 기초를 바탕으로 이후에는 딥러닝의 기본 구조와 흐름을 학습하게 되었습니다. 퍼셉트론 개념을 시작으로, 다층 퍼셉트론(DNN)의 구조와 학습 과정, 그리고 CNN과 RNN이 각각 어떤 문제에 적합한지에 대한 개념적인 이해를 중심으로 수업이 진행되었습니다. 이미지 처리에 적합한 CNN, 순차 데이터 처리에 강점을 가진 RNN의 차이를 배우며, 문제 유형에 따라 모델을 선택하는 기준을 세울 수 있게 되었습니다.

 

이 과정을 통해 단순히 라이브러리를 사용하는 것을 넘어, 데이터 전처리부터 모델 선택, 학습, 평가까지 이어지는 인공지능 학습 전반의 흐름을 이해하게 되었고, 이후 진행될 프로젝트와 딥러닝 심화 과정의 기반을 다질 수 있었습니다.

 

  • 중간 / 팀 프로젝트 경험과 배운 점

https://github.com/SKNETWORKS-FAMILY-AICAMP/SKN15-2nd-1Team

 

두 번째 팀 프로젝트에서는 통신사 고객 이탈 방지를 주제로,고객 데이터를 정제·분석하고 머신러닝 모델을 통해이탈 가능성을 예측하는 웹 기반 서비스를 구현했습니다.

 

이 프로젝트는 통계적 개념, 데이터 전처리, 머신러닝 모델링 등전반적으로 난이도가 높아 개인적으로 가장 어렵게 느껴진 파트였습니다. 특히 머신러닝에 대한 이해가 충분하지 않은 상태였기 때문에모델 학습을 직접 주도하기보다는,예측 결과를 사용자에게 보여주는 웹 페이지 구현과전체 흐름을 연결하는 역할에 집중했습니다.프론트엔드 화면 구성과모델 예측 결과를 웹에서 확인할 수 있도록 하는 과정에서“모델을 잘 만드는 것뿐만 아니라,이를 실제 서비스 형태로 연결하는 과정 역시 중요하다”는 점을현실적으로 체감할 수 있었습니다.

 

또한 팀원들과 협업하며머신러닝 모델의 목적과 입력값, 출력값을 이해하려 노력했고, 모르는 부분은 질문하며 함께 문제를 해결해  나갔습니다. 혼자 공부할 때보다 훨씬 빠르고 깊이 있게 배울 수 있었고,팀 프로젝트를 통해 기술보다 더 중요한 ‘소통과 역할 분담’의 가치를 직접 느낄 수 있었던 경험이었습니다. 


  • 커리큘럼을 통해 배운 핵심 내용

https://jumemory.tistory.com/manage/posts?category=1178103

초거대 언어 모델(LLM)의 이해와 활용 – STEP 03

세 번째 핵심 커리큘럼은 최근 인공지능 분야에서 가장 주목받고 있는 **초거대 언어 모델(LLM, Large Language Model)**을 이해하고, 이를 실제로 활용하는 방법을 배우는 과정이었습니다.

이미 우리가 접해온 챗봇 형태의 인공지능을 넘어서, LLM이 어떤 원리로 작동하고, 실무와 서비스에 어떻게 활용될 수 있는지를 체계적으로 학습할 수 있었던 과정으로, 개인적으로도 가장 흥미롭게 느껴졌습니다.

LLM의 기초 개념과 핵심 기술 이해

먼저 LLM이 등장하게 된 배경과 기존 자연어 처리 모델과의 차이를 중심으로 학습했습니다. 대규모 텍스트 데이터를 기반으로 언어의 문맥과 의미를 학습하며, 모델의 확장성과 잠재력을 이해할 수 있었습니다.

또한 LLM의 기반 기술이 되는 자연어 처리(NLP) 기초를 다시 정리하며, 텍스트 데이터를 벡터로 표현하는 방법과 문장 간 의미적 관계를 딥러닝 모델이 학습하는 원리를 학습했습니다.

특히 LLM의 핵심 구조인 트랜스포머(Transformer) 모델과, 어텐션(Attention) 메커니즘을 통해 문맥 이해와 장거리 의존성 처리가 LLM 성능의 핵심임을 이해하게 되었습니다.

프롬프트 엔지니어링과 LLM 활용 실습

기본 개념 학습 이후에는, LLM을 직접 학습시키기보다는 이미 학습된 모델을 효율적으로 활용하는 방법에 초점을 맞춘 실습을 진행했습니다.

API 기반 LLM 사용법을 익히며, Zero-shot, One-shot, Few-shot 등 다양한 프롬프트 기법을 적용했습니다. 같은 모델이라도 프롬프트 설계 방식에 따라 출력 결과가 달라지는 경험을 통해, 프롬프트 엔지니어링의 중요성을 직접 체감할 수 있었습니다.

RAG와 AI 에이전트를 통한 실무 활용

이후에는 LLM의 한계를 보완하기 위한 RAG(Retrieval-Augmented Generation) 구조를 학습했습니다. 벡터 데이터베이스와 LLM을 연동하여, 모델이 학습하지 않은 최신 정보나 내부 문서를 검색하고, 이를 기반으로 신뢰도 높은 응답을 생성하는 방식입니다.

이를 통해 LLM을 단순한 질의응답 도구가 아닌, 기업 환경에서 실제 데이터를 기반으로 문제를 해결하는 AI 시스템으로 확장하는 방법을 배웠습니다. 나아가, 이러한 기술을 활용해 특정 업무를 수행하도록 설계된 AI 에이전트 구현의 개념적 기반도 이해할 수 있었습니다.

심화 학습: 파인튜닝과 멀티모달 모델

심화 과정에서는 sLLM(Small LLM) 파인튜닝 기법을 학습했습니다. 대규모 모델을 그대로 사용하는 것이 아니라, 비교적 작은 모델을 특정 목적에 맞게 최적화함으로써 효율적인 AI 시스템 설계 방식을 이해할 수 있었습니다.

또한, 텍스트와 이미지 정보를 함께 처리하는 멀티모달 모델을 학습하며, LLM이 문서, 이미지, 시각 정보 등 다양한 형태의 데이터를 통합적으로 이해하고 활용할 수 있다는 점을 경험했습니다.

STEP 03을 통해 얻은 배움

이번 과정을 통해 LLM을 단순 챗봇 기술로 보는 시각에서 벗어나, RAG, 파인튜닝, AI 에이전트와 결합된 실무 문제 해결 도구로 활용할 수 있는 가능성을 이해할 수 있었습니다.

또한, 앞서 학습한 데이터 분석과 머신러닝 과정과 연결해 AI 시스템 전체 흐름 속에서 LLM이 어떤 역할을 수행하는지를 파악할 수 있었으며, 실무 환경에서 활용 가능한 AI 기술에 대해 한 단계 더 깊이 있는 이해를 얻는 계기가 되었습니다.

 

  • 중간 / 팀 프로젝트 경험과 배운 점

https://github.com/SKNETWORKS-FAMILY-AICAMP/skn15-3rd-4team

 

LLM 파일럿 프로젝트 경험 – RAG 기반 질의응답 시스템 구현

이번 프로젝트는 단순히 LLM 모델을 사용하는 수준을 넘어, 외부 데이터와 LLM을 연동하고 전체 시스템을 하나의 흐름으로 설계하는 것을 목표로 진행되었습니다. 기술적으로 난이도가 높아 초반에는 RAG 구조와 벡터 데이터베이스 개념을 이해하는 데 어려움이 있었습니다.

프로젝트 초기에는 질의응답에 활용할 내부 문서 데이터를 수집하고, LLM이 처리하기 적합한 형태로 만들기 위해 텍스트를 일정 길이의 청크(Chunk) 단위로 분할하고 전처리하는 작업을 진행했습니다. 이후 임베딩 모델을 사용해 텍스트를 벡터로 변환하고, 이를 벡터 데이터베이스에 저장하여 유사 문서를 빠르게 검색할 수 있는 환경을 구축했습니다.

실제 구현 과정에서는 임베딩 모델 선택에 따른 검색 성능 차이, 텍스트 청크 크기에 따른 응답 품질 변화 등 다양한 문제들이 발생했으며, 이를 팀원들과 논의하며 개선해 나갔습니다. 이러한 과정을 통해 이론으로만 배운 RAG 개념을 실제로 동작하는 시스템으로 구현하고 최적화하는 경험을 얻을 수 있었습니다.

특히 LangChain을 활용한 RAG 구현 과정에서는, 사용자의 질문을 임베딩하여 벡터 데이터베이스에서 유사한 문서를 검색(Retrieval)하고, 검색된 문서를 컨텍스트로 LLM에 전달하여 답변을 생성(Generation)하도록 전체 파이프라인을 설계했습니다. 이를 통해 LLM이 단순히 학습된 지식만으로 답변하는 것이 아니라, 외부 데이터를 기반으로 정확하고 신뢰성 있는 응답을 생성할 수 있다는 점을 직접 체감할 수 있었습니다.

저는 이 프로젝트에서 RAG 파이프라인 구축과 LangChain 기반 질의응답 로직 구현을 중심으로 역할을 수행했습니다. 데이터 → 임베딩 → 벡터 검색 → 응답 생성으로 이어지는 전체 흐름을 직접 구현하고 연결하는 과정에 집중했습니다.

이번 LLM 파일럿 프로젝트(Pilot Project 03)를 통해, LLM을 단순한 챗봇이나 API 호출 수준에서 사용하는 것을 넘어, 실제 데이터를 기반으로 자동화된 질의응답 시스템을 설계·구현하는 실무 역량을 쌓을 수 있었고, 이후 LLM 기반 애플리케이션 개발에도 즉시 적용할 수 있는 중요한 경험과 기술적 자산을 확보할 수 있었습니다.


 

  • 커리큘럼을 통해 배운 핵심 내용

④ AI 활용 애플리케이션 개발

마지막 커리큘럼은 앞서 학습한 데이터 분석, 머신러닝, 딥러닝, LLM 모델을 실제 서비스 형태로 구현하고 배포하는 ‘AI 활용 애플리케이션 개발’ 단계였습니다. 단순히 모델을 학습하는 것을 넘어, 소프트웨어 개발 과정 전반과 AI 서비스를 운영하는 관점까지 배울 수 있었던 가장 실무에 가까운 파트였습니다.

협업과 개발 프로세스 이해

먼저 소프트웨어 개발의 기본이 되는 협업과 개발 프로세스를 학습했습니다. 제품 기획과 설계 흐름을 이해한 뒤, Git과 GitHub를 활용한 형상 관리 방법을 집중적으로 익혔습니다. 팀 프로젝트에서는 Branch 전략 수립과 Pull Request(PR)를 통한 코드 리뷰 및 병합 실습을 경험하며, 여러 명이 동시에 개발하더라도 코드 충돌을 최소화하고 소프트웨어의 안정성과 품질을 유지하는 방법을 직접 체감할 수 있었습니다.

또한 리눅스 환경의 기본 명령어와 구조를 익히고, 간단한 셸 스크립트 작성 실습을 통해 서버 환경에서의 작업 흐름을 경험했습니다. 이 과정은 이후 클라우드 환경에서 AI 서비스를 배포하고 운영하는 데 필요한 기초 역량을 쌓는 계기가 되었습니다.

웹 프레임워크 기반 서비스 구현

개발 프로세스를 이해한 후에는 웹 프레임워크 기반 서비스 구현 실습이 이어졌습니다. HTML과 CSS를 활용해 웹 화면을 구성하고, JavaScript로 동작 화면을 구현하며 웹 서비스의 기본 구조를 이해했습니다.

이후 Django 웹 프레임워크를 활용하여 백엔드 로직과 데이터베이스 연동을 포함한 웹 애플리케이션을 직접 개발했습니다. 사용자 입력 처리, 데이터 저장, 결과 출력 등 웹 서비스가 동작하는 전체 흐름을 경험하며, AI 모델과 실제 서비스가 연결되는 과정을 체감할 수 있었습니다.

클라우드 환경 배포와 AI 모델 서빙

커리큘럼에서 가장 인상 깊었던 부분은 AI 모델을 실제 서비스 환경에 배포하는 과정이었습니다. AWS와 Docker를 활용하여 서버 환경을 구성하고, 컨테이너 기반으로 서비스를 배포하며, 머신러닝 모델과 sLLM 모델을 클라우드 환경에서 실시간으로 서빙하는 실습을 진행했습니다.

이를 통해 모델 학습 → 애플리케이션 연동 → 서버 구축 → 서비스 배포까지 이어지는 AI 애플리케이션 개발의 전체 라이프사이클을 직접 경험할 수 있었습니다.

AI 활용 애플리케이션 개발을 통해 얻은 점

이번 커리큘럼을 통해, 단순히 AI 모델 개발 능력뿐만 아니라 완성된 모델을 실제 사용자에게 제공하기 위한 DevOps와 서비스 배포 관점까지 이해하게 되었습니다. 모델 성능만큼이나 배포 환경, 협업 방식, 운영 구조가 AI 서비스의 완성도에 큰 영향을 미친다는 점을 체감했고, AI 기술을 현실적인 서비스로 연결하는 역량을 기르는 데 매우 의미 있는 경험이었습니다.

  • 중간 / 팀 프로젝트 경험과 배운 점

https://github.com/SKNETWORKS-FAMILY-AICAMP/skn15-4th-4team

네 번째 프로젝트 경험 – AI 서비스 통합 개발 및 클라우드 배포

캠프의 마지막 프로젝트인 Pilot Project 04에서는, 이전에 진행했던 LLM RAG 기반 질의응답 시스템을 확장하여 실제 서비스 수준의 웹 애플리케이션으로 통합하고 클라우드 환경에 배포하는 것을 목표로 진행했습니다. 프론트엔드, 백엔드, LLM, 데이터베이스를 하나의 서비스로 연결하고 안정적으로 운영하는 과정까지 포함되어, 캠프에서 가장 실무에 가까운 프로젝트였습니다.

이번 프로젝트는 단순한 기능 구현을 넘어서, 사용자가 실제로 접근할 수 있는 서비스 형태로 완성해야 했기 때문에, 시스템 전체를 바라보는 관점과 각 구성 요소 간의 유기적인 연결이 무엇보다 중요했습니다.

시스템 통합 및 역할 수행

저는 이전 프로젝트에서의 웹 UI/UX 구현과 연동 경험을 바탕으로, 프론트엔드와 백엔드 통합, 클라우드 배포를 중심으로 한 핵심 역할을 맡았습니다. 프로젝트 초기에는 서비스 목적과 사용자 요구사항을 분석하고, 전체 시스템 구조를 설계했습니다. 프론트엔드–백엔드–LLM–DB 간의 데이터 흐름을 아키텍처 다이어그램으로 정리하며 팀의 개발 방향을 명확히 하는 데 기여했습니다.

Django 기반 웹 서비스 재구성

기존 LLM 기반 질의응답 기능을 Django 웹 프레임워크를 활용해 재구성했습니다. 백엔드에서는 LLM RAG 기능을 API 형태로 분리하여 설계했고, 프론트엔드에서는 HTML, CSS, JavaScript를 활용해 웹 페이지의 구조와 레이아웃을 직접 구현했습니다.

이 과정에서 단순히 기능을 연결하는 것을 넘어, 사용자가 질문을 입력하고 결과를 확인하는 흐름을 고려하여 사용자 친화적인 UI/UX 중심으로 웹 서비스를 구성했습니다. 덕분에 AI 기능이 자연스럽게 서비스에 녹아들도록 만들 수 있었습니다.

클라우드 배포 및 서비스 안정화

웹 서비스가 완성된 이후에는, 클라우드 환경에서 실제로 서비스가 동작하도록 배포와 운영 환경을 구축했습니다. 서버 환경 구성, 코드 배포, 데이터 마이그레이션을 진행하며, 프론트엔드, 백엔드, LLM, 데이터베이스가 클라우드 환경에서 안정적으로 연동되도록 설정했습니다. 또한 통합 테스트를 통해 각 구성 요소 간 통신 오류와 예외 상황을 점검하며 서비스의 안정성을 확보했습니다. 이를 통해 개발 이후 운영까지 고려한 실제 서비스 개발의 흐름을 경험할 수 있었습니다.

최종 프로젝트를 통해 얻은 배움

이번 프로젝트를 통해, 캠프에서 학습한 기술과 지식을 하나의 **‘실제로 동작하는 AI 서비스’**로 통합하는 경험을 할 수 있었습니다. 요구사항 분석부터 시스템 설계, 프론트엔드/백엔드 개발, LLM과 데이터베이스 연동, 클라우드 배포와 테스트까지 AI 애플리케이션 개발의 End-to-End 과정을 직접 수행하며 실무 경험을 쌓았습니다.

이 과정을 통해 단순히 모델을 학습시키는 개발자를 넘어, AI 기능을 실제 서비스로 구현하고 운영할 수 있는 통합적인 개발 역량의 중요성을 체감했습니다. 이번 경험은 앞으로 AI 기반 서비스를 설계하고 구축하는 데 있어, 큰 자신감과 방향성을 제공해 준 값진 시간이었습니다.


 

  • 최종 프로젝트 소개

https://github.com/SKNETWORKS-FAMILY-AICAMP/SKN15-FINAL-3TEAM

 

캠프의 마지막 프로젝트, SKN15‑FINAL‑3TEAM에서는 내부 특허 데이터를 활용한 ‘특허 특화 AI 어시스턴트’ 서비스를 개발했습니다. 이 서비스는 사용자가 입력한 청구항을 기반으로 등록 가능성 예측, 거절 사유 분석, 관련 선행문헌 탐색까지 제공하는 AI 기반 시스템으로, LLM과 RAG, 벡터 데이터베이스, 웹 애플리케이션을 통합하여 실제 서비스 수준으로 구현하는 것이 목표였습니다.

저는 프로젝트 매니저(PM)이자 프론트엔드·백엔드 통합 개발을 담당하며 팀의 전체 설계 방향을 정리하고 각 구성 요소를 연결하는 핵심 역할을 수행했습니다. Django 기반 백엔드 API와 프론트엔드 UI를 설계·구현하며, 사용자 입력 → 벡터 검색 → LLM 호출 → 결과 출력으로 이어지는 전체 서비스 흐름을 만들었습니다. 이를 통해 단순히 모델을 학습시키는 것을 넘어, 실제 사용자가 체감할 수 있는 AI 서비스로 구현하는 경험을 할 수 있었습니다.

프로젝트의 기술적 핵심은 RAG 기반 질의응답과 LLM 통합, 벡터 DB, 웹 서비스의 연결이었습니다. 특허 청구항, 거절 결정서, 법령 등 방대한 문서를 전처리하고 임베딩하여 벡터 데이터베이스에 저장했습니다. 사용자가 질문을 입력하면, 벡터 DB에서 유사 문서를 검색하고 LLM이 이를 기반으로 등록 가능성, 거절 사유, 개선 인사이트를 생성하도록 구현했습니다. 이를 통해 단순 검색을 넘어, 분석과 판단, 추천까지 가능한 AI 어시스턴트 시스템을 완성했습니다.

물론 과정이 쉽지는 않았습니다. 방대한 특허 데이터를 처리하며 PDF 변환, 중복 제거, 결측치 처리와 메타데이터 정합성을 확인하는 과정에서 여러 문제를 해결해야 했고, 벡터 DB 검색 성능과 LLM 호출 비용, 사용자 입력 검증 등 여러 현실적 난제도 있었습니다. 특히 PM 역할을 맡으면서 팀원들의 역량 차이를 고려해 역할을 조율하고 일정과 기술 난이도를 관리하는 과정도 큰 도전이었습니다.

하지만 이러한 경험을 통해 AI 모델 개발, 데이터 처리, 웹/백엔드 연동, 서비스 배포까지 아우르는 통합 역량을 쌓을 수 있었습니다. 팀원들과 협업하며 설계부터 배포까지 책임지고 완성하면서, AI 기술이 단순 학습용 모델이 아닌 실제 문제 해결 도구로 활용될 수 있다는 자신감을 얻었습니다. SKN15‑FINAL‑3TEAM 프로젝트는 저에게 아이디어를 실제 서비스로 구현할 수 있는 통합 개발자로 성장할 수 있는 소중한 경험이 되었습니다.

 


 

  • 수료 소감 및 이 과정을 통해 얻은 것

AI 과정은 대부분의 개념이 생소하고 짧은 시간 안에 많은 학습량을 요구하는 과정이었기 때문에 학습 과정에서 쉽지 않았던 순간이 많았습니다. Python 기반의 데이터 전처리, 통계 개념을 활용한 데이터 분석, 머신러닝 모델 학습과 평가까지 여러 단계를 동시에 이해해야 한다는 점에서 AI 분야의 난이도를 실감할 수 있었습니다.

특히 단순히 코드를 작성하는 것을 넘어서 데이터를 어떻게 해석하고, 어떤 특징을 모델에 입력해야 의미 있는 결과가 나오는지 등 분석적 사고와 활용 능력이 함께 요구된다는 점이 기존 학습과 가장 큰 차이점으로 느껴졌습니다.

과정 초반에는 한 번에 모든 내용을 이해하고 완벽하게 수행하려는 욕심 때문에 체력적으로나 정신적으로 지치는 순간도 있었습니다. 하지만 반복적인 실습을 통해 데이터 전처리–모델 학습–결과 해석이라는 흐름이 조금씩 연결되기 시작했고, 프로젝트를 거치며 전체 구조를 바라보는 시야가 점차 넓어지는 경험을 할 수 있었습니다.

오프라인 과정의 특성상 단순히 이론을 듣는 데에서 그치지 않고 직접 코드를 작성하며 즉각적인 피드백을 받을 수 있었고, 현업과 유사한 형태의 팀 프로젝트와 수시로 진행된 상담을 통해 학습 방향을 점검하며 끝까지 과정을 완주할 수 있었습니다.

이번 과정을 통해 AI를 단순한 모델이나 기술로 받아들이는 것이 아니라, 데이터를 기반으로 문제를 정의하고 적절한 방법을 선택해 해결해 나가는 하나의 문제 해결 도구로 바라보는 관점을 얻게 되었습니다. 앞으로도 부족한 부분을 지속적으로 보완하며 AI 기술을 실제 서비스와 문제 해결에 적용할 수 있는 역량을 키워나가고 싶습니다.