기술 재구현을 통한 프로그래밍 마스터하기

대부분의 개발자는 추상화된 기술을 사용하는 데 대부분의 시간을 보냅니다.

프레임워크와 라이브러리는 작업을 쉽게 만들어 주지만, 동시에 내부 동작 원리를 숨기기도 합니다. 이는 지식의 공백을 만들어냅니다.

'Build-Your-Own-X' 철학을 시도해 보세요. 매일 사용하는 도구를 하나 선택하세요. 그리고 그 핵심 구성 요소를 처음부터 직접 만들어 보는 것입니다. Nginx나 PostgreSQL을 대체할 필요는 없습니다. 그저 그것들이 어떻게 작동하는지 이해하기만 하면 됩니다.

자신만의 웹 서버나 데이터베이스를 구축하는 것은 다음과 같은 여러 면에서 도움이 됩니다:

  • 더 깊은 이해: 설계자들이 왜 특정 자료 구조와 알고리즘을 선택했는지 배우게 됩니다.
  • 더 쉬운 디버깅: 코드 하단의 레이어를 이해하고 있으면 버그를 더 빠르게 찾아낼 수 있습니다.
  • 더 나은 시스템 설계: 확장 가능한 애플리케이션을 구축하기 위한 청사진을 볼 수 있습니다.
  • 더 강력한 문제 해결 능력: 큰 문제를 작은 단위로 쪼개는 법을 배우게 됩니다.
  • 커리어 성장: 면접관들은 기본기를 갖춘 엔지니어를 높게 평가합니다.

비결은 적절한 프로젝트를 선택하는 것입니다. 작게 시작하세요. 복잡한 시스템은 나중에 도전해도 됩니다.

출처: https://dev.to/kelvin_kariuki_20f4bec616/master-programming-by-recreating-your-favorite-technologies-from-scratch-3de