토요일, 12월 02, 2017

창의적 기술 조직의 구성 원리에 대한 몇 가지 생각 정리

기술 아이디어에 기반한 엔지니어 중심의 혁신을 이루려면 조직을 어떻게 구성해야 할까?
그 기반이 되는 생각들을 몇 가지 정리해본다.
블로그에서 여러 번 반복되었던 내용을 매우 간단히 요약해본 것이다.

1. 지식 <<< 아이디어



2. 개발 <<< 혁신


3. 개인 아이디어 <<< 팀 아이디어


4. 탈권위를 통해 지속적 혁신을 추구


  • 일상적으로 귀를 기울여 아이디어를 발전
  • 코칭을 통해 개인들을 성장시켜 더 큰 아이디어를 가능하게
  • 지시 중심의 체계를 무너뜨리고 자율 중심의 체계를 구축
  • 혁신은 크고 작은 아이디어의 총합에서 이루어짐

5. 리더가 추구할 문제는 Bigger but Solvable Question

  • 더 큰 문제를 찾아야
  • 더 근원적 사고를 활용
  • 충분한enough 시점에서 결정

6. 21세기 인재의 조건에 맞게 사고



  • 엄밀한 사고critical thinking
  • 소통communication
  • 협업collaboration
  • 창의creativity
  • 시스템 사고system thinking
  • 혁신적 문제 해결disruptive problem solving
  • 포용적 리더쉽inclusive leadership








일요일, 10월 15, 2017

크라우드 창의(Crowd Creativity)는 그룹의 지적 능력을 최대한 발휘할 수 있는 방법

사람의 연결을 통한 더 나은 아이디어
크라우드 창의는 개인의 창의가 아닌 여러 사람이 함께 하는 창의를 뜻한다.
사람의 뇌는 개인별로 서로 다른 세계를 가지도록 동작하고 직접적으로 다른 사람과 연결할 수 있는 방법은 알려지지 않았다.
혹시 텔레파시(정신 감응) 같은 게 가능하면 조금 달라질지 모르겠지만.

창의나 뇌에 대해 공부를 하다 보면 늘 아인슈타인과 같은 전문 분야의 뛰어난 천재 이야기가 나온다. 혹은 스티브 잡스와 같은 일반인들에게 가까운 천재 이야기도 나온다.

물론 엄청나게 뛰어난 사람들의 기여를 적극적으로 인정한다. 세상은 천재들에 의해 좀더 빠르게 변화해왔다.

하지만 개인의 천재성 역시 아이디어를 만들 때에는 다른 사람들의 기여가 필요한 경우가 많았음은 잘 알려져 있다.

여러 사람의 뇌가 연결될 수 없으므로 개인의 천재성 없이 순수한 그룹의 천재성이 있다고 생각하지 않는다.

다만, 더 나은 천재성을 위한 여러 사람들, 즉 그룹의 연결이 필요하다.

크라우드 창의는 전문 기술 영역에서 함께 최고의 아이디어를 만들어가는 방법을 이야기한다.

팀웍과 소통
얼마 전에 접한 글 중에 다음과 같은 Martine Rothblatt의 명언이 있었다.

Anything worthwhile in life requires teamwork, 인생에서 가치 있는 모든 것은 팀웍을 필요로 하고
and you cannot manage what you don’t understand. 이해하지 못하는 것은 관리할 수 없다

첫번째 문장은 팀웍의 중요성을 뜻하고 두번째 문장은 말 그대로 이해의 중요성을 뜻한다.
혼자서 하는 것보다 함께 하는 것이 더 가치 있는 일을 해낼 가능성을 높여주는데 이를 위해서는 더 많은 이해를 필요로 한다는 뜻이다.

여러 사람을 이해하는 것은 소통을 통해서만 이루어진다.
격이 없이 사람을 이해하고 하나하나 코칭할 수 있고 그룹을 통해 최선의 의사 결정을 할 수 있는 팀을 구축할 필요가 있다.

지적 능력의 단계
왜 이렇게 많은 소통이 필요할까?
더 많은 문제를 풀기 위해, 더 많은 지식을 이해하기 위해, 더 많은 사람들의 성장과 활동을 위해 필요하다.

경험적으로 사람의 지적 능력을 여섯 단계로 나눌 수 있다.



1단계. 지식의 습득
개인의 학습을 통해 이루어진다. 다른 사람이나 사건을 통해 검증되지 않은 상태이다. 이 지식은 대부분의 사람들이 이를 수 있는 능력이 된다.
창의를 새로운 가치를 만드는 아이디어라고 한다면 아직 창의라고 보기 어렵다.

2단계. 개념적 이해
습득된 지식이 체계를 갖추는 단계이다. 지식을 살아있도록 시스템적으로 재구성한 상태이다.
개인이 학습을 통해 얻은 지식을 좀더 많은 의문을 통해 빈 곳을 메우고 위치를 잡아둔 상태이다. 비로소 다른 사람들과 유연성을 가지면서 대화(소통)를 할 수 있다. 아직 개인의 영역을 넘은 검증은 되지 않은 상태이다.
역시 창의라고 보기는 어렵다.

3단계. 다중의 검증을 통한 다면적 이해
개인의 지식 체계를 다른 사람들이 함께 소통하며 검증한 단계이다.
개인이 보지 못한 면들이 포함되면서 체계가 좀더 완성되며, 오류가 줄어들고 가끔은 뒤집어지는 단계이다.
개인을 넘어 검증된 지식 체계로 발전한 단계라고 할 수 있다.
(참고로 아무리 검증을 하더라도 오류가 없는 단계는 가정하지 않는다.)

4단계. 문제의 인지
이 단계는 지식 체계를 만들면서 지식 체계와 관련된 중요한 문제를 발견하는 단계이다.
예전 블로그에서 critical thinking이라고 표현하였는데 critical path에 위치한 문제를 인지하는 단계이다.
지식 체계의 가장 중요한 부분을 파악하고 그 부분에 관련된 문제점이나 한계를 인지하는 과정이다. 이 과정에서 개선점에 대한 아이디어가 함께 떠오를 수 있다.
지식의 체계를 갖추는 과정이 문제를 인지하는 과정과 사실은 동시에 일어날 수 있지만 단순한 이해가 아니라 적극적인 문제 해결로 발전시킨다는 점에서 별도의 단계로 표현하였다.
2단계에서도 3단계에서도 4단계는 동시에 일어날 수 있다.
문제를 인지하는 것은 문제 해결(problem solving) 과정에서 가장 중요한 과정 중의 하나이다.
인지된 문제는 능력과 시간 그리고 여러 가지 협업 등을 통해서 해결할 수 있지만, 인지하지 못한 문제는 당연히 기약할 수 없다.
지적 조직에서는 특히 문제 인지가 중요성 측면에서 문제 해결 과정의 60%라고 말할 수 있다.

