진정한 개발자가 되기 위해서는 많은 것을 알아야 한다는 것을 4년차에 깨닫게 되었다.
코딩 테스트나 알고리즘 문제를 풀 때는 당연히 알고리즘이 필요하다.
정합성은 물론이고 성능까지 고려해야하기 때문에 쉽지 않다.
이러한 알고리즘을 공부하고 문제를 잘 풀고자 산 책이 있다.
프로그래밍 대회에서 배우는 알고리즘 문제해결 전략
이라는 책인데, 구매 후에 몇 개월이 되어서야 다시 펼쳐보게 되었다.
도입부를 읽다보니 머리를 한 대 맞은 듯한 문장이 있었다.
프로그래밍은 문제 해결이다.
최근에 Backend 개발 직무로 이직을 했는데, 회사에서 몇 개월 째 소스에 손을 덴 적이 없었다.
회사 선배에게 이런 고충을 얘기했더니, 해준말이 있었다.
"코딩에 목을 메지 말아라. 진정한 개발자는 문제 해결을 하는 사람이다."
이 말을 듣고 처음에는 별 생각이 없었는데, 지금은 많은 의미를 담고 있었다.
그래서 진정한 개발자인 문제 해결 능력을 기르기 위해 이 책을 다시 펼쳤다.
문제 해결 능력을 기르기 위해서는 일단 프로그래밍을 잘 해야 한다. 그러기 위해서는 언어의 특성, 하드웨어와 운영체제, 네트워크에 대한
지식, 사용하고 있는 라이브러리나 프레임워크에 대한 유의사항들을 잘 파악하고 있어야 한다는 것을 깨달았다.
그래서 늦었지만 지금부터라도 운영체제, 네트워크, 자료구조, 알고리즘 등 대학교 때 배웠던 내용을 다시 빡세게 공부하려고 마음 먹었다.
이러한 퍼즐의 조각들을 적재적소에 배치하고 이들을 연결해서 큰 그림을 만드는 능력이 문제해결능력인 것이다.
최신 트렌드 기술과 언어에 대한 공부도 병행하면서 진정한 개발자가 될 것이다.!