코드를 작성하기 전에

마음가짐에 관하여

우리가 작성한 코드는 사용자의 기기에서 매일 매 순간 실행됩니다.

우리의 일은 컴퓨터에게 올바른 명령을 내리는 것입니다. 우리는 안정적이며 신뢰할 수 있고 빠르게 동작하며 사용자의 기기에 되도록 적은 부담을 주는 소스 코드를 작성해야 합니다. 모든 사용자는 누군가의 앱을 사용할 때에 앱이 그렇게 동작하기를 기대합니다. 우리는 그 기대에 부응해야 합니다.

앱센터 서비스의 사용자를 모두 합하면 2천명에 가깝습니다. 앱센터의 서버들은 하루에 약 900개의 요청을 처리합니다. 우리가 만약 개발 과정에서 작은 실수를 저지른다면, 그 실수는 모든 사용자에게 전달되어 적게는 수천 번, 많으면 수십만 번 반복될 것입니다. 퇴고도 하지 않은 채로 급하게 쓴 글이 온라인상에 퍼져 하루에 수백명의 사람에 의해 읽어진다고 상상해 보세요.

소스 코드는 전면에 나서지 않습니다. 개발 당사자를 제외하면 누구도 그 존재에 관심을 가지지 않습니다. 그렇기 때문에 디자인적 실패와 점점 내려가는 코드의 품질에 많은 이목이 쏠리지 않습니다. 개발자에게는 다행스러운 일일 수 있습니다. 그러나 한편으로는 이것이 우리가 UI 뒤에 숨어 지저분한 코드를 양산하는 원인이 되기도 합니다. 코드야 어떻든 잘 돌아가니까요.

그런데 과연 잘 돌아가는 것일까요? 소프트웨어의 기술 부채가 한계에 달하면 프로젝트는 잦은 리뉴얼을 겪게 됩니다. 그 과정에서 시간과 인력이 낭비됩니다. 그리고 이전에 작성된 코드는 아무것도 아닌 게 되어 먼저 온 개발자들의 노력이 물거품이 됩니다. 뿐만 아니라 많은 사용자가 실망하여 돌아서게 됩니다.

힘들게 소프트웨어를 개발하면서 '실망스러운 앱을 만드는 조직'이라는 평을 듣고 싶은 사람은 아무도 없을 것입니다. 그래서 우리는 소프트웨어에 집중해야 합니다. 더 나은 코드에 심혈을 기울이는 일은 우리의 시간과 노력을 지키는 일이며, 수많은 사용자와 미래의 팀원을 돕는 일입니다.

이 가이드에서는 우리가 우리의 코드를 더 가치있게 만들고자 노력한 발자취를 공유하고자 합니다.

Last updated