오늘 라인 채용 코딩 테스트를 봤다.

 

네이버, 라인 계열은 클린 코드를 중요시한다고 하여, 그나마 클린 코드나 컨벤션을 잘 아는 JS를 모두 이용해서 문제를 풀어봤다.

 

난이도는 적당한 정도였던 것 같다.

 

1,2,3 번 문제는 구현의 난이도가 낮았지만, 알고리즘적으로 생각할 점이 있었는데, 그렇게 어렵진 않아서 함수를 분리하고, 깔끔하게 짜도록 노력했다.

 

하지만 아쉬운 점은 함수형으로 코드를 짰는데, 커링 혹은 합성 함수 쓰는 법, 고차 함수 이용법 (reduce나 map, forEach 같은?)을 좀 더 잘 숙지했다면, 코드를 더 빠르고, 예쁘게 짤 수 있었을 것이라는 후회가 든다. 좀 더 연습해야겠다.

 

4,5,6번은 알고리즘적으로 어렵다기보단 조금 까다로운 구현 문제였다.

 

4번 문제를 풀다가, 예외 사항을 처리하고, 복잡한 구현을 하다가, 중간에 어딘가에서 오류가 나서 포기할까 고민을 많이했는데, 다행히 5분 정도 더 고민하다가 코드를 조금 수정하니 잘 돌아갔다.

어제 같은 경우도 그렇고 평소에 코테를 볼 때, 꼬이면 포기하는 경향이 있었는데, 포기하지말자!!

 

그리고 코드를 함수형으로 분리하고, 컨벤션을 지키고, 주석을 달면서 짜니 확실히 중간에 꼬이거나 오류가 발생하더라도 문제가 잘 풀리는 것 같다.

 

설계를 하고 코드를 깔끔히 짜는 것이 조금 돌아가는 것 같이 보여도, 결국엔 제일 빠른 길이라는 걸 알게 되었다.

 

 

마지막 남은 1시간 동안 5번 문제를 붙잡았는데, 집중력이 떨어지고, 의욕이 떨어지니 빠르게 못 풀어서 중간에 끝나게 되었다. 

기능들을 다 구현하고 테스트하고, 로직에 따라 넣어주기만 하면 되는데 너무 아쉬웠다 ㅠㅠ

 

다음부터는 끝까지 집중해서 빡세게 코딩을 해야겠다.

 

어제 아쉬웠던 점을 보완해서 코테를 봤는데, 어제보다는 좀 더 만족스러웠다.

 

확실히 구현 부분에서 아직 JS는 익숙하지 않아서 좀 더 연습해봐야겠다.

 

그리고 node를 사용해서 테스트 코드를 돌리는 것이 훨씬 빠르고, 관리하기도 쉽다는 것을 알아냈다.

 

그리고 함수형으로 코드를 분리해서 짜면, 함수 하나하나를 테스트할 수 있어서 코드를 짜기에 정말 좋은 것 같다.

 

좀 더 연습하고, 익숙해져서 다음엔 자연스럽고 빠르게 짜서 모든 문제를 풀 수 있도록 노력해봐야겠다!!

 

그리고 어려운 문제를 빠르게 푸는 것도 중요하지만, 쉬운 문제도 빠르게 풀어보자!!!

반응형

+ Recent posts