5단계. 문제 해결의 아이디어 착상
4단계에서 인지된 문제에 대한 해결의 아이디어를 떠올리는 단계이다.
여러 가지 창의에 대한 연구들이 이 단계에 국한하여 논의가 많이 되어 있다.
개인적으로는 문제를 충분히 시스템적으로 이해하고 있다면 문제를 해결하는 것은 여러 가지 방법과 경험, 천재성 등으로 다양한 아이디어를 떠올릴 수 있다고 생각한다.
이 단계는 개인으로 따지면 뇌의 보상이 있는 매우 즐거운 단계이다. 어려운 문제일수록 이른바 유레카 순간(Aha moment)처럼 아이디어가 떠오를 것이다.
이 단계부터는 창의(creativity 혹은 inventive idea)라고 할 수 있다.

6단계. 문제 해결 아이디어의 검증과 새로운 문제의 인지
5단계에서 떠오른 아이디어를 그룹의 토론을 통해 다음 수준으로 보완 발전시키는 단계이다.
보통 이러한 문제들은 예전 블로그에서 언급했던 wicked problem인 경우가 많다.
문제를 푸는 과정이 문제를 깊이있게 이해하는 과정이며 완전한 정답이란 없기 때문에 충분하다고 판단될 때까지 지속적으로 문제를 재인지하고 다시 푸는 과정을 반복할 필요가 있다.
아이디어의 검증은 개인이 여러 가지 실험을 통해서도 할 수 있는 부분이 있지만, 그룹의 토론은 더 나은 아이디어로 만들어내는 과정이다. 검증보다 더 나은 아이디어로 심화 발전, 전복시키는 과정이 포함된 단계라고 볼 수 있다.

그룹과 지적 능력의 단계
그룹 창의의 수준을 나타낼 때 어떤 단계의 지적 능력을 활용하는 조직인가를 기준으로 파악할 수 있다.

개인에 의존하는 조직은 동료들의 도움 없이 각 개인이 각이하게 1단계 중 6단계까지의 수준을 가지고 있으며 그 개인의 수준과 개인의 천재성에 의존하게 된다.
그룹 창의는 참여하는 개인의 수준 중 최고의 개인보다 항상 더 나은 문제 해결 능력을 갖추는 방법이다.
이 과정에서 더 많은 사람들의 참여를 위해 소통 능력과 코칭 능력이 내재화되고 그룹 의사결정의 팀웍이 발전할 필요가 있다.
코칭이란 지식에 대한 코칭 뿐만 아니라 지적 능력의 낮은 단계에 머무른 개인들을 더 높은 단계로 이끄는 것을 포함한다.

그룹 창의를 지향하는 조직은 앞 블로그에서 언급했듯이 포용적이어야 하며 각 개인을 존중하는 문화를 갖춰야 한다.

개인의 능력이 뛰어날수록 더 많은 문제를 풀 수 있고, 더 나은 아이디어를 낼 수 있는 것은 사실이다. 하지만 그룹 창의 능력을 갖춘 팀은 팀에 포함된 최고 개인의 최고 능력보다 더 큰 문제를 풀 수 있다.

연결의 중요성
나이를 먹을수록 사람들의 연결의 중요성을 새삼 깨닫게 된다.
가끔 이러한 연결이 개인의 혈연, 지연에 기반한 부조리로 나타나기도 하지만, 연결은 사람을 이해하고, 함께 할 수 있는 고리를 이야기한다. 삶은 유한하고 혼자서 할 수 있는 일은 많지 않다.

그룹 창의는 연결을 통해 함께 문제를 풀어가는 개인의 천재성들과 합리성, 지식들을 합쳐주는 방법이다.
소프트웨어는 끊임없는 문제 해결의 과정이다.
한국의 많은 기업들은 문제 해결에 최선의 방법인 그룹 창의를 구현하기에 너무 맞지 않는 봉건적 문화가 많이 남아있다. 하지만 스마트 혁명 이후 경험을 통해 새로운 문화와 목표 지향적 조직이 필요하다는 것이 많은 리더들에게 공감되고 있다.
뜻있는 기업들은 경직된 기업 문화를 버리고 세상의 많은 크고작은 문제를 제대로 해결하는 가치를 만드는 기업을 하나둘씩 만들고 있는 것 같다.
그런 기업들이 더 나은 가치를 만들기에 점점 더 주류가 될 수밖에 없을 것이다.

수요일, 9월 27, 2017

[Java] Java 9의 모듈 시스템에 대한 단상

우여곡절 끝에 자바 9에 jigsaw 즉, Java Platform Module System이 포함되어 출시되었다.

오래동안 사용되던 ClassLoader 기반의 OSGi와 다르게 Java Platform Module System은 JDK 내부적으로 module을 지원한다.

이를 위해 java.lang.ClassLoader 등의 클래스가 module 관련 선언에 있는 내용대로 접근성이 허용되는지를 내부적으로 체크하도록 JDK 코드가 수정되었다.

그 외에도 모듈에 선언된 것 외에는 타 모듈의 클래스를 액세스할 수가 없는데 Class.forName(...)을 통해 Class 객체는 구할 수 있지만 newInstance 등을 통해 인스턴스 객체를 만들려고 시도하는 순간 에러가 나게 된다.

이 점은 기존 코드와 심각하게 비호환되게 하는데 이를 완화하기 위해 java.util.ServiceLoader를 통해서 객체를 만들 수 있도록 하고 있다. (이게 가능하려면 해당 제공 모듈에서 provides를 선언해야만 한다.)

기존의 자바는 클래스로더의 자유도를 기반으로 모듈화를 저해하는 일들을 많이 하는 일들을 많이 해왔다. 특히 프레임웍들은 그러한 형태를 권장해왔다.
모듈에 대한 제어가 없고 이를 통해 더 많은 기능을 제공할 수 있으니까.
자바 9 이후부터는 이러한 모듈화를 저해하는 것들이 많이 줄어들 것 같다.

아니, 새로 작성되는 프로그램들은 자바 9과 쉽게 호환할 수 있도록 자바 코드를 모듈화하여 분리시키는 설계를 항상 선행하여야 할 것 같다.

OSGi는 표준 Java API를 기반으로 사용하므로 특별히 JPMS 기준의 타 모듈에 액세스하지 않는 한 잘 동작할 것이다.
현재로서는 JPMS는 같은 모듈의 멀티 버전을 지원하지 않는다. 그리고 동적 업데이트나 동적 unload도 지원하지 않는다.
엔터프라이즈 환경에서 동적 업데이트/unload는 여러 가지 상황에서 필요하다. 이 글에서 언급한 것처럼 IoT만 필요한 것은 아니다.
물론 클라우드 환경의 blue-green deployment가 이러한 동적 update/unload의 필요성을 줄여줄 수는 있다.
어쨌든 당분간 이 dynamic behavior는 여전히 커스텀 클래스로더나 클래스로더 기반 기술인 OSGi를 사용할 수밖에 없다.


