대학원 졸업 후, 3년 동안 순수 소프트웨어 개발회사에서 일을 하다, 전자회사로 옮겨 지낸지 벌써 4달이 다 되어 갑니다. 새로운 회사에서 스스로의 몫을 찾기 위해 정신없이 달려온 것 같네요.
벤처기업과 대기업의 문화적 차이 만큼이나, 순수 소프트웨어 개발과 전자제품 개발사이에는 큰 차이가 있었습니다.
이전 회사에서 하던 일은 무에서 유를 창조해 내는 것이었습니다. 모든 것은 컴퓨터 안에서 이루어졌죠.
지금 다니는 회사에서 하는 일의 유형은 대부분 다음과 같은 일련의 절차를 밟습니다.
1. 포팅 또는 마이그레이션
2. 디버깅
3. 직접 해결 또는 타부서/외주업체에 해결 요청
S/W 개발자의 입장에서는 무에서 유를 창조하는 일이 훨씬 재밌게 느껴질 것입니다. 그럼에도 불구하고 제가 지금 하는일에도 여전히 만족하며 즐겁게 회사 일을 할 수 있는 것은, 재미 없어 보이는 과정 속에서 재미를 찾으려고 노력했기 때문입니다.
시간적인 여유를 가지고 전부다 다시 짜고 싶은 마음이 굴뚝같지만, 다른 사람이 작성한 코드를 가져와 시스템에 자연스럽게 녹아들게 하는 일도 충분히 가치가 있는 일이라고 생각합니다. 리펙토링 혹은 부분적인 재구현을 통해 코드의 품질을 향상시키는 일도 S/W 엔지니어로서 보람을 느끼게 하구요.
디버깅은 순수 소프트웨어 개발 보다, 지루하고 인내를 필요로 하는 작업입니다. 거대한 안드로이드 코드를 빌드하고 폰에 다운로드하고 실행하는 일련의 과정이 많은 시간을 필요로 합니다.
문제가 생겼을 때, 이를 해결해 나가는 과정도 나름의 묘미가 있습니다. 문제를 정확히 파악하고 그 상황에 필요한 일을 판단하고 원활한 커뮤니케이션을 통해 일을 풀어나가는 과정도 큰 보람을 느끼게 합니다.
그 밖에도 100명이 넘는 사람들과 같이 일하는 것도 저에게는 소중한 경험인 것 같습니다. 커뮤니케이션 및 관리 능력의 중요성을 실감하게 되네요.
현재는 안드로이드 스마트폰 프로젝트에서 비교적 하드웨어와 연관이 적은 일을 하고 있지만, 다음 프로젝트에서는 하드웨어와 관련된 경험을 쌓기 위해 사내 교육을 적극 활용할 계획입니다.
분명한 것은, 순수 소프트웨어 회사에서 쌓았던 소프트웨어 개발 경험이 저에게 큰 힘이 되고있습니다.