페어코딩으로 두드려 맞았던 이야기
얼마 전 직장인 커뮤니티 블라인드 IT 엔지니어 라운지에 "코딩할 때 마우스 쓰면 찐 개발자 아닌가요?" 제목의 게시글이 올라왔다. '코딩할 때 마우스를 쓰면 안 된다'는 블로그 글에 대한 공유였다.
IT 엔지니어 라운지에 속해 있지 않다면 링크 접근이 안된다
블로그 글을 간단하게 요약하면 코딩할 때 에디터 단축기를 활용해야지 빠르게 개발할 수 있으니 개발자라면 단축키를 외우는 게 필수다라는 내용이다. 페어 코딩 중 마우스를 사용하는 신입 개발자에 크게 화내며 꾸중했던 일화도 곁들였다. 사람들은 득달같이 달려들어 글 뿐만 아니라 글쓴이까지 할퀴기 시작했다.
페어 코딩은 2명 이상의 사람이 함께 코딩을 하는 것을 일컫는다.
개인 블로그이니 법적, 도덕적, 사회적 물의를 일으키지 않는다면 소신과 의견을 자유롭게 피력할 수 있다. 쓰윽 재밌게 읽고 '이렇게 생각하는 사람도 있구나? 재미있네'라고 넘어갈만한 가벼운 글이다. 혹은 '이 아저씨 진짜 꼰대네'하고 읽다가 중간에 페이지를 꺼버릴 수도 있다.
하지만 커뮤니티로 왔을 때는 얘기가 달라진다. 커뮤니티의 환경이나 정서에서 어긋나는(혹은 논란이 될만한) 부분이 있다면 공격을 받을 수 있다. 블로그 글처럼 "개발자는 코드 편집기를 사용할 때 마우스를 쓰면 안 된다."라고 의견을 다소 호전적으로 피력한다면 더욱 그럴만하다. 마우스를 사용하는 개발자들이 본다면 피가 거꾸로 솟을테니.
IT 업계는 다른 산업의 직업군에 비해 수평적인 문화가 자리 잡은 분야이다. 수평적인 문화와 함께 상호 존중과 개성을 중시하는 문화를 가졌다. 따라서 해당 업계에 속해 있는 사람들은 수평, 상호 존중, 개성에 가치를 크게 두고 있는 편이다. 그런데 그 한복판에 "개발자는 무조건 단축키 외워야지"라고 일방적인 의견을 던졌으니 고요한 호수에 돌을 던진 셈이다. 한술 더 떠서 신입에게 소리치며 호통까지 쳤으니 수평적인 관계를 중요하게 생각하는 공간에서 꼰대라는 소리를 듣기 딱 좋다.
댓글로 단축키 필수 사용에 공감한다고 하는 사람은 없었다. '코딩 빨리하면 잘하는 거냐', '꼰대다', '단축키 편한 건 인정하지만 강요하는 건 아니다', 'GUI는 왜 있는 거냐', '토발즈(리눅스 개발자)도 마우스 쓴다' 등등의 비판 섞인 댓글들이 많이 보였다. 예상했던 반응이다. 아마도 블로그 글을 공유한 게시자도 순수하게 의견을 묻기보다는 분노 한 꼬집하려는 의도가 컸을 것이다.
마우스 쓰다가 크게 호통을 들었던 블로그 속에 신입분, 사실 본인이다. 본인이 몸소 겪었던 페어 코딩 스토리가 커뮤니티에 던져진 작은 돌이 됐다는 게 웃겨서 낄낄거리면서 댓글을 읽어 내려갔다. 그때가 첫 회사의 입사 첫 해에 있었던 일이다. 당시에 관심 못 받고 홀로 고군분투하고 있던 본인을 교육하기 위해 논란의 글쓴이가 페어코딩을 제안했던 걸로 기억한다. 솔직히 제안은 아니었다. 왜냐면 다소 빡빡한 성향의 개발자라는걸 잘 알고 있기 때문에 페어코딩이 어떻게 흘러갈지 안 봐도 뻔했다.
실제로 페어코딩은 꽤나 요란했다. 단축키를 하루 이틀 만에 외우는 게 쉽게 되겠는가. 반사적으로 마우스로 손이 갈 때마다 호통을 들으니 잔뜩 긴장할 수밖에 없었다. 그날 사무실에는 그분의 메아리만이 감돌았다. 요란했던 페어코딩 사건은 테크팀에 역사적인 사건이 돼 꾸준히 회자되며 하나의 밈으로 자리 잡았다.
감사하게도(?) 그날의 혹독했던 트레이닝 덕분에 단축키를 쓰게 됐다. 지금은 단축키를 꽤나 능숙하게 사용하는 편이다. 실제로 코딩하면서 마우스를 사용하는 시간이 많진 않다. 단축키 설정이 없어도 단축키를 설정해서 사용하는 걸 선호한다. 실제로 단축키를 써서 코드 작업하는 속도나 능률이 좋아졌다고 생각한다. 세뇌를 제대로 당한 거 같다.
그러면 무조건 단축키를 써야 하는 걸까? 그렇게 생각하진 않는다. 댓글에도 많이 언급됐다시피 코드 작성 속도와 개발 속도가 비례한다고 하기 어렵다. 더욱이 결과물의 품질과 관련해서는 연관 관계가 없다. 빠르다고 품질이 나빠지는 것도 아니고 느리다고 품질이 좋아지는 것도 아니다. 복합적인 요소들이 품질에 영향을 끼친다. '코드 작성하는 속도나 능률이 좋아졌다'는 의미는 정말로 코드 작성에 한해서다. 개발자의 실력도 코딩 속도와 비례하지 않는다. 고로 단축키를 쓰는 개발자가 실력이 더 좋다고 말하기 어렵다. 개발자는 코딩 만하는 게 직업이 아니기도 하고 사실이 그렇다.
시니어가 신입 개발자에게 코드 작성법과 에디터 다루는 요령을 교육하는 건 매우 권장될 만한 일이라고 생각한다. 자연스럽게 단축키 사용의 팁을 전수하기도 하고. 하지만 굳이 굳이 강요할 필요는 없다고 생각한다. 위에서 말했듯이 빠른 코딩이 개발자의 핵심 역량은 아니기 때문이다. 필요하다고 생각되면 자연스럽게 단축키를 찾아서 쓰게 될 일이다. 아니면 단축키를 써서 능수능란하게 키보드를 두드리고 코드를 작성하는 모습을 보여줘라. 그러면 그 모습이 뭔가 찐(?)개발자스러워서 본인도 그렇게 하고 싶다는 허세가 생겨서 뜯어 말려도 할 것이다. 아이에게 책을 읽게 하고 싶으면 부모가 책 읽는 모습을 보여줘라는 교육 방식과 결을 같이한다.
그 이후 두 번의 이직을 거듭하며 세 번째 조직에서 개발을 이어나가고 있다. 이제는 교육을 받는 입장보다는 경험과 지식을 나누는 입장이 됐다. 이번 논란을 통해서 그날 이후의 자취를 되돌아보는 시간을 가졌다. 앞으로 어떻게 동료 개발자들의 성장에 도움이 될 수 있을까라는 고민을 더 해봐야겠다는 고민이 생겼다. 호통치는 건 할 수 없을 거 같다.
겸사겸사 오랜만에 SNS를 통해 당시 테크 리드에게 안부를 물었다. 단축키 논란에 대해서 어그로 끌었다는 사실에 기뻐하는 모습인 거 같다. 경험자 본인 등판 한번 해드리냐고 물었더니 단축기 열심히 쓰고 있다고 말해달라고 했다. 논란의 글에 대한 커뮤니티 반응을 보면 글 작성자를 못되고 고약한 인물로 몰아가는 거 같다. 하지만 텍스트로만 비치는 모습만큼 나쁜 사람은 아니다. 개발에 있어서 소신과 욕심이 있는 편이라 다소 고약하긴 하지만 그만큼 열정적인 리드였다. 주니어 개발자 성장에 대해서 관심과 애정도 많았다고 생각한다. 평소에는 그냥 사람 좋은 동네 아저씨 느낌이다. 오히려 페어코딩을 밈으로 자주 놀리곤 했다. 별개로 꼰대인 건 사실이라 부정할 수 없다. 혹시나 이 글을 본다면 이 놈 많이 컸네라고 하며 허허하고 웃을지도.
소소했던 사건 덕분에 재밌는 추억 감상에 젖었다. 이 날만을 기다렸는데 속이 아주 시원하다ㅋㅋㅋㅋㅋ