내가 너무 조급하게 생각했었던 것 같다. 처음부터 agile이란 말, 드림팀이란 말을 듣고 입사했기 때문에 난 이미 팀이 WholeTeam으로 굴러가고 XP의 practice를 하나하나 적용해가는 그런 모습을 기대했었다. 하지만 기대와 현실은 차이가 있었다. 사실 처음부터 WholeTeam이 될 수 있는 팀은 없다. 시간이 필요한 게 어쩌면 당연한 것이고 어느날 갑자기 XP의 방법들에 동의할 수는 없을 것이다. 나 역시 XP를 쉽게 받아들인 게 아니었다. 퇴근 후 밤마다 권일이와 토론을 벌였고 그 토론의 결과들을 경험에서 검증해 내면서 XP를 조금씩 받아들이게 되었다. 그랬던 과정을 잠시 잊고 있었다. XP를 접하지 않았던 사람들, 접했더라도 깊이 공감하지 않았던 사람들이 XP 좋아하는 사람 몇 명 있다고 갑자기 XP로 갈 수는 없을 것이다. 지금 우리 팀을 XP적으로 만들고 싶다면 조금 더 BabyStep을 밟을 필요가 있다. 내가 만들고 싶은 것은 팀원 전체가 WholeTeam으로 기능하는 것이지만 시작은 단 두 명부터라도 Good Team이 되어야 한다. 어쩌면 XP에 대해 별로 호의적이지 않았던, 아니 오히려 적대적이었던 예전 NHN에서처럼 처음부터 다시 시작하는 마음으로 해야할 것 같다.
Grails는 내가 상상했던 것 이상이었다. 그 동안 Ruby on Rails를 비롯해서 Python의 Django, TurboGears 등 여러 가지 AgileWebDevelopmentFramework을 검토해보면서 Grails는 의도적으로 제외했다. 태생적인 AgileLanguage가 아니기 때문에 Python이나 Ruby에 비해 언어 자체의 agility는 떨어지면서 Java의 성능은 나오지 않는다고 봤기 때문이다. 이건 사실 아직까지 어느 정도는 사실이다. 여전히 Groovy는 라이브러리의 많은 부분을 Java에 의존해야 하기 때문에 라이브러리를 사용하는 것은 Groovy답지 않은 경우가 많다. 그리고 스크립트 자체의 퍼포먼스만 놓고 보면 아직 갈 길이 멀다. 그럼에도 불구하고 톰캣에 올려본 Grails의 퍼포먼스는 상상 이상이었다. 벤치마크 결과를 발표하고 싶은 기분이 들 정도로. 게다가 Ruby on Rails에 비해서 DB를 전혀 쳐다보지 않아도 된다는 점은 더 좋다. 아직 좀더 검토해야할 것은 있지만 리스트에 올려 놓기엔 부족함이 없다.
그나저나 JVM HotSpot은 정말 놀랍다. 정말 기술의 위대한 승리다.