본문 바로가기

개발조직

외국 개발자들이 보기에 군대 같은 한국 회사 “A기업은 좀비월드 같다. 직원들이 아무 생각 없이 회사를 떠돈다.”“B기업 직원들은 불만을 말하지 않는다. 근무 내내 감옥에 있는 느낌이다.”“C기업은 군대다. 상사가 말하면 무조건 따라야 한다. 이유를 묻거나 질문할 수도 없다.” 얼마 전 모 신문 기사에 나온 외국인들이 한국의 기업들에 대해 느낀 점을 얘기한 것이다. 국내에서 소프트웨어 개발에 한계를 느낀 대기업들은 해외에 여러 형태의 소프트웨어 조직을 설립하고 현지의 외국인 개발자를 채용하고 있다. 국내 개발자들의 소프트웨어 개발 실력이 떨어져서 소프트웨어를 제대로 개발하지 못했다고 착각하고 있는 것이 아닌가 생각된다. 그런데 우리나라 회사들의 조직 문화와 분위기는 외국에도 이미 소문이 많이 났다. 우리나라 기업문화 자체가 나쁘다고 볼 수는 없으나.. 더보기
스타트업을 위한 조직론 스타트업의 젊은 경영자 중에는 관리 경험이 부족하여 조직관리에 취약한 사람이 많다. 반대로 관리 경험이 많거나 특히 조직관리가 아주 철저한 대기업 출신들은 종종 스타트업에 걸맞지 않은 부담스런 관리 기법을 적용하여 효율성을 떨어뜨리곤 한다.그럼 스타트업은 어떤 조직관리가 적합할까?일반 기업에 적합한 조직관리 기법은 소프트웨어 회사와 맞지 않는다. 특히 작은 조직에는 적합하지 않다. 반대로 취미생활 하듯 조직을 관리하면 평생 구멍가게를 못 벗어난다. 전혀 준비가 안된 상태에서 비즈니스가 잘되면 조직은 커지고 회사가 급속도로 비효율적으로 변하게 마련이다. 비즈니스는 잘 되는데 이런 문제로 어려워진 회사를 많이들 알고 있을 것이다.일반적인 소프트웨어 조직도 마찬가지지만 효율적인 소프트웨어 개발을 위해서는 특히.. 더보기
소프트웨어 회사에서의 관리란? 소프트웨어 회사가 경쟁력을 가지려면 전통적인 관리와는 좀 다른 관리 방법이 필요하다. 첫째, 상하관계 탈피이다. 전통적으로 관리자는 윗사람이고 팀원들은 관리자의 지시를 따르고 관리자가 거의 모든 것의 결정권을 가지고 있다. 하지만 소프트웨어 회사에서 관리자는 기술적인 결정을 할 수 없다. 개발자 출신이라고 기술적인 결정도 하려 하는 경우도 있지만, 기술적인 결정은 개발자의 몫이다. 그리고 전사적인 중요한 기술적인 결정은 CTO나 회사의 최고 개발자들이 하는 것이다. 관리자는 위에서 지시하는 사람이 아니고 개발자들이 개발에 매진할 수 있도록 회의, 보고서 작성, 보고, 의견 조정 등 힘든 일을 도와주는 역할을 해야 한다. 물론 경험이 많은 사람들이 잘할 수 있는 일이기 때문에 평균 개발자보다는 나이가 더 .. 더보기
일을 잘하는 조직 vs. 못하는 조직 일 잘하는 조직 일을 잘 못하는 조직 겉에서 보기에 여유있게 일한다. 항상 부산하고 바쁘다. 위임이 잘 되어 있어서 알아서 처리하는 업무가 많다. 사소한 이슈도 모두 보고하고 처리를 해야 한다. 효과적인 업무 프로세스가 있다.프로세스가 없거나 비효율적이다. 꼭 필요한 이슈만 모여서 회의를 한다. 모든 결정을 회의를 통해서 결정해야 한다. 회의 시간이 짧고 회의도 적다. 회의가 너무 많아서 일할 시간이 없다. 회의 Agenda에 집중하여 효율적으로 결정한다. 회의 시간은 길지만 결론이 없다. 회의 후 항상 회의록을 기록하고 후속처리가 잘된다. 회의 후에도 후속처리에 대한 관리가 잘 안된다. 커뮤니케이션 시스템이 잘 구축되어 있다. 구두와 메일에 의존한 커뮤니케이션으로 관리가 안된다. 시스템을 통해서 누가 .. 더보기
허울뿐인 소프트웨어 개발자 경력 보장 과거 필자가 근무했던 회사에서는 “백발을 휘날리며 개발을 할 수 있는 개발자”를 공개 채용한 적이 있다. 그 당시 수많은 경력직 개발자들이 지원을 했고 개발자로서 경력을 보장받고자 하는 열망을 충분히 알 수 있었다. 필자의 회사는 Technical career path를 확실하게 보장을 하고 있었다. 따라서 관리를 하지 않고 개발자로서 꾸준히 성장할 수 있고 그렇게 성장할 수 있도록 기업 문화와 제도가 뒷받침이 되어 있었다. 또한 대우도 관리자에 절대 뒤지지 않았다. 하지만 필자가 컨설팅을 시작한 이후 접한 수많은 회사들 중에서 제대로 개발자 경력을 보장해주는 곳은 없었다. 가장 큰 이유는 경영자의 이해 부족을 꼽을 수 있다. 개발자 경력 보장에 대한 각 기업들의 현황을 먼저 살펴보면 해결책도 보일 것이.. 더보기
전문가 vs. 책임자 우리나라 조직문화는 전문가보다 책임자를 선호한다. 조직의 장이 책임을 지고 모든 일을 알아서 하는 것이다. 상명하복 관계 위주다. 경영자가 SW개발에 대해서는 잘 모르는 경우 누구 한명이 책임지고 개발해줬으면 하는 생각을 하기 쉽다. 전문가를 우대하는 조직에서 조직의 장은 전문가들이 일을 잘 할 수 있도록 도와주는 관계이다. 전문가가 시간이 흐르고 승진을 한다고 해서 관리자가 되지 않는다. 최고 경영층도 사장, 전무, 상무 등의 체제에서, CEO, CTO, CFO, CIO, COO 등의 전문가 체제가 일반화되었다. 일단 용어는 다 익숙한 것으로 보아서 많은 회사에서 전문가 시스템을 시도는 하고 있는 것이다. 물론 형식적으로 그렇게 이름만 따서 하는 경우가 허다하기는 하다. 공무원들도 외국에서는 한 분야에.. 더보기
관리자가 이런 일까지? 우리나라 SW 조직에서 관리자란 위치는 참 애매한 위치다. 물론 전문 관리자라면 얘기가 다르지만 왕년에 SW를 조금 개발해 본 경우가 애매하다. 개발팀에서 가장 경험이 많은 SW 개발자들이 주로 팀장이 되곤 한다. 이 경우와는 약간 다른 얘기다. 이런 개발 팀장은 SW 개발자에 더 가깝고 관리업무는 부수적인 일이다. 물론 개발도 한다. 하지만 개발에서 손을 완전히 땐 관리자의 경우는 점점 개발과 멀어지게 된다. 이렇게 1~2년만 지나도 섣불리 기술에 대해서 얘기하기가 어려워 진다. 이 외에도 개발 경험은 거의 없는 관리자도 있다. 반대로 이런 관리자도 SW 조직 관리를 2~3년 하게 되면 풍월을 읊게 된다. 개발에 대한 왠만한 용어도 알게 되고 어떻게 돌아가는지 대충 파악이 된다. 그렇다고 기술을 아는 .. 더보기
QA팀은 없다고 생각하라 저는 여러 소프트웨어 회사를 접할 기회가 많기 때문에 우리나라의 소프트웨어 현실을 다양하게 보게 됩니다. 많은 회사들이 전문 QA팀없이 개발자가 테스트를 하곤합니다. 제가 접한 소프트웨어 회사들의 대략 70% 이상이 전문화된 QA가 없었습니다. 심지어는 대기업에 속한 회사들도 QA팀 없이 개발자나 팀장이 테스트를 하는 경우도 있습니다. 그 이유야 제가 이전에 여러번 언급했듯이 주먹구구식 개발이나 형식에 치우친 프로세스를 채용한 회사들은 개발자가 아니면 그 기능을 속속들이 잘 모르기 때문에 개발자나 팀장이 테스트를 할 수 밖에 없고 누가 좀 도와준다고 하더라도 Random 테스틑 밖에 수행을 하지 못합니다. 이 이슈는 차치하고 소수의 QA팀을 가지고 있는 회사들에서는 QA테스트가 제대로 이루어지고 있는지 .. 더보기
개발팀장과 프로젝트관리자(PM) 오랫만에 찾아뵙니다. 요즘 워낙 바쁜 날을 보내고 있다는 핑계로 블로그 포스트를 자주 못하고 있습니다. 다시 힘을 내서 시작하려고 합니다. 최근에 컨설팅에 많은 시간을 보내고 있는데, 컨설팅을 하면서 주로 겪게 되는 현실적인 얘기 위주로 적어볼까 합니다. 그 중에서 가장 흔히 보게 되는 것이 개발팀장의 애매한 포지션입니다. 당신이 개발자라면 또는 개발팀장이라면 어떠한 일을 하고 있는지 잘 살펴 보시기 바랍니다. 제가 여러 회사를 컨설팅하면서 만나본 개발팀장의 역할은 천차만별이었습니다. 공통점은 있습니다. 개발자로서 오랫동안 일을 하다가 개발팀장이 되었다는 것입니다. 하지만 현재 하고 있는 일들은 천차 만별입니다. 어떤 개발팀장은 여전히 코딩에 90% 매진하고 있고, 어떤 사람은 프로젝트 관리만 하고, 어.. 더보기
개발자의 파워는 어디에서 오는가? 뛰어난 개발자를 관리자로 써먹는 것 같이 개발조직에 비효율적인 일은 별로 없습니다. 하지만 현실에서는 이런 일이 흔히 벌어지고 있습니다. 실제로 저도 여러 회사에서 자주 접하고 있습니다. 여러가지 이유가 있을 수 있겠지만 주요 이유는 회사에서 개발자로서 꾸준히 성장할 수 있는 Career Path를 보장하기 않기 때문입니다. 회사에서 파워를 가지려면 팀장이 되어야 하고, 그래야 개발자들을 거느리며 힘을 행사할 수 있게 됩니다. 하지만 일단 팀장이 되고나면 개발에 전념할 시간은 점점 줄어들게 됩니다. 그렇다고 개발을 포기하고 관리만 하기에는 관리할 일의 양도 얼마 되지 않고, 파워가 줄어들게 될 까봐 걱정을 하게 됩니다. 흔히들 개발자는 행정적인 파워가 없어도 기술력에 따른 카르스마에서 파워가 생긴다고 하.. 더보기