저보다 더 오래하신 분들, 실력자 분들 많으실텐데 혹시나 도움될까해서 한번 올려봅니다. <div>올해로 11년차 되었는데 인터넷에서 다른 개발자분들 보면 실력향상이나 자기계발같은걸 좀 거창하게 생각하는게 있는거같아요.</div> <div>자기계발이란게 꼭 거창하게 오픈소스 프로젝트에 참여하거나 퇴근후나 주말에 책보고 공부하는것만 있는게 아니에요.</div> <div>저같은 경우 처음 취업했을때부터 일하다가 궁금한게 생기면 그 자리에서 바로 코딩해서 실험해보는 습관이 있어요.</div> <div>이게 별거 아닌거 같은데 10년 정도 쌓이니까 도움이 정말 많이 되더군요.</div> <div>저는 개발언어는 C/C++/C#을 주로 사용하고 윈도우/리눅스 환경에서 네트워크 프로그래밍을 주로 했습니다.</div> <div>C++ 코딩하다가 포인터나 쓰레드 관련해서 궁금한게 생기면 바로 다른 IDE 열고 프로젝트 만들어서 최대한 간단한 예제 만들어서</div> <div>테스트 해봅니다. 다른 분야도 마찬가진데 일 하다가 궁금하거나 아리송한게 떠오르면 검색해보다가 결론이 안나면 바로 코딩해서</div> <div>결과를 보고 알아내는 습관이 있어요.</div> <div>이게 별거 아닌거 같아도 일하면서 하나씩 쌓이면 나중에 가면 많은 도움이 되더라구요.</div> <div>그냥 일만 하시는 분들 보면 기본적인거를 잘 모르는 개발자들 많이 봤어요. 예를 들어 화려한 UI를 개발하면서 정작 UI쓰레드의 개념을</div> <div>잘 모르거나 대규모 네트워크 프로그램 개발잔데 TCP/UDP 차이를 정확하게 모르는 사람도 봤어요.</div> <div>특히 네크워크같은 경우 제가 일하는 분야에서 TCP 가 어떻게 동작하는지 정확하게 아는 개발자는 별로 못 본거같아요.</div> <div>그냥 소켓 API 호출하면 TCP 드라이버가 알아서 해준다 정도만 알고 개발하는거죠.</div> <div>이런걸 공부하려고 두꺼운 TCP/IP 프로토콜 스택 같은 책 보는것도 좋겠지만 간단한 테스트 프로그램 만들어서 돌려보고 수정해보고</div> <div>하는게 실질적으로 더 도움되고 빠르더라고요.</div> <div>그리고 한가지 더 말씀드리자면 그냥 생각하는것도 도움이 많이 되요. 그러니까 출퇴근 시간에 지하철에서 어떠한 문제에 대해 곰곰히 </div> <div>생각하는거죠. 내가 DB 를 만들면 어떻게 만들까 라던지 어떤 대규모 시스템을 설계한다면 어떻게 할까 뭐 이런 문제들에대해 혼자서</div> <div>그냥 생각하는거요.. 막연한것 같지만 반복적으로 생각하다보면 조금씩 구체화되고 새로운 문제들이 보이고 나중에 실제 개발할때</div> <div>적용가능한 내용들을 발견하기도 하구요..</div> <div><br></div> <div>조만간 백수가 될 개발잔데 그냥 잉여롭게 놀다가 오유에 프게가 있다는걸 알고 한번 끄적여봤습니다.</div> <div><br></div>