기본기가 있는 개발자가 되기 위한 준비
요즘과 같이 IT 변화의 흐름이 빠른 상황에서 새로운 기술이 나왔을때 빠르게 적응하기 위해서는 특정 프레임워크를 잘 쓰는 개발자가 아닌 근간이 되는 기술들의 기본기가 잘 다져진 개발자
가 되어야 한다고 생각한다.
또한 개발이란 혼자서 하는 것이 아닌 여러 사람들과 하는 것이기 때문에 커뮤니케이션에서 기본이 되는 정확한 용어
와 명확한 근거
를 가진 개발자가 되어야 한다.
3주전부터 읽고 있는 타입스크립트 책(o’reilly typescript)를 읽으면서 책의 중간 부분에 책의 저자가 개발자들 사이에서 통용되는 용어를 사용하여 책의 내용을 작성
하였다 라고 명시하는 부분이 있다. 이 부분을 읽고나서 느낀점은 실무에서 여러 사람들과 특정 문제에 대해서 해결점을 찾아가는 과정에서 여러 대화가 오가는데 그 과정에서 개발자들 사이에서 암묵적으로 약속된 용어를 사용해서 대화를 한다면 좀 더 원활한 커뮤니케이션이 될 것 같다고 생각했다.
무언가가 안되는 상황에서 구체적인 상황을 설명할때에도 정확한 용어
와 명확한 근거
를 기반으로 설명을 한다면 다른 개발자분들에게 협업을 잘하는 개발자라는 이미지를 줄 수 있을 것이라고 생각한다.
이러한 정확한 용어를 익히기 위해서는 우선 영어 원문과 발음을 틈틈이 찾아보고, 처음부터 공부할때 확실하게 용어와 개념을 공부하는 습관을 들여야 겠다고 느꼈다.
그 다음으로 이 명확한 근거
는 어떤 기술 스택을 선택할때에는 명확하게 어떠한 이유로 해당 기술 스택을 선택했는지에 대해 설명할 수 있어야 한다.
그냥 “요즘 뜨고 있어서” 혹은 “유명해서”가 아닌 구체적으로 해당 기술이 다른 특정 기술과는 어떠한 차별점이 있고 현재 진행하려는 프로젝트에서 어떤 부분과 더 부합한지에 대해서 설명할 수 있어야 한다.
몇 몇 유명 회사의 기술 블로그에 들어가서 블로그 글을 읽어보다보면 이 기술을 도입하게 된 이유와 배경
에 대한 내용을 심심치 않게 볼 수 있다.
이처럼 실무에서는 어떠한 기술 스택을 선택하고 사용할때 왜 이 기술을 이 프로젝트에서 사용해야 되는지
구체적인 근거를 가지고 사용하는 것 같다.
따라서 내가 지금 특정 프레임워크나 기술을 배우고, 사용하고자 한다면 그것도 내가 왜 해당 기술을 배워서 사용하려고 하는지
에 대한 구체적인 이해와 설명할 수 있는 근거를 기반으로 학습을 해야 된다고 생각한다.