인싸 개발자와 아싸 개발자의 차이가 뭔지 아시나요?


인싸 개발자들은 엄청 활동적이에요. 각종 스터디나 컨퍼런스 등에 많이 참가하면서 다른 개발자들도 많이 만나고 얘기도 많이 나눠요. 그래서 인싸 개발자들은 아는 게 많아요. 아마 인싸 개발자들에게 기술 스택을 물어보면 번듯한 이름들이 줄줄이 나올 거에요. 쿠버네티스, 카프카, 앤서블, 리코일, 데노, MSA, 플러터, go, ELK스택 등등... 이들이 들고다니는 맥북 겉면에는 각종 스티커들이 너저분하게 붙어 있어요 (물론 사과 마크 있는 부분은 빼구요). 인싸 개발자들은 블로그나 페이스북도 엄청 열심히 해서 인터넷에서도 유명하고 많은 주니어 개발자들이 이들처럼 되고 싶어해요.


하지만 인싸 개발자들에게 엄청 거대한 서비스를 디자인해보라고 하거나, netstat이나 htop 같이 쓸만한 커널 소프트웨어를 하나 만들어보라고 하거나, 자기들이 쓰고 있는 것들이랑 비슷한 오픈 소스 소프트웨어 하나만 만들어보라고 하면 못 만들어요. 스케일 아웃이 용이한 디자인을 해보라거나, 시스템의 병목을 찾으라거나, 메모리가 새는 부분을 찾으라고 해도 마찬가지에요. 이들은 트렌드를 따라가느라 기술 각각을 익히는데만 신경을 쓰기 때문에 컴퓨터 공학의 근본적인 부분을 놓친 채로 살아가요.


아싸 개발자들은 겉으로 보기엔 별볼일 없어보여요. 평소에 말도 별로 없고, 자기 영역이 아닌 이상 최신 기술들에 두루 관심을 가지지도 않거든요. 아마 이들 중엔 플러터가 뭔지 모르는 사람도 많을 거에요. 거기에 더해 더벅머리, 뿔테 안경, 못생긴 얼굴, 뚱뚱한 (혹은 깡마른) 몸에 괴상한 패션 센스까지 합쳐져서 더욱 별볼일 없어보이게 만들죠. 이들이 들고다니는 씽크패드 노트북은 각지고 엄청 멋없어요. 운영체제도 윈도우도 우분투도 아니고 아치 리눅스, 만자로 리눅스 같은 처음 들어보는 것들을 써요.


하지만 겉보기와 달리 아싸 개발자들은 컴퓨터 공학의 작은 부분부터 커다란 전체까지 통달하고 있어요. 이들은 커널과 네트워크가 어떻게 작동하는지 정확히 알고 있고, C와 rust 같은 저수준 언어들을 능숙하게 다루고, 어떤 디자인이 좋은 디자인인지 알고 있어요. 또한 컴퓨터 공학이 어떻게 발전해왔는지, 그 과정에서 어떤 문제들에 부딪혔고 어떻게 해결해왔는지 알고 있고, 오늘날 컴퓨터 공학이 직면한 문제를 최전선에서 해결하고 있어요. 인터넷의 수많은 오픈 소스 소프트웨어들은 바로 아싸 개발자들의 기여로 만들어진 거에요. 비록 현실에서는 말을 더듬고 어버버거리지만, 온라인에서는 정말 수준 높은 토론을 해요. 아마 인싸 개발자들이 오픈 소스 레포지토리의 issues 탭에 들어간다면, 아싸 개발자들의 클래스가 다른 토론을 보고 냅다 도망갈거에요.


여러분은 인싸 개발자가 되고 싶나요? 아니면 아싸 개발자가 되고 싶나요?