본문 바로가기

전체 글233

신입 개발자 테스트 경험(품질관리, 오류방지, 코드신뢰도) 한 신입 개발자의 포트폴리오를 검토하면서 프로젝트에서 테스트를 어떻게 진행했는지 질문한 적이 있습니다. 학생은 기능을 완성한 뒤 화면을 직접 눌러보며 모두 확인했다고 답했습니다. 회원가입과 로그인, 게시글 작성 기능이 정상적으로 동작했고 발표에서도 오류가 발생하지 않았기 때문에 충분히 검증했다고 생각했습니다.추가로 회원가입에서 비밀번호를 입력하지 않거나 이미 가입된 이메일을 사용하면 어떻게 되는지 물었습니다. 학생은 정상적인 정보만 입력해 봤기 때문에 해당 상황은 확인하지 않았다고 답했습니다. 실제로 빈 비밀번호를 입력하자 화면에서는 가입이 거부되었지만 서버에 직접 요청하면 비밀번호가 없는 계정이 생성되었습니다. 프런트엔드에서만 입력값을 검사하고 서버에서는 같은 조건을 확인하지 않은 것이 원인이었습니다... 2026. 9. 1.
IT프로젝트 요구사항 정리(기능정의, 일정관리, 협업) 한 팀 프로젝트에서 회원이 관심 있는 상품을 저장할 수 있는 기능을 만들기로 했습니다. 회의에서는 찜 기능이라는 이름만 정했고, 화면에도 하트 버튼을 배치했습니다. 프런트엔드 담당자는 버튼을 누르면 색상이 바뀌는 기능으로 이해했고, 백엔드 담당자는 회원별로 선택한 상품을 데이터베이스에 저장하는 기능으로 생각했습니다. 기획을 맡은 팀원은 찜한 상품을 별도 목록에서 확인하고 삭제하는 기능까지 포함된다고 예상했습니다.개발 중간에 결과물을 합쳤을 때 각 담당자가 만든 범위는 서로 달랐습니다. 프런트엔드 화면에는 선택 상태가 임시로 표시되었지만 페이지를 새로 열면 사라졌고, 서버에는 저장 기능만 있어 목록을 불러오는 기능이 없었습니다. 기획자는 사용자가 찜한 상품을 한 화면에서 관리할 수 있어야 한다고 요청했습니.. 2026. 8. 31.
개발자 문서화가 중요한 이유(README, 회고, 전달력) 한 신입 개발자의 포트폴리오를 검토하면서 프로젝트를 실행하는 방법을 질문한 적이 있습니다. 저장소에는 완성된 화면과 사용 기술이 정리되어 있었지만, 설치 순서와 환경 설정은 찾기 어려웠습니다. 학생은 코드를 내려받은 뒤 필요한 패키지를 설치하고 환경변수를 입력하면 된다고 설명했습니다. 그러나 어떤 실행 환경이 필요한지, 환경변수에는 무엇이 들어가는지, 데이터베이스를 어떻게 준비해야 하는지는 본인도 기억에 의존하고 있었습니다.팀 프로젝트가 끝난 지 두 달밖에 지나지 않았지만 프로젝트를 처음부터 다시 실행하려면 이전 대화와 개인 메모를 찾아봐야 했습니다. 함께 작업하지 않은 사람이 저장소만 보고 실행하는 것은 사실상 불가능한 상태였습니다. 학생은 README를 작성했기 때문에 기록은 충분하다고 생각했지만, .. 2026. 8. 30.
실무 용어 정리가 중요한 이유(협업소통, 면접답변, 직무이해) IT 취업을 준비하는 한 학생의 모의면접에서 프로젝트를 진행하며 백엔드 개발자와 어떻게 협업했는지 질문한 적이 있습니다. 학생은 매일 회의에 참여했고 API 명세서를 확인하면서 작업했다고 답했습니다. 그러나 어떤 정보를 주고받았는지 묻자 백엔드에서 API를 전달하면 프런트엔드에서 연결했다는 설명만 반복했습니다.엔드포인트, 요청값, 응답값이라는 단어는 알고 있었지만 실제로 무엇을 확인하고 어떻게 문제를 조율했는지는 설명하지 못했습니다. 전문적인 표현을 알고 있다는 사실과 그 개념을 업무 상황에서 이해하고 활용하는 것은 다르다는 점이 드러난 사례였습니다.프로젝트 기록을 다시 살펴보니 상품 목록을 불러오는 과정에서 프런트엔드가 예상한 응답 구조와 서버에서 전달한 데이터가 달라 화면이 표시되지 않았던 경험이 있.. 2026. 8. 29.
배포 경험이 개발자에게 중요한 이유(실행환경, 오류수정, 운영이해) 신입 개발자의 포트폴리오를 검토하면서 프로젝트를 외부 사용자가 접속할 수 있는 상태로 배포해 본 경험이 있는지 질문한 적이 있습니다. 준비생은 개발이 끝난 뒤 서버에 파일을 올렸지만 오류가 계속 발생해 결국 실행 화면을 녹화한 영상만 포트폴리오에 첨부했다고 답했습니다. 로컬 컴퓨터에서는 회원가입과 게시글 작성이 모두 정상적으로 동작했지만 배포 주소에서는 로그인 요청부터 실패했습니다. 준비생은 서버의 성능이 부족하다고 생각해 인스턴스를 여러 번 재시작했지만 상황은 달라지지 않았습니다.브라우저의 네트워크 기록과 서버 로그를 함께 확인하니 프런트엔드가 여전히 로컬 주소로 API 요청을 보내고 있었습니다. 운영용 주소를 환경변수로 분리하지 않고 개발 과정에서 사용한 값을 코드에 직접 작성한 것이 원인이었습니다... 2026. 8. 28.
디버깅 경험 포트폴리오 활용법(오류원인, 해결과정, 개선결과) 신입 개발자의 포트폴리오를 검토하면서 프로젝트에서 가장 해결하기 어려웠던 오류가 무엇인지 질문한 적이 있습니다. 준비생은 개발 과정에서 문제가 많았지만 검색을 통해 대부분 해결했기 때문에 특별히 기록할 만한 경험은 없다고 답했습니다. 그러나 커밋 내역과 작업 노트를 다시 살펴보니 상품 상세 화면에서 간헐적으로 이전 상품의 정보가 나타났던 문제가 있었습니다. 준비생은 처음에 서버가 잘못된 데이터를 반환한다고 생각해 백엔드 담당자에게 API 확인을 요청했지만, 서버 기록에서는 요청받은 상품 ID에 맞는 응답을 정상적으로 보내고 있었습니다.화면의 네트워크 기록을 비교하자 사용자가 상품을 빠르게 이동할 때 먼저 보낸 요청이 늦게 도착하면서 최신 결과를 덮어쓰는 현상이 확인되었습니다. 준비생은 단순히 요청을 다시.. 2026. 8. 27.