Blog

웹개발자로서 나의 첫번째 프로젝트: 성공과 실패를 담은 기록

웹개발자로서 나의 첫번째 프로젝트: 성공과 실패를 담은 기록

Web development project

프로젝트를 시작하고 싶으신가요?​

우리 팀은 귀하의 아이디어를 구현할 준비가 되어 있습니다. 귀하의 로드맵에 대해 논의하려면 지금 저희에게 연락하십시오!​

웹 개발의 세계에 첫발을 내딛는 순간은 설렘과 두려움이 공존한다. 코드 한 줄 한 줄이 새로운 도전이 되고, 에러 메시지는 때론 낯선 외계어처럼 느껴지기도 한다. 나 역시 첫 웹 개발 프로젝트를 진행하며 수많은 시행착오를 겪었고, 그 과정에서 얻은 교훈은 지금도 나의 개발 철학을 형성하고 있다.

이 글에서는 초보 웹 개발자로서 첫 프로젝트를 기획하고 구현하며 마주쳤던 문제들, 그리고 그 문제들을 해결한 방법을 공유한다. 또한, 프론트엔드와 백엔드의 기본 기술 스택부터 협업 팁까지, 지금 돌이켜보면 알았더라면 좋았을 것들을 정리해본다.


1. 첫 프로젝트를 시작하기 전: 무엇을 준비해야 할까?

첫 프로젝트를 시작할 때 가장 큰 고민은 “무엇을 만들 것인가?”였다. 너무 복잡한 프로젝트는 완성하기 어렵고, 너무 단순한 프로젝트는 성취감이 떨어질 수 있다. 나는 간단한 투두리스트(Todo List) 웹 앱을 선택했는데, 그 이유는 다음과 같다.

  • CRUD (Create, Read, Update, Delete) 기능을 모두 연습할 수 있다.
  • 프론트엔드(HTML, CSS, JavaScript)와 백엔드(Node.js, Express)를 함께 다룰 수 있다.
  • 로컬 스토리지나 데이터베이스(MySQL, MongoDB)를 활용해 데이터를 저장하는 방법을 배울 수 있다.

만약 지금 첫 프로젝트를 시작한다면, MDN 웹 문서위키북스의 자바스크립트 튜토리얼을 참고해 기본기를 탄탄히 다진 후 시작할 것을 추천한다.


2. 기술 스택 선택: 어떤 도구를 사용해야 할까?

첫 프로젝트에서는 최신 기술보다는 기본에 충실한 스택을 선택하는 것이 중요하다. 나는 아래와 같은 기술을 사용했다.

분야 사용 기술 선택 이유
프론트엔드 HTML, CSS, JavaScript 웹 개발의 기본이 되는 기술로, 복잡한 프레임워크 없이도 충분히 구현 가능
백엔드 Node.js + Express JavaScript로 백엔드까지 처리할 수 있어 학습 곡선이 낮음
데이터베이스 MongoDB (Mongoose) NoSQL의 유연함이 초보자에게 접근하기 쉬움
배포 Heroku 무료로 사용 가능하고, 초보자도 쉽게 배포할 수 있음

만약 지금이라면, ReactVue.js 같은 프론트엔드 프레임워크를 도입해보는 것도 좋다. 하지만 기본적인 DOM 조작Vanilla JavaScript를 먼저 익히는 것이 더 중요하다고 생각한다.


3. 개발 과정에서 마주친 3가지 문제 (그리고 해결법)

(1) 백엔드 API 연결에서 CORS 오류 발생

프론트엔드와 백엔드를 연결할 때, CORS(Cross-Origin Resource Sharing) 정책 때문에 데이터를 가져오지 못하는 문제가 발생했다.

해결법:
Express 서버에 CORS 미들웨어를 추가했다.

const cors = require('cors');
app.use(cors());

더 자세한 내용은 CORS MDN 문서를 참고하면 도움이 된다.

(2) 데이터베이스 연결 실패

MongoDB Atlas를 사용해 클라우드 DB를 연결했는데, 연결이 계속 끊겼다.

해결법:

  • 연결 문자열(Connection String)에 오타가 있었는지 확인
  • IP 화이트리스트에 내 IP를 추가했는지 확인
  • 환경 변수(.env)를 사용해 보안 강화

(3) 반응형 디자인이 제대로 적용되지 않음

모바일에서 레이아웃이 깨지는 문제가 발생했다.

해결법:

  • 미디어 쿼리 적용
    @media (max-width: 600px) {
    .container { width: 100%; }
    }
    
  • Flexbox 또는 CSS Grid를 활용해 유연한 레이아웃 구성

4. 첫 프로젝트를 마치고 배운 것

  1. 기본기가 가장 중요하다
    • 프레임워크보다 순수 JavaScript와 CSS 이해가 먼저다.
  2. 에러 메시지를 두려워하지 말 것
    • 구글 검색과 Stack Overflow에서 대부분의 해결책을 찾을 수 있다.
  3. 기록하는 습관을 들일 것
    • 블로그나 GitHub에 프로젝트 과정을 정리하면 나중에 큰 도움이 된다.

5. 다음 프로젝트를 위한 도전

첫 프로젝트를 완성한 후, 나는 사이드 프로젝트 문화의 중요성을 깨달았다. 웹 개발은 끊임없이 배워야 하는 분야이기 때문에, 작은 프로젝트라도 꾸준히 도전하는 것이 성장의 열쇠다.

다음 목표:

  • React + Firebase로 소셜 로그인 기능 추가
  • TypeScript 도입해 더 안정적인 코드 작성
  • AWS 또는 Vercel로 직접 배포해보기

마치며: 웹 개발자의 여정은 계속된다

첫 프로젝트는 완벽할 필요 없다. 중요한 건 시도하고, 실패하고, 배우는 과정이다. 지금도 나는 새로운 기술을 배우며 조금씩 성장하고 있다.

당신의 첫 프로젝트는 무엇인가요?
아직 시작하지 않았다면, 오늘 당장 작은 프로젝트를 하나 시작해보자. 코드 한 줄이 당신의 개발자 여정을 바꿀 수도 있다.

“웹 개발은 단순히 코드를 작성하는 것이 아니라, 문제를 해결하는 과정이다.”

첫 프로젝트의 코드가 궁금하다면? GitHub 레포지토리를 방문해보세요!


이 글이 초보 웹 개발자들에게 조금이나마 도움이 되길 바란다. 함께 성장하는 개발자 커뮤니티에서 만나요!

다음
위로 스크롤

Thank you for contacting us, we will contact you as soon as possible!