안녕하세요, 2025년 7월부터 프론트엔드 개발자로 합류한 logen입니다.
입사 후 온보딩 기간 동안, 저는 실제로는 3주라는 짧은 시간 안에 개인 프로젝트를 진행해야 했습니다. 프론트엔드 경험만 있었던 제가 처음 접하는 기술 스택으로 백엔드까지 포함한 전체 서비스를 기획하고 구현하게 되었는데요, 이 글은 그 도전의 과정을 기록하고, 저와 비슷한 상황을 앞둔 분들께 조금이나마 도움이 되고자 작성했습니다.
온보딩 전 개발 경험
말씀드리기전 읽는분들의 공감도를 높이고자 저의 온보딩전 개발 지식과 경험을 가볍게 공유해 보려고합니다.
전자공학을 전공하고 AI 헬스케어 융합전공을 통해 개발에 입문했습니다. 약 1년간 AI 관련 프로젝트를 수행했고, 프론트엔드는 1년 반가량 공부했습니다. CS 지식은 부트캠프와 개인 학습을 통해 어느 정도 알고 있는 상태였습니다. 백엔드는 토이 프로젝트 정도로 가볍게 진행해본 상태였습니다.
주제 선정: 왜 할일 관리 앱인가?
제가 개발한 프로젝트는 ‘할일 관리 앱’입니다.
평소 할일 관리 앱을 사용해보며 아쉬운 점을 느껴왔고, “언젠가 내가 직접 쓰고 싶은 앱을 만들어보고 싶다”는 생각을 해왔습니다. 이번 온보딩은 그 바람을 실현할 수 있는 최고의 기회였습니다.
3주라는 시간 제약 속에서도 꼭 필요한 기능만 담고, 내가 원하는 방식으로 사용할 수 있는 앱을 만들어보자는 목표로 시작했습니다.
👉 프로젝트 깃허브 링크 : 해당 글에서는 코드나 구체적인 구현 내용은 다루지 않습니다. 이번 포스팅은 AI를 어떻게 활용해 성장했는지에 초점을 맞췄으며, 프로젝트의 상세 내용은 위 링크를 통해 확인하실 수 있습니다.
온보딩 과제 스택
이번 온보딩에서 요구한 스택은 제가 경험해보지 않은 것들로 구성되어 있었습니다.
- 프론트엔드: PyQt6
- 백엔드: FastAPI
- 데이터베이스: MariaDB
- 환경 구성: Docker
시간 전략: AI를 활용한 효율적 개발
가장 큰 과제는 시간 부족이었습니다. 모든 스택이 처음이었고, 기획부터 디자인, 발표자료 제작까지 3주 안에 완료해야 했기 때문입니다.
3주 안에 해야 할 일:
- 🎨 기획 및 디자인
- 📚 새로운 기술 스택 학습
- 💻 프론트엔드/백엔드 개발
- 📝 문서화
- 📊 발표자료 준비 및 발표
그래서 저는 AI를 단순한 도구가 아닌 동료이자 멘토, 때로는 직원처럼 전략적으로 활용하기로 했습니다.
주요 전략은 다음과 같았습니다:
- 기획: 혼자 머리 싸매지 않고, AI와 함께 브레인스토밍하며 구체화하기
- 디자인: 원하는 디자인 레퍼런스를 제시하고, 반복 피드백을 통한 수정
- 문서화: 실시간 기록 + AI로 초안 생성 → 개인 시간 활용해 보완
- 발표자료: AI로 PPT 초안 + 스크립트 생성 후 직접 다듬기
- 구현 학습: 확보한 시간을 실습 중심 학습에 집중
- AI 활용: 단순한 지식 전달 도구가 아닌 협업 파트너로 활용
개발 과정과 구체적인 시행착오
1. 기획: 혼자 하지 않고, 함께 고민하기
처음부터 할일 관리 앱을 만들겠다고 정하고, Claude와 GPT를 기획자처럼 여기며 질문을 던졌습니다.
AI 활용 과정:
- 아이디어 확장: GPT와 Claude에게 기존 할일 관리 앱들의 아쉬운 점과 개선 방안을 브레인스토밍
- 기능 우선순위: 3주라는 제한된 시간 안에 구현 가능한 핵심 기능들을 선별
- 사용자 시나리오: 실제 사용자가 앱을 어떻게 사용할지 구체적인 플로우 설계
구체적인 프롬프트 예시:
"할일 관리 앱을 만들려고 하는데, 기존 서비스들의 아쉬운 점을 보완하고 싶어.
* 사용자 경험 관점에서 어떤 기능들이 핵심적일까?
* 3주 안에 구현 가능한 범위로 우선순위를 정해줘
* 사용자가 앱을 처음 실행했을 때부터 할일을 완료하기까지의 플로우를 설계해줘"
AI와의 대화를 통해 핵심 기능(할일 등록/수정/삭제, 카테고리 분류, 진행상태 관리)과 사용자 플로우를 빠르게 정리할 수 있었고, 자연스럽게 기획서 골격도 완성되었습니다.
2. 디자인: 완성보다 방향성
PyQt6라는 데스크톱 앱 프레임워크에 맞는 UI/UX 디자인이 필요했지만, 디자인 툴을 다루는 시간도 부족했습니다.
AI 활용 전략:
- 레퍼런스 제시: 평소 선호하는 디자인 가이드(토스, 카카오 등) 기반으로 요청
- 반복적 개선: 초기 결과물의 부족한 부분을 구체적으로 피드백하며 개선
- 실용성 집중: 화려함보다는 사용성과 구현 가능성에 집중
구체적인 프롬프트 예시:
"PyQt6로 만드는 할일 관리 데스크톱 앱이야. 토스 디자인 가이드를 참고해서 다음 화면들을 설계해줘:
* 메인 대시보드 (할일 목록 표시)
* 할일 추가/편집 모달
* 카테고리 관리 화면
가볍고 실용적인 UI로, 사용자가 직관적으로 이해할 수 있게 만들어줘"
처음엔 완성도가 낮았지만, “이 부분은 너무 복잡해 보여”, “이 버튼은 더 눈에 띄게 해줘” 같은 구체적인 피드백을 반복하며 원하는 형태로 개선할 수 있었습니다.
3. 일정 산출: 유연하고 현실적으로
실제 업무처럼 백로그를 작성하며 진행해야 했기에 해야 할 일에 대한 목록화와 일정 산출, 그리고 일정 관리가 필요했습니다. 하지만 처음 하는 스택들과 처음 하는 파트였기에 해야 할 작업을 목록화하는 것과 각 작업에 소요되는 시간을 예측하는 것은 더더욱 불가능했습니다. 어떤 기능이 꼭 필요한지조차 불명확했기 때문에, 시간보다는 작업 단위 중심의 접근이 필요했습니다.
일정 관리 전략:
-
작업 세분화 – 시간 대신 ‘할 수 있는 단위’로 작업을 쪼개 이슈화
- 예: ‘회원가입 구현’ → 라우터 연결, 입력 검증 로직, DB 저장, JWT 발급
- 이렇게 하면 완료 여부가 명확해지고, 진척도를 눈으로 확인할 수 있었습니다
-
다각도 검증 – 작업의 필요성과 난이도를 여러 경로로 파악
- 동료나 지인에게 경험 질문
- AI에게 일반적인 구현 방식과 고려사항 확인
- 커뮤니티나 레퍼런스 프로젝트 참고
-
유연한 대응 – 작업하면서 알게 된 사항을 바로 반영
- 예상보다 오래 걸리고 중요도가 떨어지는 작업은 일정 조정 또는 제거
이런 식으로 전략을 세우고 해야 할 작업을 자세하게 목록화하니 일정 산출도 조금씩 가능했습니다. 작업을 작은 단위로 세분화하니 구글링을 통해서 내가 해야 할 작업과 얼마나 걸릴 것 같은지 감을 잡기 시작했습니다.
4. 학습: 구조부터 방향까지 AI에게 가이드를 요청하다
처음에는 모르는 것이 너무 많아서 조금 방황했습니다. 그래서 우선 학습 전략을 세우는 것부터 시작했습니다.
학습 순서 확립 과정
1단계: 기본 흐름 파악 지인에게 “백엔드는 어떻게 시작해야 하지?”라고 질문했더니 “DB 설계 → 정규화 → 데이터 저장 → 서버 구축”이라는 큰 흐름을 알 수 있었습니다.
2단계: AI로 세분화
"백엔드 개발을 처음 시작하는데, DB 설계부터 서버 구축까지의 과정을 인터넷에 있는 학습 로드맵, 유명한 개발자들의 글, 기술 블로그, 커뮤니티 조언 등을 참고해서 단계별로 상세하게 가이드 만들어줘"
이렇게 몇가지 키워드를 제시하며 검색을 요청하니, AI가 다양한 자료를 종합해서 학습 순서를 제공해줬습니다.
다양한 학습 방식 병행
공식 문서 + 블로그 (기본 개념) → 완전히 모르는 개념은 직접 공식 문서와 기술 블로그를 찾아서 학습
AI 활용 (이해 보완)
- “이 개념을 쉽게 설명해줘”: 어려운 개념을 초보자 수준으로 풀어서 설명 요청
- “예시 코드로 보여줘”: 추상적인 개념을 구체적인 코드로 확인
- “단계별로 미션을 만들어줘”: 개념을 실습할 수 있는 작은 과제 요청
실전 중심 학습 공식 문서나 튜토리얼을 따라하면서, 동시에 AI에게 미션을 요청해서 직접 코드를 쳐보며 고민하는 방식으로 진행했습니다.
구체적인 예시: SQL을 배울 때:
- 공식 문서보면서 따라하기
- AI에게 간단한 미션 요청
- 스스로 구현해보면서 막히는 부분을 AI에게 질문
- 구현 완료 후 AI에게 코드 리뷰 요청
이런 식으로 이해→실습→검증의 사이클을 반복했습니다.
5. 구현: 몰입 중심 실습
시간이 부족했기 때문에 “구현하면서 배우는” 방식을 택했습니다.
프론트엔드 (PyQt6) 개발
기존 웹 프론트엔드 개발을 공부했었기에 이번 앱 프론트엔드는 온보딩에서도 요구한 것처럼 바이브 코딩을 활용해 보기로 했고 그렇게 진행했습니다.
바이브 코딩 접근 방식: 웹 프론트엔드 경험을 바탕으로 PyQt6 공식 문서의 기본 튜토리얼만 간단히 따라한 후, AI를 활용한 바이브 코딩으로 진행했습니다.
AI 활용 바이브 코딩 과정:
-
UI 디자인 이미지 + 명확한 요구사항으로 프롬프팅
- 설계한 UI 디자인 이미지를 AI에게 제공
- 구현하고 싶은 기능과 요구사항을 구체적으로 정리해서 프롬프팅
- “이 디자인대로 PyQt6 코드를 작성해줘” 방식으로 요청
-
AI 생성 코드 기반으로 빠른 구현
- AI가 생성한 PyQt6 코드를 바탕으로 기본 화면 구조 완성
- 전체적인 레이아웃과 주요 위젯들을 AI가 대부분 처리
-
AI가 수정하지 못하는 부분만 직접 수정
- AI 코드에서 작동하지 않거나 세부적인 조정이 필요한 부분만 직접 수정
- 디자인 미세 조정, 이벤트 연결, 데이터 바인딩 등
이런 방식으로 “AI가 큰 틀을 잡아주고, 나는 핵심적인 부분만 직접 처리하는” 효율적인 개발이 가능했습니다.
백엔드 (FastAPI) 개발
핵심 구현 영역:
- JWT 인증 시스템: 사용자 로그인/회원가입 처리
- RESTful API: 할일 CRUD 기능 (생성/조회/수정/삭제)
- 데이터베이스 연동: MariaDB와 FastAPI 연결
- Docker 컨테이너화: 개발 환경 통일 및 배포 준비
학습과 구현을 병행한 과정
모르는 개념 발견 → AI에게 학습 미션 요청 → 직접 코드 구현 → 막히는 부분은 질문으로 해결 → 기능 완성 → AI에게 코드 리뷰 요청
구체적인 예시 – SQL 학습과 구현
- AI에게 “SQL을 배우고 싶어. 단계별 학습 미션을 만들어줘”라고 요청
- 데이터베이스에서 사용자 추가/수정/삭제 기능을 직접 구현
- 중첩 쿼리, 조건절, 외래키 등 막히는 부분은 AI에게 질문
- 완성된 코드를 AI에게 “시니어 개발자처럼 리뷰해줘”라고 요청하여 개선 포인트 확인
AI를 코딩 어시스턴트로 활용
개발하면서 AI에게 수시로 요청했던 것들:
- 변수명 추천: “이 함수가 할일을 카테고리별로 필터링하는데, 적절한 함수명 추천해줘”
- 다른 구현 방식 탐색: “지금 이 코드를 더 효율적으로 짤 수 있는 방법이 있을까?”
- 리팩토링 조언: “이 코드를 더 읽기 쉽게 개선해줘”
- 에러 해결: “이 에러가 왜 발생하는지 설명하고 해결 방법 알려줘”
이런 과정을 통해 단순히 작동하는 코드가 아니라, 점점 더 나은 코드를 작성할 수 있게 되었습니다.
6. 문서화: AI를 활용한 초안 작성 및 직접 완성
- 노션에 자유로운 기록: 당시 생각과 진행 상황을 정리
- AI로 초안 작성: Claude/GPT에게 구조화된 문서 요청
3. 검토 및 보완: 놓친 부분을 직접 수정하며 완성도 향상
시간 부족으로 일단 작성하고 나중에 수정하는 접근법을 택했습니다.
7. 발표자료: 스토리 중심 구성
발표자료 제작에는 두 번의 AI 도구를 활용하였습니다. 첫 번째로, PPT 생성을 위한 프롬프트 설계에 GPT를 활용하였고, 이 프롬프트를 기반으로 PPT 생성 AI에 입력하여 초안을 제작하였습니다.
사용한 프롬프트는 다음과 같습니다:
“내 회고, 구현, 트러블슈팅 내용을 PPT 형식으로 정리해줘. 발표 흐름도 포함해서.”
생성된 초안을 바탕으로 누락된 내용 추가, 코드 교체, 발표 흐름 조정 등의 작업을 직접 수행하였습니다.
또한 발표 스크립트 역시 AI의 첨삭을 받아 보다 매끄럽고 자연스럽게 구성하였으며, 이 과정은 제 생각을 정리하고 프로젝트 내용을 복습하는 데 큰 도움이 되었습니다.
온보딩 프로젝트에서 얻은 핵심 교훈
1. AI는 도구가 아니라 파트너다
- AI에게 로드맵 요청 → 학습 방향 설정
- 모르는 개념 질문 → 쉽게 설명 + 미션 생성
- 단순 반복 작업 → 자동화
- 코드 리뷰와 리팩토링 조언 → 품질 개선
2. AI만 믿지 말고, 출처를 확인하라
- AI가 만든 흐름은 공식 문서, 기술 블로그와 비교 검증
- 커뮤니티 조언, 오픈소스 구조 참고
- “왜 이렇게 하는가?”를 스스로 묻기
3. 균형 잡힌 학습이 진짜 성장
- 반복 작업은 AI에게 위임
- 이해가 필요한 부분은 직접 해보며 익히기
- 몰입 + 확인 + 반영을 통해 진짜 실력으로 흡수
마무리하며
저도 처음 비전공자로서 개발자의 길을 시작할 때 늘 막막함과 두려움을 함께 안고 있었습니다. 하지만 여러 프로젝트를 통해 나아갈 수 있다는 확신을 얻었습니다. 이번 프로젝트를 통해서도 저의 성장 가능성을 확인하였습니다.
AI는 정말 훌륭한 파트너이지만, 누군가에게는 도움이 되기도 하고 누군가에게는 위험이 될 수 있는 양날의 검이라고 생각합니다. 무작정 맡기기보다는 어떻게 활용할 것인가에 대한 전략이 있어야, 그 효과를 극대화할 수 있다고 믿습니다.
이번 프로젝트는 단순히 기능을 구현하는 데 그치지 않고, 어떻게 학습하고 성장할 것인가를 실험하고 발전시킨 과정이었습니다.
현재 경기 침체와 채용 위축으로 개발자들에게 유례없이 어려운 시기가 찾아왔습니다. 여기에 AI의 급속한 발전까지 더해져 기술 환경은 하루가 다르게 변하고 있으며, 개발자라는 직업 자체의 역할도 새롭게 정의해야 하는 전환점에 서 있다고 생각합니다.
하지만 이럴 때일수록 트렌드에 민감하게 대응하면서도 흔들리지 않고, 자기만의 전략을 세워 꾸준히 성장하는 것이 무엇보다 중요하다고 생각합니다. 변화에 휩쓸리기보다는, 그 변화를 자신만의 방식으로 받아들이고 능동적으로 활용하는 유연함이 필요한 시점이라고 생각합니다.
이 글이 방황하는 누군가에게 조금이나마 도움이 되길 바라는 마음으로 작성했습니다.
각자의 속도와 방식으로 이 시기를 슬기롭게 헤쳐 나가시길 진심으로 응원합니다.
마지막까지 읽어주셔서 감사합니다.