참고자료
  • Java 9, OSGi and the Future of Modularity (Part 1)
  • The Top 10 Jigsaw and Java 9 Misconceptions Debunked
  • Getting Started with the Modules Project
  • Project Jigsaw: Complete!
    (참고) JDK 소스 코드 중 모듈 관련 변경 사항들


    • JSR 277 API, implementation, and configuration files
      • src/share/classes/java/module/*
      • src/share/classes/sun/module/*
      • src/share/lib/module/*
    • JSR 294 reflective API
      • src/share/classes/java/lang/reflect/Superpackage.java
      • src/share/classes/java/lang/Class.java
      • src/share/classes/java/lang/ClassLoader.java
      • src/share/classes/java/lang/annotation/ElementType.java
    • JSR 269 updates
      • src/share/classes/javax/lang/model/*
    • java launcher
      • src/share/bin/java.c

    금요일, 9월 22, 2017

    집단 창의의 기반을 만드는 포용적 리더쉽

    창의성과 포용적 태도
    창의성, 무언가 없던 걸 새로 만드는 것과 포용적인 태도가 어떤 관계가 있을까?

    창의성의 핵심은 창의적인 문제 해결로 그 과정의 가장 어려운 부분은 엄밀한 사고critical thinking에 있다고 언급한 바 있다.

    실제 문제를 해결하는 아이디어를 어떻게 구할 것인가에 대해서는 여러 가지 방법이 제시되고 있지만 개인별로 아하 현상을 어떻게 체험할 것인지는 개인별 발견이 중요할 수 있다고 생각한다. 여기에는 집요한 반복된 생각이 중요할 수 있고, 엄밀한 사고가 중요할 수도 있고, 몰입이 중요할 수도 있고, 혼자가 아닌 토론과 대화가 중요할 수도 있고, 또 깊은 사고 후의 뇌가 회복하는 멍한 순간이 중요할 수도 있다. 아마도 이 모든 것이 다 문제를 창의적으로 푸는 과정에 관여할 것이다.
    일례를 들어 끙끙 앓던 문제를 대화를 통해 공유하면서 스스로 문제를 해결하는 경우도 종종 발생한다. 대화 자체를 통해 답을 얻었다기보다는 대화를 하면서 자신의 머리 속에 있던 생각을 외부로 전달하는 과정에서 답을 얻는 경험이다.
    일화를 들자면 다음은 아인슈타인이 특수 상대성 이론의 아이디어를 얻은 계기이다. 친구인 미셸 베소에게 안 풀리는 문제를 토론하러 갔다가 갑자기 통찰을 얻었다.
    "이렇게 대화를 시작했다. '요즘 어려운 문제를 풀고 있는데, 오늘 자네와 이 문제를 두고 전투를 벌리려고 왔네. '  우리는 이 문제의 모든 측면들을 토론했다. 그런데 갑자기 이 문제의 해법이 어디에 있는지 이해하게 되었다. 다음 날 다시 친구에게 와서 인사도 하지 않고 말했다. '고맙네. 문제를 완전히 풀어버렸어.'" 
    그렇다면 왜 포용적인 태도를 얘기하려는 걸까.
    포용적인 태도는 문제 해결에 있어서 다양한 문제를 인지하고 또 다양한 측면들을 받아들일 수 있는 입력의 문제를 다룬다. 문제 해결 과정을 입력과 출력을 가진 블랙박스로 본다면 포용적 태도는 입력을 충분히 주기 위한 선결 조건이라고 볼 수 있다. 다양한 문제를 인지할 수 있고, 다른 이들의 해법을 참조할 수 있기 때문에 존중하면서 문제 설정부터 필요 정보들을 받아들이는 과정까지를 포용적 태도를 통해 개선할 수가 있다.

    물론 해법을 찾아내는 출력 과정은 포용적인 태도로 이룰 수 없는 부분이라고 본다. 그 부분은 앞에서 언급한 다양한 창의적 사고에 대한 논리들이 도움이 될 것이다.

    포용적 리더쉽의 특질
    포용적 태도는 다양한 의견을 존중하는 데서 출발한다.
    리더쉽이란 보통 방향을 정하고, 비전을 만들고, 사람들을 움직이는 것에 대한 이야기이지만 리더쉽을 실행하는 방식으로서 포용성이 중요함을 이야기하는 것이 바로 포용적 리더쉽이다.
    포용적 리더쉽은 포용적 마음가짐mindset과 포용적 행동behavior을 뜻한다.
    컨설팅 회사인 딜로이트에서 다양한 시장, 고객, 생각, 재능 등의 세상에 대응하기 위해 필요한 리더쉽의 덕목으로 포용적 리더쉽을 연구한 내용이 있다.
    이 글에 따르면 사람들은 다음과 같은 경우에 포용되고 있다고 느낀다고 한다.
    • 공정하게 대우받고 있다
    • 각자가 개인으로 존중되고, 평가받고 있다
    • 소속감을 느낀다
    • 의사 결정에 목소리를 낸다
    따라서 포용적 리더쉽은 다음 요소들을 가진다.
    • 사람들과 그룹을 각 개인으로서 공정하게 대우하기.
    • 개인을 그룹의 성원으로 인정하면서도 다양한 개개인의 고유성을 인정하고 평가
    • 현명한 아이디어의 수집과 의사결정에 다양한 그룹의 생각들을 최대한 활용하기
    이러한 리더쉽의 목표를 달성하기 위해 포용적 리더쉽은 다음 여섯 가지 주요 특성을 가지고 있다고 한다.
    1. 확약 commitment : 다양성을 포용하는 것을 확약한다. 각 성원의 가치를 최대한 활용하고 공정하게 대우하고, 이것이 높은 우선순위임을 이해한다. 이를 위해서 리더 스스로는 겸허함을 필요로 하고 정보를 공유하고 공감한다.
    2. 용기 courage : 겸손하면서도 용감해야 한다. 각 성원의 장점과 단점을 이해하고 개인의 한계를 극복할 수 있는 다른 이들의 역할을 적극 추구한다. 진정을 가지고 다양성과 포용을 대한다. 일괄적으로 대하는 조직의 태도와 실행에 대해 적극적으로 문제 제기를 하고 변화를 위해 노력한다.
    3. 편향 인지 cognizance of bias : 개인이 아닌 어떤 전형으로 편향되어 인지하는 경향을 극복하기 위해 노력한다. 편향으로 다른 사람을 평가하지 않도록 노력을 기울인다. 소통과 의사 결정 과정, 결과 등에서 공정하고 장점에 기반한 평가를 해야 공정함을 이룰 수 있다.
    4. 호기심 curiosity : 열린 마음을 가지고 타인들의 시각과 세상 경험에 대해 궁금해하고 모호함이나 불확실한 부분에 대해서는 인내를 가진다. 다양한 개인들로부터 호기심어린 질문을 던지고, 적극적으로 듣는 자세가 핵심 기술이다. 이 과정에서 생각의 흐름을 질식시키는 너무 빠른 결정은 절대 금물이다.
    5. 문화 이해력 culturally intelligent : 다양한 문화를 경험하고 이해한다. 다양한 문화적 배경을 가진 개인들을 이해하고 문화를 수용하기 위해 행동 방식을 고칠 필요도 있다.
    6. 협업적 자세 collaborative : 개인에게 권한을 주고 다양한 그룹의 생각들을 만들고 활용한다. 생각의 흐름을 통제하지 말고 팀에게 자율성을 주고 다양한 견해를 얻기 위해 다른 그룹과 소통할 것을 권한다. 모든 팀 성원이 목소리를 낼 수 있도록 스타일과 프로세스를 맞춰간다.
     The six signature traits of an inclusive leader


    포용성과 창의성
    살펴본 대로 포용성은 다양성을 인정하고 이로부터 아이디어를 끌어내는 방법이다. 리더는 늘 목표를 분명하게 가지는 사람이다. 포용성을 가진 조직 즉, 다양한 목소리를 듣고 자율적인 조직을 만들어내는 것은 지속적으로 창의를 만들어내는 조직이 되기 위한 매우 중요한 기반이라 할 수 있다.
    포용적 조직을 위한 코칭은 목표를 공유하고 각 저해 요소들을 여러 가지 방법으로 소통하면서 해결해나가는 방향으로 이루어질 수 있다.

    포용적 리더쉽과 포용적 조직은 개인의 창의적 문제 해결을 집단의 창의적 문제 해결로 발전시키는 중요한 매개체라고 할 수 있겠다.

    포용적 자세는 조직 뿐만아니라 개인의 창의를 위해서도 중요하다. 앞서 말한 대로 점점 더 다양성의 시대로 접어드는 세상을 살아가는 개인이 더 좋은 판단을 하기 위해서는 다양한 견해를 인정하는 데서 출발해야 한다.
    판단은 엄밀해야 하지만, 출발은 포용적이어야 한다. 개인이 포용적이 되려면 다른 개인이나 지식들의 결과물에 대해 인정과 존중을 하는 것이 필요하다. 물론 존중이 추종이거나 무비판적 수용이어서는 안된다. 출발점으로서 존중하되 엄밀한 사고를 거쳐서 변화된 새로운 것을 받아들여야 한다.
    이것은 개인의 학습 능력 개선과도 밀접한 관련이 있다.
    아무리 개인의 재능이 뛰어나더라도 학습 능력이 떨어지면 창의적 성과를 만들기가 어렵다.

    포용하는 개인의 엄밀한 사고가 필요한 시대이다.

    목요일, 8월 17, 2017

    엄밀한 사고(Critical Thinking)란 무엇일까

    미국에서는 21세기 교육에 가장 중요한 4가지 역량이 4C라고 한다.


    네 가지 C는 각각 엄밀한 사고(Critical thinking), 소통(Communication), 협업(Collaboration), 창의(Creativity)를 뜻한다.
    (critical thinking을 비판적 사고로 번역하는 경우가 많지만, 실제 문맥에서 보면 문제 해결을 위한 매우 중요한 영역의 사고를 뜻하는 엄밀한 사고가 좀더 적합한 표현이라고 판단된다.)

    한국 사회는 교육에서부터 기업까지 창의성이 떨어진다는 말을 많이 해왔다.

    굳이 군대와 같은 극단적인 사회 환경을 얘기하지 않더라도, 가족 같은 분위기라는 표현이 가부장적 위계를 인정한다는 뜻으로 통용되는 사회에서 중요한 의사결정 과정에 충분한 소통과 피드백이 주어지지 못하기 때문에 결과적으로는 창의적 아이디어가 부족하게 되고, 엄밀한 사고를 훈련하지 못하여 21세기에 적합한 인재로서 가치가 떨어진다는 표현이라고 볼 수 있다.

    창의적 사고는 결과적인 부분에 가까우므로 과정에서 필요한 엄밀한 사고가 한국의 교육이나 혁신을 지향하는 기업 환경에 가장 중요할 것이다.
    미국교육협회(NEA)에서는 엄밀한 사고를 어떻게 바라보고 있는지 옮겨본다.
    개인적으로는 혁신을 지향하는 SW 기업에서, 또 창의적으로 미래를 열어갈 자녀들을 위해서 코칭이나 교육의 방법을 고민하기 전에 꼭 읽어봐야 할 내용이라고 생각한다.

    다음 내용은 NEA에서 발간한 '글로벌 사회의 21세기 학생들을 준비하기 위한 네 가지 C 교육자 지침'에서 발췌 번역하였다.

    엄밀한 사고는 오랫동안 가치있는 기술로 사회적으로 인정받아왔다. 오늘날은 모든 학생들에게 필요하다. 기존에는 엄밀한 사고를 통한 문제 해결 능력이 주로 재능있는 학생들을 위해 필요한 영역이었다면 지금은 모든 학생에게 중대한 영역이라고 볼 수 있다. 


    엄밀한 사고의 중요성
    엄밀한 사고와 교육의 연결 고리는 명확하다. 사람은 생각을 잘 하지 않고 잘 학습할 수 없다.
    엄밀한 사고는 개인의 성공을 위해서도 역할을 하지만, 고등 교육을 위해서도 역할을 한다.
    게이츠 재단이 수행한 연구에서 오레곤 대학의 데이비드 T. 콘리 교수는 대학 과정의 성공을 결정하는 요인에서 지식 내용을 이해하는 것보다 다음 정신적 습관들-분석, 이해, 엄밀한 정확성, 문제 해결, 추론-이 더 중요할 수 있음을 발견했다.
    엄밀한 사고와 문제 해결을 수업 시간에 효율적으로 가르치는 것이 매우 중요하다.
    엄밀한 사고를 배우면 학생들은 한단계 높은 집중, 깊은 분석 능력, 사고 과정의 개선 등의 기술들을 갖추게 된다.

    현대인들은 근거들을 비교하고 경합하는 주장들을 평가하고, 현명한 결정을 내리기 위해 적극적으로 엄밀한 사고 능력을 갖춰야 한다. 21세기의 가족들은 유의미한 행동 계획을 수립하기 위해 재정, 건강, 시민, 심지어 레저 활동의 광대한 정보들을 조사하여야 한다. 전지구적 온난화와 같은 국제적인 문제에 대한 해법은 매우 고도화된 엄밀한 사고와 문제 해결 능력을 요구한다.
    기업 직원들은 일상 업무에서 고객들을 더 잘 응대하기 위해, 더 나은 제품을 개발하기 위해, 또 끊임없이 변화하는 글로벌 경제 환경 속에서 지속적으로 스스로를 성장시키기 위해 엄밀한 사고를 활용해야 한다. 경제학자인 프랭크 레비와 리차드 뮨데인은 자동화나 외주에 의해 밀려날 가능성이 가장 낮은 것들이 가장 바람직한 직업으로 떠오를 새로운 세상에서 전문가적인 사고와 복잡한 소통을 필요로 하는 직업이 그러한 범주에 속할 것이라고 얘기하였다. AMA 2010 핵심 기술 조사에 따르면 기업 임원 중 73.3 퍼센트가 엄밀한 사고를 직원 개발과 재능 관리, 후임 계획 등에 필요한 우선 순위에 포함시켰다.

    엄밀한 사고의 정의
    엄밀한 사고와 문제 해결은 여러 가지 방법으로 정의할 수 있지만 P21에서는 엄밀한 사고를 다음과 같이 정의한다.

    1. 효율적인 추론
      • 상황에 적합한 다양한 추론 방식(귀납적, 연역적 등)을 사용하는 것
    2. 시스템 사고의 활용
      • 복잡한 시스템에서 전체의 각 부분들이 서로 간에 어떻게 상호 작용하여 전체적인 결과물을 낳는지를 분석하는 것
    3. 판단력과 의사결정능력
      • 효율적으로 근거, 논점, 주장, 신념을 분석하고 평가하기
      • 주요한 대안적 관점을 분석하고 평가하기
      • 정보와 논점들을 종합하고 연결하기
      • 최선의 분석에 기반하여 정보를 해석하고 결론을 이끌어내기
      • 학습 경험과 과정을 비판적으로 반추하기
    4. 문제 해결
      • 익숙하지 않은 서로 다른 종류의 문제들을 관례적인 방법과 혁신적인 방법 모두로 풀어내기
      • 다양한 견해들을 분명히 하고 더 나은 해결책으로 이끄는 핵심 질문들을 찾아내고 질문하기
    다른 세 가지 C와의 관계
    엄밀한 사고의 중요성은 무엇보다 우선하지만 다른 C들과의 접점들도 중요하다. 엄밀한 사고를 이끄는 전문가들은 창의적인 사고 역량과의 연결을 강조한다.
    철학자 리차드 폴과 린다 엘더에 따르면 "건전한 사고는 상상력과 지적 기준 모두를 필요로 한다."
    어떤 이가 높은 수준의 사고를 진행한다는 것은 매우 엄밀하면서도 창의적으로 생각의 산물들을 만들고 평가하고 생성하고 판단한다는 뜻이다.
    엄밀한 사고는 소통이나 정보 이해력 같은 다른 역량에도 조사하고, 분석하고, 해석하고, 평가하는 데에 영향을 미친다.
    교육자 토마스 호어에 따르면 지능의 핵심 개념이 변경되었다고 한다. 우리는 문제를 풀기 위해 필요한 정보 자원에 접근하기 위해 더 이상 한 사람의 정신적 한계에 의존하지 않게 되었다.
    문제 해결은 항상 팀웍과 협동을 포함해왔다. 하지만 오늘날 오픈 소스 프로그램, 위키, 블로그, 다른 웹 2.0 기술들은 시공간이 다른 전혀 모르는 사람들끼리 협업하는 것도 가능하게 한다.
    21세기의 성공적인 문제 해결은 컴퓨터와 광대한 정보와 모호한 상황들과, 다양한 배경을 가진 다른 사람들과 효과적이면서 창의적으로 일하길 요구한다.

    월요일, 7월 31, 2017

    소프트웨어 팀을 코칭한다는 것

    연구소장으로 몸담아왔던 직장을 갑작스레 퇴직하게 되었다.

    이 사실을 알게 된 몇몇 연구원들이 찾아온다.
    왠지 뭉클하면서도 최악의 관리자였던 내가 조금은 나아졌나보다 하는 위안도 든다.

    개인적으로 10여년 간 소프트웨어 연구개발 관리자로서 몇 가지 시기를 거쳤다.

    제 1기는 관리자를 맡은 개발자.

    이때는 관리자라기보다는 개발자였다.
    정체성이 개발자인데 수십명을 관리해야 하는 관리자 역할이 주어진 것이다.
    당시에는 팀원들을 코칭한다거나 친밀감을 개선한다거나 하는 데 전혀 신경을 쓰지 않았다.
    조직 관리는 스스로의 목표에 들지도 못했던 것이다.
    늘 조직의 소프트웨어 미션에만 신경을 쓰고 팀원들의 성장이나 상태에는 전혀 신경을 쓸 줄 몰랐다. 팀원들의 코드에 문제가 있으면 내가 다시 짜버리지 하는 생각이 컸었고, 스스로가 메인 코더였고 실제 백만 LoC에 달하는 코드를 작성했던 시기였다.
    아마도 당시 팀원들은 황무지에 버려진 처지로 생각하면서 매니저가 너무 열심히 일을 하기 때문에 완전히 서로 다른 세계의 사람인 취급을 했을 것이다.
    나중에 얘기를 들어보니, 조금 걱정을 하기도 했다고... ㅠ_ㅠ

    제 2기는 코칭을 처음 해보는 난폭한 관리자

    이때는 관리가 필요하다는 점을 처음으로 인지했다. 가능하면 스스로 하는 코딩을 줄이려고 노력했고, 팀원들을 코칭하기 위해 노력했다.
    하지만, 수적으로나 경험적으로 절대적으로 부족한 팀원들을 데리고 소프트웨어 개발을 하는 매우 힘든 미션이기도 했지만, 더 중요하게는 아무런 경험없는 신입 팀원들을 하나씩 코칭하면서 가장 비효율적인 접근을 했다.
    신입 팀원들의 결과물들은 소프트웨어 경험이 이미 십년이 넘은 사람이 보기엔 너무 기본조차 되어 있지 않았고, 이를 극복하고 결과를 만들려는 당위성에 짓눌려 몹시 공격적으로 팀원들을 다그쳤다. 팀이 전체적으로 회사의 주목을 받지 못하는 상황이었기 때문에 팀원들의 상실감이 매우 컸다.
    결국 신입 팀원들은 한참의 시간이 지나서야 조금씩 나아졌고(원래 걸리는 시간만큼 지나서.. 결국 강압은 성장에 아무런 도움이 되지 않음을 뼈저리게 확인), 이 과정에서 몇몇 팀원들은 견디지 못하고 떨어져 나갔다.

    물론 이미 안정이 된 다른 팀들은 이렇게 대하진 않았다.

    제 3기는 엄청난 챌린지에 아무것도 하지 못한, 평가만 하는 관리자

    이때는 연구소가 새로 만들어지고 그 책임자로서 초기부터 엄청난 챌린지를 받았다.
    엄청난 프레셔에 거의 아무것도 하지 못하고, 그 당혹함이 그래도 팀원들에게 전달되던 시기였다.
    이때 느꼈던 가장 큰 문제는 스스로의 위치를 어떻게 서느냐 하는 것이었다.
    나는 주로 팀원들의 한 일들에 대한 냉혹한 평가를 하는 데 그쳤고, 기술적으로 벽에 부닥친 많은 팀원들에게 큰 도움을 주지 못했다. 냉혹함만 남았고 함께 벽을 깨쳐나가는 데는 매우 부족했다.

    마지막 4기는 코칭에 집중하는 관리자

    4기는 힘든 상황 속에서도 완전히 새로운 팀을 둘 동시에 빌드업해야 하는 미션이 있었다.
    앞의 시기를 거치면서 가장 중요한 깨달음은 관리자는 단순 평가자가 되어서는 안되고, 문제를 함께 풀어가는 사람이 되어야 한다는 것이었다.
    평가자가 아니라 늘 한 배를 타고, 그 키를 잡은 사람이 되는 것.
    팀원들이 방향을 아예 잡지 못하거나 벽에 부닥쳤을 때에는 직접 같이 연구하여 방향을 잡아주거나 벽을 뚫어줄 방향을 제시하는 것도 관리자가 당연히 해야 할 일로 포함하게 되었다.
    또 문제를 푸는 것은 팀원들의 성장을 기반삼아 함께 아이디어를 모아 풀어가야 한다는 것이었다.
    오류를 반복하지 않기 위해 팀원 한명 한명의 상태를 체크했다.
    신입 팀원들만으로 구성된 팀이 둘이나 있어서 이 팀들은 더욱 조심해서 빌드업을 했다.
    출발점은 신입이든 아니든 스스로의 진행 상황과 생각을 먼저 얘기하도록 하는 것이었다.
    맞고 틀리고를 떠나서 팀원의 의견을 유의미한 것으로 발전시켜나가도록 계속 의견을 보태주고, 방향이 잘못되지 않고 깊이를 찾을 수 있도록 팀장들과 얘기해갔다.
    이 과정에서 일부 팀원들은 너무 수준이 떨어지거나 (제대로 이해하지 못한 경우) 현학적인 말들을 옮기기만 하고 자신의 문제를 판단하지 못하는 경우가 종종 발생했다. 또 어디에나 있듯이 자아가 너무 강해서 주장만 강하고 타인의 의견을 듣지 못하는 경우는 함께 일해야 하는 특성이 있는 소프트웨어 조직에 매우 부적합하다.
    대부분은 코칭을 통해 개선이 되었지만 일부는 쉽게 적응하지 못했는데 너무 많은 시간을 뒤처지거나 문제가 있는 멤버들에게 낭비하지 않도록 적당한 수준에서 포기를 하고 추후 개선이 보이면 다시 미션을 보완해주는 방식으로 접근하였다.
    극단적인 예를 제외하고는 좋은 아이디어를 팀에서 구할 수 있었고 각 팀원들의 성장도 팀웍을 통해서 훨씬 더 빠르게 이루어짐을 확인할 수 있었다.
    (다양한 수준의 팀원들의 멘토링에 성공하고 자신감을 끌어낼 수 있었으며, 전체 팀으로서도 어느 정도 괜찮은 아이디어를 빌드해낼 수 있었다.)

    코칭과 학습 능력

    학습 능력이 중요한 시대이다.
    대부분의 기업은 Google이나 페이스북처럼 완성된 최고의 엔지니어를 쉽게 리크루트할 수 없다. 성원들의 잠재력을 이끌어내서 팀웍을 통해 더 나은 아이디어를 만들어가야 한다.
    관리자의 코칭 능력 없이는 이러한 성장은 매우 더디고 개인에 맡겨질 뿐이다.
    경험을 통해 보면 개인이 열심히 책을 읽어서 깨닫는 것은 매우 더디고 지식의 이해도도 떨어진다.

    여러 명의 아이디어가 합쳐지고 고쳐지는 숙의 과정을 통해서 하나의 제대로 된 아이디어를 간신히 만들 수 있다.

    흔히 목표를 설정하는 능력이 학습 능력을 결정하는 매우 중요한 능력이라고 한다.
    관리자들도 관리의 목표 설정이 중요한데 그 관리 목표 중 하나는 코칭이다.
    교육도 주요 관리 목표 중 하나이긴 하지만, 실제 업무를 통해서 이루어지는 코칭이 일반적으로 훨씬 더 팀원들의 기술적인 성장에 도움을 준다.

    창의성을 어떻게 만들 수 있을까 오래도록 고민해왔는데 여러 사람들의 아이디어를 이끌어내고 토론을 통해 조탁하고, 그 결론을 만드는 과정이 그 과정에서 얻어지는 새로운 기술의 짜릿함만큼이나 이 일을 지속하게 해주는 힘이 아닐까 싶다.

    창의를 만드는 팀을 향한 목표는 여러 경험들 속에서도 바뀌지 않을 중요한 목표이다.
    많은 깨달음을 준, 함께 했던 연구소 연구원들에게 진심으로 감사한다.
    모두 많은 성취를 이루길 바란다.

    코치들에게 당부

    마지막으로 소프트웨어와 같은 복잡한 지식 노동을 담당하는 기술 매니저들에게 당부하고 싶은 게 한 가지가 있다.
    소프트웨어 같은 문제엔 정답이 없다. 하나의 길만 있는 게 아니다. 엄청나게 많은 갈래길이 펼쳐질 수 있다.
    코칭을 할 때 하나는 다른 길이 있을 수 있음을 열어주도록 해야 한다.
    하지만, 항상 팀의 결정이란 최선의 답을 향해 컨센서스를 구할 수 있어야 한다.
    팀원들의 성과가 지지부진할 때 혹은 팀 전체가 지지부진할 때에는 팀을 탓하지 말고 코치가 스스로 그 답의 방향을 찾아줄 수도 있어야 한다.
    닫힌 길을 열어주고, 빛의 느낌이라도 전달해줄 수 있는 코치들이 되기 위해 "더 나은 기술, 더 나은 방법을 항상 찾을 수 있을 거라는 믿음"을 갖길 바란다.
    "We will find a way; we always have" (영화 Interstellar 중에서)
    팀을 만든다는 건 이 always의 경험을 만들어가는 과정일 것이다.

    P.S 뛰어난 소프트웨어 엔지니어가 되려면 다음을 꼭 실천해보길.

    1. 항상 먼저 머리 속에 그림을 그려본 후 묻고 듣고 공부하라
    2. 가장 뛰어난 사람의 판단 방식을 훔쳐라. 아키텍처는 책에서 알려주지 않는다.

    이력 타임라인

    일요일, 5월 28, 2017

    새로운 관리자 모델은 훌륭한 코칭 능력을 필요로 한다.

    "직원의 학습과 개발 70%는 일 자체에서 일어나지, 정형화된 교육 프로그램을 통해 일어나지 않는다."

    관리는 많은 부분 코칭의 스킬을 필요로 하게 되었고, 코칭의 출발점은 Listening이다.
    물론 관리자들도 코칭 및 관리 스킬을 개선하기 위해 코칭을 받을 필요가 있다.

    코칭이 이루어지지 않거나 코칭 스킬이 개선되지 않는 회사는 미래 지향적 회사가 되지 못할 것이다.
    시간을 이유로 좀처럼 사람들에게 귀기울이지 않는 기업은 결국 진보하지 못할 것이다.
    Listening을 통한 Coaching과 Insight가 개선되는 조직이 지속적인 경쟁에서 성공할 수 있다고 할까.
    그런 측면에서 위기는 listening을 징후로 하고 식별자로 리더의 코칭 능력 개선과 insight 능력을 들 수 있다.

    그런데 듣기만 하고 insight가 없어서 코칭을 못한다면 이러한 기업은 정체할 뿐, 성장을 이끌지 못할 것이다.
    코칭의 핵심은 멤버들과 코칭하는 관리자의 동반 성장이기 때문이고, 이를 통해 insight를 더 구체화하고 공유하는 것이기 때문이다.

    코칭과 insight를 잘하는 리더 후보를 다수 보유한 기업이 진화하는 미래 지향 기업이라고 볼 수 있다.
    코칭이 관리의 핵심

    관리자에 대해 코칭의 중요성을 지적한 아래 하바드 비즈니스 리뷰 글은 상당히 공감이 간다.

    HBR 기사 원문 : 좋은 코치가 아니면 훌륭한 관리자가 될 수 없다.

    아래는 기사를 대충 번역해본 것이다.

    좋은 코치가 아니면 훌륭한 관리자가 될 수 없다.

    2014년 7월 17일 Monique Valcour 글

    가장 우선적으로 생각해야 할 리더십 덕목은 '사람들이 직장에서 경험하는 가장 강력하게 동기 부여하는 조건은 개인적으로 의미있는 무언가에서 진전을 이루는 것'임을 아는 것입니다.
    당신이 누군가를 리딩하는 일을 하고 있다면 매일 해야 할 가장 중요한 일은 팀원들이 의미있는 일에서 진척을 경험하는 것을 것을 돕는 것입니다.

    그렇게 하려면 각 멤버의 동인을 이해하고 각자의 일과 조직의 미션 및 전략적 목표 간의 관계를 정립하고,시기 적절한 피드백을 제공하고, 모두 지속적으로 학습하고 성장할 수 있도록 도와야합니다. 개발과 관련하여 정기적인 의사 소통- 코칭 대화 -은 필수적입니다. 실제로 최근 연구에 따르면 , 매우 효율적인 관리자와 평범한 관리자를 구분하는 가장 중요한 관리 역량은 코칭이라고 합니다.

    이상하게도 대부분의 회사에서 코칭은 관리자에게 공식적으로 기대하는 것의 일부가 아닙니다. 직원과 취업 후보자가 직업의 대부분 다른 측면보다 학습과 경력 개발을 더 중요하게 여긴다는 것은 연구 결과에 의해서도 증명되지만, 많은 관리자는 코칭을 자신의 중요한 역할로 보지 않습니다. 관리자는 이러한 대화를 할 시간이 없다고 생각하며, 코칭 기술도 부족합니다. 그러나 직원의 학습과 개발의 70 %는 일 자체에서 일어나지, 정형화된 교육 프로그램을 통해 일어나지 않습니다. 따라서 관리자가 적극적으로 도움을 주지 않으면 직원 성장이 어려워집니다. 직원을 뽑고, 유지하는 것도 마찬가지입니다.

    그렇다면 오래 전에 학교를 다녀 결과에만 관심을 갖는 교육을 받은 관리자들도 직원들을 코칭할 수 있을까요? 물론입니다. 코칭은 코칭하는 관리자와 코칭 받는 직원 모두에게 더 나은 성과를 보여줄 것입니다. 다른 사람과의 공감적인 관계를 형성하여 그들이 관심있는 것을 성취하고 또 그들이 원하는 사람 이상이 되도록 돕는 것은 엄청난 경험입니다. 효과적이고 공감적인 코칭 대화는 긍정적인 에너지를 만들어냅니다. 수백 명의 경영 간부 학생들이 다른 사람들을 배우고 성장하도록 돕는 것이 관리자로서 가장 보람있는 경험 중 하나라고 말합니다.

    오늘부터 팀원들과의 정기적 인 코칭 대화를 통해 관리자로서 훨씬 더 효과적일 수 있으며 일을 더 즐길 수 있을 것입니다. 직원들을 지속적으로 학습하고 성장하도록 도우려는 마음을 먹었다면 다음은 그 출발점이 될 다섯 가지 핵심 팁입니다.

    1. 깊이있게 잘 들어야 합니다.
    마음 속에 이미 많은 것을 갖고 있는 사람에게 중요한 무언가를 전달하려고 할 때 어떤 느낌인지 생각해보십시오. 이 상황을 열린 마음과 감성으로 완전히 집중하여 적극적으로 당신이 전하려는 말을 들으려고 하는 사람과 소통하는 것과 대비해보기 바랍니다. 처음은 "이번 달에는 성장을 위해 무엇을 해야 할까?"와 같은 질문을 통해 코칭 대화를 시작할 수 있습니다. 단어 선택은 중요하지 않습니다. 다만, 마음을 비우고 충분한 주의를 기울여 팀원이 마음을 열고 창의적으로 생각할 수 있도록 이끌 수 있는 높은 수준의 연결을 만들려는 자세가 중요합니다.

    2. 질문만 하세요. 말을 하려 하면 안됩니다.
    관리자는 보통 지시 방식으로 공유하던 높은 수준의 전문 지식을 갖추고 있습니다. 이것은 담당하는 프로젝트의 진행 단계를 분명히 하거나 사람들이 조언을 요청했을 때는 문제가 없습니다. 그러나 코칭 대화에서는 답을 말하려는 충동을 억제하는 것이 필수적입니다. 귀하의 경로는 직원의 경로가 아닙니다. 대답이 아닌 개방형 질문은 코칭 도구입니다. 팀원들이 목표와 도전 과제를 구체화하고 자신의 답변을 찾도록 도와주는 것이 코칭의 성공적 역할입니다. 이것이 사람들이 우선 순위를 명확히하고 가장 관심을 끄는 것에 공감하고 행동에 착수할 전략을 고안하게 하는 방법입니다.

    3. 자기 개발에 관한 동질감을 만들고 유지하십시오.
    코치로서의 역할은 해답을 제공하는 것이 아니기 때문에, 팀 구성원의 자기 개발 목표와 전략을 지원하는 것이 중요합니다. 직원이 회사가 제공하는 서비스를 최종 사용자가 어떻게 경험하는지 더 깊이 이해하고 싶다고 말한 경우를 가정해 봅시다. 직원은 다음 주 사이트 방문시 구현 팀과 함께 최종 사용자와 인터뷰하고 인터뷰를 사용하여 회사의 인트라넷 기반 블로그에 대한 최종 사용자 환경에 관한 기사를 작성하자고 제안합니다. 이것은 직원과 회사 모두에게 가치가 있음이 분명합니다. 이제는 직원에게 개발 계획을 수행하는 데 필요한 승인, 공간 및 자원을 제공해야 합니다. 이 직원을 지원하는 것 외에도 직원 중심의 학습 및 개발의 사례로서 이 사례를 강조할 수 있습니다. 후속 조치는 신뢰를 쌓고 코칭을 효과적으로하는 데 중요합니다. 직원의 개발 계획을 지원할수록, 또 코칭이 더 효과적일수록, 직원의 신뢰가 증대되고 모든 직원의 참여가 늘어납니다. 선순환이 일어납니다.

    4. 긍정적 방향으로 나아가는 데 집중하십시오.
    종종 코칭 대화에서 직원은 자신의 좌절감을 자세하게 설명하는 데에만 갇힐 것입니다. "네트워크 구축에 더 많은 시간을 투자하고 싶지만 대역폭이 없습니다. 목표를 달성하기 위해 노력하는 데 모든 시간을 뺏기고 있습니다.  산업 세미나에 나가기를 정말로 좋아합니다.하지만 마감 시간보다 앞당길 수 있을 때까지 생각할 수는 없습니다. " 이러한 대화는 일시적인 답답함의 출구로는 역할을 하겠지만, 해결책은 내놓을 수 없습니다. 잠시 직원의 좌절감을 인지하는 시간을 가진 후, 이 직원에게 이 문제를 해결하고 극복할 방법에 대해 생각할 수 있도록 권해보십시오. "언급한 활동 중 어느 것이 당신의 지식을 쌓고 회사에 가치를 창출 할 수 있는 가장 큰 잠재력을 제공합니까?" "매주 2 시간을 할애해서 자기 개발 활동에 투여할 수 있습니까?" "주요 결과물을 충족시키는 능력을 향상시킬 수 있는 기술이나 관계가 어떤 게 있을까요?" "자기 개발 시간을 확보하고 보호하기 위해 팀내에서 보다 효율적으로 일하는 방법은 무엇이 있을까요?"

    5. 책임감을 심어 주십시오.
    코칭 대화 때의 직원과의 약속을 철저히 준수하는 것 외에도 직원의 개발 계획 수립 및 구현 측면에 대한 책임을 형성하는 것이 유용합니다. 책임감은 대화를 코칭하는 긍정적인 효과를 증가시키고 조직의 효율성에 대한 열쇠로 동작합니다. 직원이 자신의 발달 목표에 부합하는 교육 프로그램을 연구할 계획이라면 비용 및 근무 시간이 필요없는 적절한 프로그램을 파악하고이 정보를 일정 마감일까지 보고하도록 합니다. (물론, 이 내용들에 대해 적절한 시간 안에 조치를 취해줘야 합니다.)

    직원들 코칭이 어떤 결과를 가져올까요? 코칭은 당신과 팀원들간에 더 강한 유대감을 형성하고, 자신의 학습에 대한 소유권을 지원하며, 그들이 수행해야 할 기술을 개발하고 최대치를 내도록 도울 것입니다. 그리고 또 기분이 좋아집니다. 지난 달 상하이에서 열린 코칭 워크숍에서 한 간부는 그가 방금 참가했던 코칭 교육이 "번지 점프 같았다"고 말했습니다. 이 남자는 도착할 때 조금 굳어 있고 피곤해 보였는데, 저녁 내내 웃음을 멈추지 않는 것을 보고는 매우 기뻤습니다. 코칭 교육 때 눈에 띄게 활력을 얻은 참가자들은 그 혼자만이 아니었습니다.

    자, 어서 개인적으로 다가가서 번지 점프를 시도해보십시오. 직원의 성장에 촉매가 될 코칭 대화의 짜릿함을 좋아하게 될 것입니다.

    토요일, 1월 14, 2017

    소프트웨어 조직의 관리에 대한 단상

    관리라는 말은 정말 싫어하던 말이다.
    스스로 자기 일을 잘 하면 되지, 왜 관리가 필요할까?
    그런 생각이 강했다.

    나이가 들어 관리자의 역할을 맡게 되어서도 관리에 대해 충분히 고민하지 못했다.
    관리가 얼마나 중요한가에 대해 깨닫지 못했다.
    아마도 내가 속한 팀의 팀원들은 무관리(?)한 관리자에 어이없어했을 것이다.

    지금은 생각이 많이 바뀌었다.

    "혼자서도 잘해야 하겠지만 함께 해야 무엇이든 이룰 수 있다"

    혼자서도 잘해야 하는 게 바뀌는 건 아니겠지만, 혼자만의 힘으로 이룰 수 있는 건 거의 없다.
    함께 해야 하는 것이라면 모두 관리의 영역에 포함된다.

    뒤늦게 관리에 대해 생각을 하게 되었다.
    수많은 시행착오를 뒤늦게 하게 된 것이다.

    관리라는 말을 싫어하는 이유는 관리라는 말 자체가 정태적인 관료 조직을 떠올리기 때문이다. 특히 한국의 대기업 문화에서 보이는 관리자들은 전문성 없는 단순 관리자들이다.
    자신의 역할이 기업 내 정치랄까 줄서기가 핵심인 가부장적인 존재들이다.

    목적이 분명한 조직은 목적에 맞는 관리 체계를 가져야 한다.

    관리자로서 가장 큰 실패는 관리자가 없어도 된다는 생각이다.
    예를 들어, 구글과 같은 인재들이 모인 조직은 당연히 관리를 싫어한다.
    스스로 일을 잘하는 사람들이 굳이 관리를 받으면서 일하려고 하지 않기 때문이다.

    하지만, 구글도 목적을 가진 기업이고 이에 따라 사람들을 조직화해야 하기 때문에 관리가 없을 수가 없다.
    불필요한 형식에 얽매이지 않고 좀더 목적에 필요한 부분으로 관리를 최소화하려고 노력을 할 뿐이다.

    관리의 출발점은 목표 설정(goal setting)이라고 생각한다.
    목적 조직에서 관리자들은 틀에 박힌 형식을 중시해서는 안된다.
    항상 뚜렷한 목적을 가져야 한다.
    목적에 따라 여러 가지 시도를 하면 된다.
    물론 경험과 조언 등이 있으면 더 나은 시도를 할 수 있고 시행착오를 줄일 수 있겠지만.

    목적 조직은 결과만으로 평가해서는 안된다.
    시행 착오로 결과가 나쁘게 나오더라도 목적이 뚜렷한 행위는 개선 가능하고, 많은 것을 학습하기 때문이다.

    두번째는 관리에 정답이 있지 않다는 것이다.
    목표에 따라 수많은 길들이 있을 수 있다.
    흔히 소프트웨어를 문제 해결에 비유한다.
    목표 설정은 관리와 관련된 문제 인지 과정이며, 관리 행위들은 문제 해결 과정이라고 볼 수 있다.
    소프트웨어와 같은 복잡한 문제를 다룰 때는 항상 고정된 정답이 있지 않다.
    이런 문제를 흔히 악제(wicked problem)이라고 부른다.
    모든 악제에는 생각하지 못한 더 현명한 길이 있다고 생각해야 하며, 관리의 문제도 다른 악제들과 마찬가지로 항상 더 현명한 길이 있다.

    따라서, 더 많은 생각과 토론들이 더 나은 길을 찾는 데 도움이 된다.

    세번째는 소프트웨어 개발 조직에서 관리자는 스스로 전문성을 가져야 한다.
    항상 행위의 목적을 생각해야 하고 그에 따라 판단을 내리고 행동해야 한다.

    가끔 관리자의 겉멋을 (품격?) 찾는 사람들을 볼 때가 있다.

    뭐.. 그 시간이 어떤 문제를 풀 시간이 아니라 여유를 즐기는 시간이었다면 충분히 의미 있겠지만...

    어쨌거나, 관리의 문제는 매우 어려운 문제이다.
    스스로도 익숙하지 않고 끊임없이 도전 받는 주제이다. (관리자로서의 평가는 낙제에 가까울듯)

    소프트웨어에서 관리는 사람들을 다루면서도 기술적인 해결을 찾는 과정이기 때문에 더욱 어려움이 많은 것 같다.

    사람들과 좀더 많은 아이디어를 주고 받으면서도 동기 부여를 하고, 더 많은 생각을 하게 하고, 더 깊은 토론을 더 끈기있게 해야 하고, 더 나은 결정을 내려야 한다.

    목표를 뚜렷이 하고 단순화하여 공유하되, 끊임없이 방법을 개선해나갈 수밖에 없는 것 같다.
    아이디어를 함께할 사람들과 좀더 편해져야 하는 문제이기도 하고.