진짜 아키텍트가 없는 EA 시장 잠재력을 알리는 글
이 글은 작년 6월 뉴스피드로 받는 기사 제목 Architects Don’t Decide만 보고 내가 중요하다 생각하는 어떤 것(모호한 것은 모호한 상태라고 명확하게 해두고 개발하는 노하우)과 비슷한 글이라 짐작하고 클릭한 행동에서 비롯한 글이다. 원문 기사는 보다 지루해서 그만뒀고, 결과적으로 한동안 잊고 살던 '아키텍트'에 대한 생각을 끄집어내게 만들었다.
지난 10년간 없던 엔터프라이즈 아키텍트
나는 아키텍트라는 말에 애증을 갖고 있다. 아키텍트란 말은 건축분야에선 자리 잡은 직무지만, 소프트웨어 분야에서는 역할에 대한 합의가 굳건하지 않다. 적어도 대한민국에선 그렇다. 내 18년 경력에서 아키텍트를 다루는 토론 내용은 빈약하기 짝이 없었다. 그 빈약한 내용 중에서 그나마도 화두가 되는 문제는 유치하게도 토론 상대를 비판하는 얇팍한 지적 정도다. 예를 들면, 기술적으로 꽤 인정받던 회사에 다니며, 스스로 주류(?) 아키텍트라 자부하던 선배님 하시는 말씀이 ‘아무나 아키텍트가 되겠다고 덤벼든다. 우리도 의사나 변호사처럼 아무나 아키텍트를 사칭하지 않게 자격증을 만들 필요가 있다.’고 말했다. 그런 천박한 생각을 가진 분을 6년 후엔가 대기업 CIO 추천을 부탁받았을 때 건너건너 이력서에서 다시 만나기도 했다.
또 한편에서는 선수급 개발자들이 자신들이 진정한 아키텍트라 주장하기도 한다. 그들은 본인보다 프로그래밍 실력이 낮은 선배들 혹은 개발을 하지 않는 선배들에 대해서 ‘입코딩’이라고 비하하거나 ‘코딩하는 아키텍트’라며 자신을 띄우곤 한다. 젊은 치기에 그럴 수 있다. 척박한 대한민국 현실에서 투지를 불사르려면 뭔가 묘책이 필요하긴 하다. (내가 30대를 보낸 방식도 대충 그런 식이었다.)
하지만, 아키텍트 정의를 떠나 전문가로써 사회적 가치(보상, 월급, 투자)를 받는다고 하면 그에 상응하는 사회적 가치를 생산해야 한다. 또한 그 생산물이 '듣는 이들이 알아듣거나 말거나 내뱉는 교육'이면 곤란하다. 사회적 가치라면 적어도 그 교육을 받은 이들이 코드를 더 많이 생산하거나 더 좋은 품질로 만들 수 있어야 한다. 또한, 고객의 진짜 요구사항은 안중에 없고 대강 파악한 후에 ‘내가 하고 싶은 방식으로 개발하고 보여주는 결과’도 곤란하다. 심지어 그런 코딩을 하는 사람이 코드를 아예 안 만드는 사람보다 사회적으로는 생산성이 떨어질 수도 있다. (그런 코드가 누적되면 없는 것보다 못하니까)
이제는 ‘아키텍트’라는 직함으로 일하고 있지는 않지만, 젊은 시절 많은 시간 내 마음을 사로잡았던 그 타이틀에 나는 여전히 애정을 갖고 있다. 그래서, 꿈과 지향이 같은 분들과 앞으로도 교류하고 싶다. 그런 점에서 짧게나마 이야기 주제를 던지고자 작년 6월 이 글 원문을 썼고, 다시 부활시키는 이 시점에서는 책도 한권 쓸까 한다. 암튼, 작년 6월 이후로 어떤 피드백도 받지 못했지만 또 한번 글을 올리고 여러분께 피드백을 요청합니다. :)
무릇 아키텍트라면...
첫째로 아키텍트는 자신이 관여하는 시스템에 대해서 사회적 가치와 비즈니스에 대해 충분한 소신이 있어야 한다. 쉽게 말해 돈을 벌 수 있는지, 환경(서비스 국가나 경제 상황 혹은 경쟁 상황)안에서 어떤 강점과 약점을 갖는지 등등에 대해서는 수준을 떠나 자기 목소리를 낼 수 있어야 한다. 경험이 부족하면, 비즈니스를 잘 아는 사용자에게 경청하고 또 경청해야 한다.
둘째로 앞의 이야기와 일맥한다 볼 수도 있으나 기술을 연마하면서 시장과 비즈니스도 이해한다. 말처럼 쉬운 일은 아니다. 그래서, 나와 다른 사고체계나 관심사를 갖는 사람에게 자신을 열어야 한다. 내 경험으로는 용기와 인내심, 그리고 겸손함을 쌓으면 (잃어버린) 경청 능력을 다소나마 복구할 수 있었다.
마지막으로 아키텍트는 손수 코딩을 하면 좋겠으나 그게 여의치 않다면 개발자에게 의존할 수 있어야 한다. 자기 목소리를 내세우기 보다는 지금 현장에서 프로그래밍을 하는 사람들의 생소리에 민감하게 귀기울여야 한다. 그게 안되면 그는 아키텍트로써 자격이 없다. 당장 직업을 바꿔야 한다.
EA가 없는 대한민국
나는 18년 경력 중에 스스로 EA(Enterprise Architect)라 주장하는 선배 중에서 EA라고 인정할 수 있는 사람을 단 한명도 만나지 못했다. 그나마 비슷하게 역량을 갖춘 이들을 봤으나 EA라고 보기 어려운 두 부류가 있었다. 한쪽은 서비스 아키텍트로 대규모 시스템을 설계할 수 있으나 엔터프라이즈 즉 기업 고객 대상 시장(은 너무도 피곤해서)에서 활동하지 않는 부류다. 구루급 개발자들이 여기에 해당한다. 두번째는 논리적 사고력과 시장 이해도가 상당해 경영자들과 소통이 가능한 엔지니어 출신 선배들이다. 이들의 맹점은 본인들이 개발하던 시절의 이해만 가지고 개발자들과 소통한다. '나도 다 해봤다'는 착각때문에 개발자들의 현실을 전혀 이해하지 못해 사실상 코드를 만드는데 별 기여는 못하는 부류다.
시간은 자연히 진화와 도태를 부른다. 그래서, EA가 없었어도 그런대로 한국 소프트웨어 산업은 앞으로 나아갔다. 굳이 폐해를 찾자면 중요한 의사결정을 하는 CIO 자리를 EA가 맡으면 좋은데 후보자가 없다는 사실이다. (한심하기 짝이 없게) '운영 비용 절감' 따위를 말하는 시대착오적인 엘리트 사업관리자가 CIO 되는 안티패턴을 불과 몇년 전까지만 해도 내눈으로 목격할 수 있었다. 그래서 EA 혹은 아키텍트가 되고픈 분들은 저와 소통을 하자고 이 글을 살려낸다.