API 스펙 합의 과정을 중심으로
서버 개발을 진행하며 클라이언트 팀과 협업할 때 가장 신경 쓰는 부분은 API 스펙을 초기에 명확히 합의하는 것입니다. 팀 프로젝트에서 아이템 획득 API를 설계할 때, 처음엔 구두로만 논의하다 응답 필드 이름이 서로 다르게 이해돼 통합 테스트에서 오류가 났습니다. 이후 Swagger로 문서화해 공유하니 이런 불일치가 사라졌고, 통합 작업 시간도 절반으로 줄었습니다.
면접관이 이 한 문장으로 확인하려는 것들. 각 갈래를 알면 답의 뼈대가 잡혀요.
서버 개발을 진행하며 클라이언트 팀과 협업할 때 가장 신경 쓰는 부분은 API 스펙을 초기에 명확히 합의하는 것입니다. 팀 프로젝트에서 아이템 획득 API를 설계할 때, 처음엔 구두로만 논의하다 응답 필드 이름이 서로 다르게 이해돼 통합 테스트에서 오류가 났습니다. 이후 Swagger로 문서화해 공유하니 이런 불일치가 사라졌고, 통합 작업 시간도 절반으로 줄었습니다.
저는 서버 로직을 수정할 때 클라이언트에 영향이 갈 수 있는 부분은 미리 팀 채널에 공유하는 걸 원칙으로 합니다. 한 번은 응답 구조를 최적화하려다 클라이언트 파싱 로직과 충돌할 뻔했는데, 수정 전 미리 공유한 덕분에 클라이언트 팀에서 미리 대응할 수 있었습니다. 이 경험으로 나 혼자 판단해 바꾸는 게 아니라 항상 영향 범위를 먼저 알리는 습관이 중요하다는 걸 배웠습니다.
실시간 대전 기능을 구현하며 특정 상황에서만 클라이언트 화면이 멈추는 버그가 발생했습니다. 처음엔 서로 자기 쪽 문제가 아니라고 생각했지만, 로그를 함께 보며 서버 응답 타이밍과 클라이언트 렌더링 타이밍이 어긋난다는 걸 공동으로 확인했습니다. 함께 원인을 찾는 과정에서 책임 소재를 따지기보다 문제 해결에 집중하는 게 협업의 핵심이라는 걸 느꼈습니다.
같은 실수가 반복돼요. 이것만 피해도 절반은 갑니다.
진짜 면접은 두 번째 질문부터예요. 이 답 뒤에 따라올 법한 것들.