POOOLING FOREST
웹개발, 코딩이 전부가 아니라는 것을 깨닫기까지 - 풀링포레스트 CTO가 전하는 웹 개발의 본질. 기술적 만족감을 넘어 비즈니스 가치와 사용자 경험을 우선시하며
Culture & Philosophy

웹개발, 코딩이 전부가 아니라는 것을 깨닫기까지

풀링포레스트 CTO가 전하는 웹 개발의 본질. 기술적 만족감을 넘어 비즈니스 가치와 사용자 경험을 우선시하며 깨달은 진정한 개발자의 역할과 성장 체크리스트를 공유합니다.

송찬영

CTO

안녕하세요. 풀링포레스트 CTO 송찬영입니다.

주니어 시절, 저에게 웹개발은 그저 '코드를 작성해서 브라우저에 무언가를 띄우는 일'이었습니다. 화면에 버튼이 생기고, 클릭했을 때 데이터가 서버로 날아가면 제 할 일은 끝났다고 믿었죠. 하지만 연차가 쌓이고, 작은 프로젝트부터 대규모 트래픽을 감당하는 시스템까지 두루 경험하면서 제 정의는 완전히 달라졌습니다. 오늘은 그 과정에서 제가 겪었던 시행착오와, 기술 리더로서 바라보는 웹 개발의 본질에 대해 이야기해 보려 합니다.

화려한 기술 스택이라는 함정

몇 년 전, 꽤 야심 차게 시작했던 신규 프로젝트가 있었습니다. 당시 개발자들 사이에서 가장 핫하다는 프레임워크와 최신 라이브러리들로 기술 스택을 가득 채웠습니다. 우리 팀은 마치 최신 무기로 무장한 군대처럼 의기양양했죠. "이 정도 기술력이면 유지보수도 쉽고, 성능도 문제없을 거야"라고 확신했습니다.

하지만 서비스 런칭 직후, 예상치 못한 문제들이 터져 나오기 시작했습니다. 문제는 코드가 아니라 '비즈니스 로직'과 '사용자 경험'의 괴리에서 발생했습니다. 고객은 우리가 공들여 만든 화려한 인터랙션보다는, 단순하지만 빠른 페이지 로딩과 직관적인 결제 흐름을 원했습니다. 게다가 최신 기술 스택은 레퍼런스가 부족해 운영 이슈가 터질 때마다 팀원들이 밤을 새우며 디버깅해야 했습니다.

우리는 웹개발을 단순히 '기능 구현'으로만 바라보고 있었던 겁니다. 사용자가 겪을 네트워크 환경, 비즈니스의 성장 속도, 그리고 우리 팀이 감당할 수 있는 운영 리소스는 고려하지 않은 채 기술적 만족감에 취해 있었던 것이죠. 뼈아픈 실책이었습니다.

코드 너머의 맥락을 읽다

이 경험을 통해 저는 개발의 중심축을 '기술'에서 '가치'로 옮겨야 한다는 사실을 깨달았습니다. 웹 애플리케이션은 단순히 코드가 모여 있는 집합체가 아니라, 비즈니스의 가치를 사용자에게 전달하는 통로입니다. 아무리 우아한 아키텍처라도 사용자가 가치를 느끼지 못하면 그건 죽은 코드나 다름없습니다.

이후 저는 풀링포레스트에서 프로젝트를 진행할 때, 개발팀에게 "어떻게 구현할까?"보다 "이 기능을 왜 만들어야 하는가?"를 먼저 묻습니다. 기술적인 챌린지는 그 '왜(Why)'가 명확해진 뒤에 고민해도 늦지 않습니다.

예를 들어, 최근 AI 기반의 업무 자동화 툴을 개발할 때도 우리는 화려한 UI보다는 '응답 속도'와 '정확성'에 집중했습니다. 사용자가 AI에게 일을 시키고 기다리는 그 짧은 찰나의 불안감을 해소하는 것이 이 웹 서비스의 핵심이라고 판단했기 때문입니다. 덕분에 우리는 불필요한 프론트엔드 로직을 걷어내고, 백엔드 최적화에 집중하여 훨씬 가벼우면서도 만족도 높은 서비스를 내놓을 수 있었습니다.

성장하는 개발자를 위한 실전 체크리스트

그렇다면 좋은 웹개발을 하기 위해 우리는 구체적으로 무엇을 챙겨야 할까요? 제가 팀원들과 코드 리뷰나 아키텍처 설계 회의를 할 때 항상 점검하는 기준들을 공유합니다.

첫째, 성능은 기능의 일부입니다.

기능이 작동하는 것은 기본입니다. 하지만 3초 이상 로딩되는 페이지는 사용자에게는 '고장 난 페이지'와 같습니다. 단순히 코드를 짜는 것을 넘어, 브라우저 렌더링 원리나 네트워크 패킷의 흐름까지 이해하고 최적화할 줄 알아야 합니다. Lighthouse 점수가 전부는 아니지만, 최소한의 지표는 관리해야 합니다.

둘째, 운영 가능성(Operability)을 고려하세요.

코드는 작성하는 시간보다 읽히고 수정되는 시간이 훨씬 깁니다. 지금 당장 돌아가는 코드보다 중요한 것은, 6개월 뒤의 나 혹은 다른 동료가 이 코드를 보고 의도를 파악할 수 있는가입니다. 로그는 적절히 남기고 있는지, 에러가 발생했을 때 추적 가능한 구조인지 끊임없이 자문해야 합니다.

셋째, 비즈니스 임팩트를 생각하세요.

내가 작성하는 이 API 하나, 컴포넌트 하나가 회사의 비즈니스 목표와 어떻게 연결되는지 설명할 수 있어야 합니다. 단순히 "기획서에 있어서요"라고 대답하는 개발자와, "이 기능을 통해 사용자 이탈률을 줄일 수 있습니다"라고 말하는 개발자의 성장 속도는 하늘과 땅 차이입니다.

결국은 사람을 향합니다

기술 트렌드는 무섭게 변합니다. 어제 배웠던 프레임워크가 내일은 레거시가 되기도 합니다. 하지만 웹개발의 본질, 즉 '기술을 통해 사람의 문제를 해결한다'는 사실은 변하지 않습니다.

저 역시 지금도 매일 새로운 기술을 공부하고 AI 도구들을 테스트합니다. 하지만 이제는 그 도구 자체가 목적이 아니라, 우리 팀이 더 효율적으로 일하고 고객에게 더 큰 가치를 주기 위한 수단으로 바라봅니다.

여러분도 지금 작성하고 있는 코드가 화면 너머의 누군가에게 어떤 가치를 전달하고 있는지 한 번쯤 고민해 보셨으면 합니다. 그 고민의 깊이가 곧 여러분을 대체 불가능한 개발자로 만들어 줄 것입니다. 기술의 숲에서 길을 잃지 않고, 본질을 향해 나아가는 여정을 응원합니다.

지금 읽으신 내용, 귀사에 적용해보고 싶으신가요?

상황과 목표를 알려주시면 가능한 옵션과 현실적인 도입 경로를 제안해드립니다.