PostgreSQL 컨트리뷰터 스토리: Bryan Green

PostgreSQL은 전 세계 수많은 기업의 데이터 인프라를 책임지는 만큼, 그 내부 구조는 복잡하고 정교합니다. EDB는 올해 초, 잠재력 있는 내부 엔지니어들이 PostgreSQL 개발에 직접 참여할 수 있도록 돕는 ‘Developer U’ 프로그램을 시작했습니다.

오늘은 EDB의 플랫폼 운영(Platform Operations) 팀에서 제품 배포 파이프라인을 담당하던 Bryan Green이, 이 프로그램을 통해 어떻게 시스템 레벨의 오픈소스 프로젝트에 기여하게 되었는지, 그 기술적인 여정을 소개합니다.

1. 어셈블리(Assembly)로 시작된 로우 레벨(Low-level)에 대한 열정

Bryan의 프로그래밍 여정은 12살 때부터 시작되었습니다. Atari 400을 접한 그는 곧바로 어셈블리 언어에 빠져들었고, 시스템이 가장 낮은 수준(Low-level)에서 어떻게 작동하는지 이해하는 데 매료되었습니다. 이후 대학에서 컴퓨터 공학을 전공하고 IBM 메인프레임 어셈블리 프로그래머로 커리어를 시작한 그는, Windows NT와 CICS 간의 미들웨어를 작성하거나 Windows 파일 시스템 커널 드라이버를 구현하는 등 줄곧 **’시스템 레벨’**의 난이도 높은 개발을 수행해 왔습니다.

2. PostgreSQL: 복잡성과 우아함의 조화

오랫동안 독점 소프트웨어(Proprietary products) 개발에 집중해 온 그에게, EDB의 ‘Developer U’ 프로그램은 오픈소스 생태계로 진입할 수 있는 완벽한 기회가 되었습니다.

Bryan은 특히 PostgreSQL의 아키텍처가 가진 복잡성과 우아함에 주목했습니다.

“복잡한 내부 구조, 메모리 관리, 파일 시스템, 그리고 플랫폼별 구현과 같은 로우 레벨 시스템 프로그래밍으로 돌아갈 기회였습니다. 게다가 수백만 명이 의존하는 오픈소스 프로젝트에 기여할 수 있다는 점이 매력적이었죠.”

특히 그는 자신의 커널 드라이버 개발 경험을 살려 Windows 관련 작업에 집중하고 있습니다. Windows 환경에서의 PostgreSQL 최적화는 헌신적인 노력이 필요한 분야이며, 그의 파일 시스템 드라이버 경험이 빛을 발하는 영역이기도 합니다.

3. 오픈소스 기여의 현실: 엄격한 검증과 인내

수십 년간 상용 시스템을 개발해 온 베테랑 엔지니어에게도 PostgreSQL 커뮤니티의 리뷰 프로세스는 인상적이었습니다.

  • 철저한 검증: 모든 패치는 다양한 관점에서 깊이 있는 조사를 받습니다.
  • 안정성과 호환성: 안정성, 하위 호환성, 크로스 플랫폼 지원을 위해 광범위한 테스트와 토론이 필수적입니다.
  • 플랫폼별 미묘한 차이: 특히 Windows 관련 작업은 단일 플랫폼 개발에서는 겪어보지 못할 미세한 차이가 데이터베이스 동작에 얼마나 큰 영향을 미치는지 보여줍니다.

Bryan은 *”커뮤니티가 설계 선택의 ‘이유(Why)’를 설명하기 위해 보여주는 인내심은 무엇보다 귀중한 자산”*이라고 말합니다.

4. 실제 기여 성과 (Patches)

Bryan은 현재 pgsql-hackers 메일링 리스트에서 활발히 활동 중이며, 다음과 같은 기술적 성과를 달성했습니다.

  • walreceiver 테스트 수정: 취약한(fragile) 테스트 케이스에 대한 픽스 제공
  • log_error 프론트엔드 경로 수정: 잘못된 fprintf 사용 문제 해결
  • POSIX 호환성 확보: pgwin32_unsetenv에서의 POSIX 준수 솔루션 도출

5. 앞으로의 계획

파일 시스템과 커널 드라이버에 대한 전문성을 바탕으로, Bryan은 성능 최적화로우 레벨 아키텍처 개선에 집중할 계획입니다. 거대한 규모의 성숙한 프로젝트에서 설계 의사결정이 어떻게 이루어지는지 배우며, 그가 사랑하는 시스템 프로그래밍의 본질을 EDB와 함께 탐구해 나갈 것입니다.

메일: salesinquiry@enterprisedb.com

Visited 6 times, 1 visit(s) today