개발자의 일이 무엇일까요? 취업 전의 저는 막연히 프로그래밍을 하는 사람이라고 생각습니다. 개발자는 코딩만 잘하면 된다고 착각했었죠. 막상 취업 후 느끼게 된 개발자의 일은 고객의 요구 사항을 파
개발자의 일이 무엇일까요? 취업 전의 저는 막연히 프로그래밍을 하는 사람이라고 생각습니다. 개발자는 코딩만 잘하면 된다고 착각했었죠. 막상 취업 후 느끼게 된 개발자의 일은 고객의 요구 사항을 파악하고 그것을 코드로서 구현하는 일이 었습니다. 고객의 요구사항을 파악하려면 고객과의 커뮤니케이션이 중요합니다. 하지만 서로의 지식과 도메인이 다르기 때문에 같은 말이라도 다르게 이해할 때가 있고, 그때문에 개발의 방향이 달라지거나 잦은 수정이 있을 때도 있습니다. 그동안 개발자로서 일하면서 느꼈던 커뮤니케이션의 기본을 적어봅니다. 1. 가장 쉬운 말로 설명할 것. 흔히 지식의 저주라고 불리는 은어가 있습니다. 내가 아는 지식을 다른 사람도 당연히 알것이라고 착각하는 거죠. 하지만 모든 고객이 개발 지식을 가지고 있지는 않습니다. 고객의 요구사항이 개발적인 측면에서 시간이 오래걸리고 어렵다는 것을 설명할 때, 개발자의 언어로서 설명하면 고객은 이해하기 어려워 합니다. 코드가 어떤 시점에서 어떻게 동작해서 어렵다고 말해도 고객에게는 다른 이해하기 어려울 뿐이죠. 이때는 가장 쉬운 말로, 가장 간단하게 설명해야 합니다. 하나의 동작을 수정하려면 10개의 코드를 손봐야 하고 수정에는 1주일이 걸린다, 그 10개의 코드에 관련된 또 다른 10개의 코드를 손봐야 한다고 말하면 고객은 그것이 어렵고 번거로운 일이라는 것을 이해하기 시작합니다. 기술적인 어려움이 아닌 일상적이고 정량적인 언어로 설명할때, 오해 없이 대화를 이어갈 수 있습니다. 물론 기술적인 이야기를 배제하라는 말이 아닙니다. 상대가 이해할 수 있는 언어로 목적을 '전달'하는 것이 중요합니다. 2. 예의를 잃지 않기. 모든 고객이 예의를 지켜 요구사항을 전달해 주지는 않습니다. 갑으로서 을에게 요구하는 듯한 말투일때도 있고, 이것도 못해주냐고 핀잔을 주기도 하죠. 하지만 그런 사람들에게 맞춰 나도 예의를 잃기 시작하면 서로에게는 악감정만 남게 됩니다. 기분 나쁜 말은 빠르게 잊고, 기분 좋은 말들을 기억하는 태도가 중요합니다. 얼마전 개발을 끝내고 고객이 댓글을 남긴 적이 있습니다. '정말 원하던 기능을 적절하게 넣어주셨네요. 감사합니다! 오늘도 좋은 하루 되세요!' 고작 3문장이었지만 보람과 함께 기쁨이 느껴졌습니다. 고객의 입장에서는 그저 그런 겉치례였을 지도 모르지만 제게는 하루를 즐겁게 마무리 할 수 있는 경험이 되었죠. 그 후로 저는 개발이 완료되고 고객에게 알릴 때 마지막에 붙이는 말이 있습니다. '확인 부탁드립니다. 감사합니다. 좋은 하루 되세요!' 라고요. 3. 오해가 발생했을 때는 텍스트가 아닌 말로. 개발을 진행하다 보면 고객과 오해가 생기는 일이 발생하곤 합니다. 이럴 때 텍스트로만 오해를 풀려고 접근하다보면 오히려 오해가 깊어지는 일이 벌어지고는 합니다. 텍스트에는 목소리의 톤 과 같은 비언어적 표현들이 담기지 않고, 타이핑과 전달에 딜레이가 있어 서로에게 답답한 감정이 남기때문인데요, 저는 그래서 오해가 생겼다는 확신이 들때는 전화를 통해 고객과 직접 접촉합니다. '오해가 있었던 것 같습니다 .이러이러한 이유로 개발이 늦어진 것이구요~' 사근사근한 말투와 목소리는 적어도 고객이 직접적으로 화를 내기 어렵게 합니다. 텍스트로는 몇십줄을 적어도 전하지 못하는 일을 몇 분의 통화로 해결하는 거죠. 말과 글은 엄연히 다릅니다. 글로서 해결하지 못하는 일을 말로서 해결 하기도 합니다. 개발자로 일하면서 그동안 느꼈던 커뮤니케이션 노하우 들을 적어보았습니다. 읽어주셔서 감사합니다. 오늘도 좋은하루 되시길 바래요~