안녕하세요! 프론트엔드 개발자로서 제 블로그를 시작하게 된 이유와 기술 선택의 여정을 공유하고자 합니다.
블로그를 시작한 이유
개발자의 여정은 끊임없는 학습과 성장의 연속이라고 생각합니다.
새로운 기술을 익히고, 문제를 해결하며, 그 과정에서 얻은 인사이트를 정리하는 것은 개발자로서의 성장에 핵심적인 부분일겁니다.
이런 경험들을 혼자만 간직하기보다는, 다른 개발자들과 함께 나누며 서로 배우고 성장하고자 블로그를 시작하게 되었습니다.
왜 직접 블로그를 만들었나요?
"그냥 velog, 티스토리에서 시작하지그래?"
"블로그 만드는 시간에 글을 쓰세요!"
처음 블로그를 직접 만들겠다고 했을 때 주변에서 많이 들었던 이야기랍니다.
맞는 말들이었습니다. 결국, 블로그는 글을 쓰기 위한 공간이니까요.
고민의 시작: 이게 맞아?
사실 처음에는 저도 고민이 많았습니다. '이거 그냥 글쓰기를 미루기 위한 핑계는 아닐까?' 하는 생각도 들었습니다. 이미 velog와 tistory 계정과 블로그도 있는데, 굳이 또 블로그를 만드는 게 맞나 싶었죠. 특히 이미 잘 만들어진 플랫폼들이 있는데 과연 내가 그것보다 더 좋은 걸 만들 수 있을까 하는 걱정도 있었습니다.
그래도 한번 만들어보고 싶었던 이유
저는 처음 iOS 앱 개발자로 커리어를 시작했을 때부터 '나만의 것을 만들어보고 싶다'는 작은 로망을 가지고 있었습니다. 그 마음은 지금도 여전히 유효한데요, 현재는 프론트엔드 개발자로서 그 꿈을 실현하고 있습니다. 예전의 그 열정과 호기심이 오늘날의 기술 탐구로 이어지고 있죠.
"Next.js 써볼까? 다들 쓸 줄 알던데..."
"애니메이션 효과로 생동감을 주는 그런 사이트를 만들어보고 싶다!"
하지만 여기서 중요한 건, 단순한 호기심이나 로망만은 아니었다는 점입니다. 프론트엔드 개발자로서 새로운 기술을 실무에 도입하려면, 그 기술이 단순히 흥미로운 것 이상으로 비즈니스적인 가치를 증명할 수 있어야 한다고 생각했어요. 새로운 기술을 도입하려면, 결정권자들을 설득할 구체적인 근거가 필요하기 때문이죠.
예를 들어, "이 기술을 도입하면 개발 생산성이 30% 향상되고, 사용자 경험이 개선되어 전환율이 증가할 것"과 같은 구체적인 데이터와 실제 검증된 결과를 바탕으로 한 논리가 필요하다고 생각합니다. 단순히 감이나 트렌드에 따라 선택하는 것이 아니라, 경험과 데이터에서 나오는 확신을 바탕으로 해야 설득력이 생기기 때문이죠.
이런 과정을 실제로 경험해 볼 수 있는 블로그는 제게 완벽한 Playground가 될 것입니다. 또한 그 과정에서 겪게 될 시행착오들은 중요한 배움이 될 것이고, 그 경험을 통해 더욱 성장할 수 있을 거라 확신합니다.
코드로 표현하는 나만의 색깔
velog와 tistory는 충분히 좋은 플랫폼이지만, 저는 제가 직접 디자인하고 구현한 공간에서 제 이야기를 나누고 싶었습니다. 버튼 하나, 애니메이션 하나에도 제가 고민한 흔적을 담을 수 있다는 게 매력적이었죠.
다크 모드를 구현하면서 색상 팔레트를 고민하고, 반응형 레이아웃을 디자인하면서 사용자 경험을 생각하고... 이런 모든 과정이 제 개발자로서의 아이덴티티를 표현하는 방법이라고 생각합니다.
약간의 얼어 죽을 낭만과 고집 그 사이
솔직히 말씀드리면, 여기에는 "프론트엔드 개발자라면 자신만의 블로그 하나쯤은 있어야 하지 않을까?"하는 낭만이 한 스쿱, '내 블로그 정도는 직접 만들어보자'라는 고집이 한 스쿱 있었답니다.
어쩌면 너무 개발자스러운 생각일 수도 있지만, 이런 고집과 낭만이 제가 성장하는 원동력이 되어왔습니다. 이 블로그는 단순한 글쓰기 플랫폼을 넘어서, 제가 직접 만들고 가꾸어나가는 특별한 공간일 겁니다. 부족한 부분이 보일 때마다 조금씩 개선하고, 새로운 아이디어가 떠오를 때마다 시도해볼 수 있는 작은 실험실이기도 하지 않을까 싶습니다.
이제 남은 건... 열심히 글 쓰는 일뿐이네요! 😅
기술 스택 살펴보기
추후 각 기술에 대해 더 깊이 있는 내용을 다룰 예정입니다.
- Framework: Next.js 14 (App Router)
- Language: TypeScript
- Styling: Tailwind CSS
- Components: shadcn/ui
- Content: MDX
- Deploy: Vercel
Next.js를 선택한 이유
단순히 SEO 최적화만을 위해, 혹은 트렌디한 기술을 써보고 싶어서 Next.js를 선택한 것은 아닙니다.
아래 요소들이 선택에 있어 결정적인 요소었습니다.
-
정적 생성
- 블로그 포스트처럼 자주 변경되지 않는 콘텐츠는 빌드 타임에 생성
- 생성된 정적 페이지는 캐싱으로 빠른 응답 속도 보장
- 필요한 경우 점진적인 정적 재생성(ISR)으로 데이터 업데이트 가능
-
App Router의 새로운 패러다임
- 파일 시스템 기반 라우팅으로 직관적인 프로젝트 구조 구성
Tailwind CSS + shadcn/UI
-
효율적인 스타일링
- tailwindcss의 유틸리티 클래스를 사용하여 빠르고 효율적인 스타일링 가능
- 기능 코드와 스타일 코드가 분리되어 부가적인 코드가 기능을 침범하지 않음
-
빠른 UI 구축
- shadcn/UI 를 활용하여 기본 UI 컴포넌트를 빠르게 구성하고, tailwindcss의 유연성을 통해 손쉽게 커스터마이징 가능
- 일관된 UI 요소를 제공하여, UI 디자인의 일관성 유지
Jest를 사용한 테스트 코드
-
테스트 코드 작성으로 코드 품질 유지
- 단위 테스트 및 통합 테스트를 작성하여 애플리케이션의 신뢰성을 보장
- 리팩토링과 버그 수정 시 안정성을 높이고, 기능이 의도대로 작동하는지 확인 가능
앞으로의 계획
실제로 겪은 문제들과 해결 과정을 기록하려고 해요.
Next.js
, React
생태계의 변화를 따라가면서 배운 점들을 기록할 예정이에요. 단순히 "이런 기술이 있다"가 아닌, 직접 사용해보고 느낀 장단점, 실제 적용 시 고려할 점들을 중심으로 작성하려고 합니다.
가끔은 개발자로서의 성장 이야기도 써보려합니다.
iOS 개발부터 시작해서 프론트엔드 개발자가 되기까지의 과정, 그리고 앞으로 마주할 새로운 도전들에 관해서도 이야기해보고 싶기도 합니다.
부담 갖지 않고, 천천히, 하지만 꾸준히 기록해 나가보려고 합니다.
이 공간이 저의 개발 여정을 기록하는 동시에, 다른 개발자분들과 소통하는 창구가 되었으면 합니다.
지금까지 읽어주셔서 감사합니다.
앞으로도 기술적 고민과 성장의 여정을 함께 나누고 싶습니다! 🚀