오해를 막기 위해 짚고 넘어가자면 일단 이 글은 내 생각일 뿐이고,

따라서 오로지 내 기준에만 부합하는 소리일 가능성이 높으므로

진지를 과도하게 잡수시어 서로 피곤해지는 일이 없었으면 좋겠습니다.

 

아시다시피 이 주제는 사람마다 굉장히 의견이 갈리는 내용이니까요.

 

----

 

Problem Solving

 

문제를 주고, 입력 예시를 주고, 출력 예시를 주고

거기에 맞춰 코드를 작성한다음 테스트케이스를 전부 통과하는게 목표

대개 알고리즘 문제가 주를 이룬다.

 

기업들이 개발자 입사 전형에서 코딩테스트로 많이들 한다.

주어진 문제를 얼마나 잘 이해 했고, 코드를 얼마나 효율적으로 작성했으며,

정확하게 동작하는가가 중심이 된다.

 

이런걸 연습할 수 있는 사이트는 내가 아는것만 늘어놔봐도

국내에는 백준, 코드업, 삼성 SW 엑스퍼트 아카데미

해외에는 코드포스, 리트코드, 코드시그널

정말 많다.

 

이 사이트들에 기웃거리는 분들을 크게 세가지로 나눠볼 수 있을 것 같다.

 

1. 그냥 이런거 푸는게 재미있어서

2. 대회 준비하는 분들(ACM-ICPC 같은거)

3. 개발자로 취업 준비하는 분들

 

1번은 그냥 즐겜러들이니 논외로 치고, 2번이나 3번의 이유로 PS문제를 붙잡고 사는 분들이 참 많다.

그 분들에 대해 왈가왈부 하지는 않겠다. 아니 못한다.

자신들의 목표를 위해 열심히 달리는 분들인데 내가 무슨 얘기를 하나.

 

----

 

아무튼 나도 3의 이유로 PS를 해야할 거 같아서 지난 4년간 들락날락 해봤지만

크게 흥미를 느끼지 못했다.

 

일단 솔직하게 말하고 넘어가자. 나는 PS 못한다.

위에 열거한 PS 사이트들은 내가 한번씩 거쳐갔던 곳이다.

저기서 푼 문제들 다 합쳐 100문제도 안된다. 그마저도 쉬운 문제들이다.

 

그런데 나는 더 솔직하게 얘기하고 싶다.

왜 하는지 모르겠다. 노잼인건 둘째치고 저걸 하는 의미를 찾는 것 조차 무의미해보인다.

 

수 많은 문제들이 있고 이걸 드르르륵 풀어대는게 꼭 고등학교때 수학으로 양치기 하는 느낌이다.

이짓을 함으로서 난 무엇을 얻을 수 있지? 적어도 양치기는 수학점수라도 올라간다.

 

알고리즘 공부?

적어도 난 까먹거나 몰랐던 알고리즘을 공부하기 위해 굳이 PS를 하고 싶지는 않다.

차라리 관련된 책을 한번 더 펴보는걸 좋아한다.

 

실무에서 도움이 된다?

그러려고 PS할 바에 자신이 쓰는 언어와 기술에 대해 더 깊이 공부하고

기초를 더 탄탄하게 하는게 더 도움이 된다.

 

그냥 프로젝트를 하자.

깃헙에 레포가 하나 더 생기고 완성하면 포트폴리오가 된다.

 

PS 하면서 하는 삽질보다 프로젝트 하면서 하는 삽질에서 얻을 수 있는게 더 많다.

PS 할 시간에 책장에 쳐박아둔 책 꺼내서 다시 읽는게 더 낫다.

 

----

 

2020.02.18 20:18 먼가 참고해볼만한 자료가 있어서 여기에 추가

 

https://www.slideshare.net/wonharyu/ss-62184255