계기 한참 회사에서 풀스택 잡부로 일하면서 다양한 프레임워크, 프로그래밍 언어를 접할 기회가 있었다 (Java, Javascript, Typescript, Dart, Python, Kotlin 등등). 그 정도에 차이가 있을 뿐이지 전부 정적 타입 검사를 지원하는 아~주 고급 언어들이다. 이러한 언어들로 프로그래밍을 진행하다보니 문득, 이렇게 고급스럽게 만들어진 언어들에만 익숙해져 있어서 프로그래밍 언어 그 자체의 최적화라던가, 가비지 컬렉션, 박싱/언박싱 등등 프로그래밍 언어의 내면에 대해서 얕은 지식만 가지고 있는 채로 지나가고 있다라는 생각이 들었다. 또한, 매번 규모가 작은 스타트업에서 근무하면서 프로젝트의 아키텍처, 개발론 (TDD, DDD, BDD 등등)과 같은 이론적이고 설계적인 부분에 대해..