개발자

코딩테스트에서 코드 수준도 평가 대상인가요?

2024년 07월 17일조회 100

취업하기 위한 코딩테스트를 볼 때, 코테를 통과하기만 하면 코드를 더럽게 짰든 이상하게 짰든 뭐 오류 처리를 안했든 상관 없는 건가요? 이건 대기업이냐 스타트업이냐 등 회사 성향에 따라 달라질 수도 있나요? 혹시 그렇다면 주로 어떤 유형의 회사에서 어떻게 평가하는지가 궁금합니다. 그리고 만약 코드 자체의 수준도 평가 대상에 들어가는 거라면, 예를 들어 문제에서 n은 무조건 자연수라는 조건이 주어졌지만, 코드를 짤 때 n이 자연수가 맞는지 다시 검증하는 코드를 넣고, 이 검증을 통과해야 그 뒤에 로직을 처리하게끔 만드는 과정이 필요한가요?? (특히, 만약 n이 자연수가 아니라면 그 뒤에 로직에서 오류가 나는 경우) 검증 과정을 넣는 게 실무에서는 꼼꼼하고 좋은 코드라고 생각은 드는데, 문제에서 절대 나올 일 없는 경우라고 못 박아놓은 경우에도 검증 코드를 넣는 것이 “코테에서 좋은 평가를 받기 위해” 도움이 되는지 궁금합니다!!

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.
profile picture
익명님의 질문

답변 1

장성호님의 프로필 사진

면접에서 코테 코드를 리뷰하거나, 아예 라이브 코테를 보는 곳도 존재합니다. 그런 경우에는 면접관이 코드를 편하게 읽게끔 어느정도 가독성을 확보하는게 좋겠죠. 코테 연습하시면서 자기가 푼 문제를 백업해놓고, 1~2달 뒤에 코드 보면 바로 이해가는지 여부로 확인해보시면 될 것 같습니다. 이미 문제에서 못 박은 건 굳이 검증 안해도 됩니다. 대신 아래 같은 포인트가 더 와닿을 것 같아요. 1. 설명 주석을 적어놓기 2. int[] index, boolean[] visitied 처럼 따로따로 만드는 것보다는 Node[] nodes 와 같이 클래스 또는 구조체로 데이터 묶기 3. 복잡한 메소드들 조금씩 분리해서 가벼운 메소드로 만들기 이런 것들이 있습니다. 물론 코테 문제를 제대로 푸는게 1순위이기에, 시간이 남을 때 이렇게 정리하거나 처음부터 이렇게 푸는 연습을 하면 좋을 것 같습니다.

profile picture

익명

작성자

2024년 07월 17일

답변 감사합니다!!! 조언해주신 것도 따라서 해보겠습니다 :)

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

AI 답변
커리어리 AI 봇 프로필 이미지

커리어리 AI 봇

GPT가 달아주는 답변입니다.

2024년 07월 17일

코딩 테스트에서 코드의 수준도 분명히 평가 대상입니다. 코드를 작성하는 능력뿐만 아니라 그 코드의 가독성, 유지보수 용이성 등을 판단하는 것은 개발자의 중요한 능력 중 하나입니다. 특히 대기업에서는 이런 부분에 상당한 비중을 두는 경향이 있습니다. 코드를 '더럽게' 짜거나 적절한 오류 처리를 하지 않으면, 문제 해결 능력 외에 다른 중요한 소프트웨어 엔지니어링 기사들을 간과하고 있다는 신호가 될 수 있으므로 이것은 좋은 전략이 아닙니다. 그리고 이것은 스타트업에서도 마찬가지입니다. 스타트업에서는 종종 실행 가능한 최소한의 제품(MVP)을 빠르게 출시하는 것에 초점을 맞추지만 체계적인 품질 관리와 유지 보수의 용이성도 여전히 중요합니다. 문제 해결에 관해서는, 문제 설명에서 명확하게 주어진 조건에 따라서만 코드를 작성하면 됩니다. 예를 들어, "n은 항상 자연수입니다"라고 명시되어 있다면, n이 자연수인지 확인하는 추가 코드는 필요하지 않습니다. 그럼에도 불구하고 검증 코드를 넣는 것이 실제 코딩에서는 좋은 습관일 수 있지만, 코딩 테스트에서는 문제의 요구 사항과 조건을 정확히 이해하고 그에 따라 효율적으로 코드를 작성하는 능력을 시험하는 것입니다. 따라서 검증 코드가 있는 경우 "불필요한 로직을 추가함"으로 해석될 수 있으므로 권장되지 않습니다.

목록으로

지금 가입하면 모든 질문의 답변을 볼 수 있어요!