PyCon JP 2015 keynote

68
Possibilities of Python 〜〜〜〜〜〜 〜〜〜〜〜〜 〜〜〜〜〜〜〜〜 〜〜〜〜〜〜〜〜〜〜 〜〜〜〜 PyCon JP 2015 Keynote 2015/10/11

Transcript of PyCon JP 2015 keynote

Page 1: PyCon JP 2015 keynote

Possibilities of Python〜エンジニア・コミュニティ     で組織は動き出す

株式会社ビープラウド佐藤治夫

PyCon JP 2015 Keynote 2015/10/11

Page 2: PyCon JP 2015 keynote

Question

Do you like Python ?

Page 3: PyCon JP 2015 keynote

自己紹介• 佐藤治夫( Sato Haruo )• Be Proud Inc. CEO

2006 年 5 月設立• Web の受託開発がメイン事業• connpass 企画・開発・運営• Python での開発実績: 70 プロジェクト以上( 2008/4 〜)• Python Professional Programming第 1 版 2012 年 3 月、第 2 版 2015 年 2 月 上梓

Page 4: PyCon JP 2015 keynote

PyConJP(APAC) と私

<個人>2011 年「 Python で働くということ」     パネルディスカッション登壇2012 年 一般枠参加2013 年 - 2015 年 Patron 枠 で参加

Page 5: PyCon JP 2015 keynote

PyCon JP 2014

©PyCon JP2014

Page 6: PyCon JP 2015 keynote

Theme

未来の会社( Future Compamy)  1. 組織 (Organization)  2. エンジニア (Engineer)  3. 組織とエンジニア (Organization and Engineer)

Python を会社のメイン言語に採用( 2008 年 4月)↓会社が大きく変化↓変化の中で見えて来たもの

エンジニアが活躍する未来の会社はどうあるべきか

Page 7: PyCon JP 2015 keynote

そもそも私が会社をつくった理由2006 年当時・当時の私 = プログラマ / フリーランス・世の中 ・企画 / 営業の人が組織で上 ・エンジニアの給料は低かった

エンジニアが活躍し、幸せになれる会社はどのような会社であろうか?↓「これからの時代の会社」を自分がつくろう

Page 8: PyCon JP 2015 keynote

Python の採用2006 年 5 月〜 2008 年 3 月 主に Java 、 perlで開発↓

2008 年 3 月、会社のメイン言語を Python に決定 ・会社のメンバー 4 人(役員含む) ・ Python による開発実績は 0 件

Page 9: PyCon JP 2015 keynote

Python を採用した理由「これからの時代の会社」を   つくっていくエンジニアを採用したい↓Java 、 PHP のエンジニアは大手会社との争いになる→ 資金量でかなわない↓Python は個人で使っている人は多いが、仕事で使っている人は当時少なかった↓Python で仕事ができるようにすれば、大手会社と競争にならず、良いエンジニアが来てくれるのではないか

Page 10: PyCon JP 2015 keynote

目をつけたのは技術よりも人

・仕事で使う機会が少ないのに自ら学ぶ技術への意欲・複数言語を知っていてバランス感覚が良い・自ら技術を選択する主体性

Page 11: PyCon JP 2015 keynote

Python を採用した結果2008 年 4 月、 Python を採用することをひっそりと Twitterで宣言↓2008 年 6 月、 Python コミュニティ (Python 温泉 ) から1人目のエンジニアが紹介される↓2008 年 2 人入社↓2009 年 10 人入社… その後も次々と入社

リーマンショック後にも関わらず開発案件が増加した

Page 12: PyCon JP 2015 keynote

Python の採用による会社方針の変化

選択と集中  PHP 、 Ruby 、 Java などの仕事は請けない方針↓信頼の輪を広げて行くパートナーとして任せてもらえる顧客との信頼づくり → 信頼される仕事をする → パートナーとして任せてもらえる顧客を紹介で広げて行く  ※良い顧客は良い顧客とつながっている → 70 件以上の Python 開発実績につながっていった  (営業マン 0 人)

Page 13: PyCon JP 2015 keynote

Python の採用によりどのような人たちが集まってきたか?

Page 14: PyCon JP 2015 keynote

変わったひとたち(Strange People)

ひとことでいうと… .

Page 15: PyCon JP 2015 keynote

変わったひとたちが集まって来た

休みやプライベートの時間を使ってPython の勉強をしたり、集まってプログラミングにいそしむ変わったひとたち…

愛すべき変わりもの( Geek 、 Nerd )

10 月の 3 連休にプログラマ同士で集まって「ウェーイ」とはしゃいでるひとたち…

Page 16: PyCon JP 2015 keynote

Q. 個性が強いエンジニアをどう束ねるの?度々、質問されること

Page 17: PyCon JP 2015 keynote

Answer 束ねない(制御不能のため)

→  彼らの声に耳を傾け、   彼らが望むように経営にしよう↑会社が変化していった

Page 18: PyCon JP 2015 keynote

会社に起こった変化

Page 19: PyCon JP 2015 keynote

会社の変化その 1

Python を好きな人たちが集まった↓会社自体が Python Community になった

Python

PyCon

FrameworkLibrary

Tool

BP

Page 20: PyCon JP 2015 keynote

会社が Python Community になった効果・同じことに共感し、感動できる  → 最新の情報が集まりやすい・ベースの価値観が一致している   (影響 )読みやすさ , シンプル , Zen of Python → 合意の形成、意思決定の迅速化・ Document を積極的に書こうという人が多い   (影響) Python標準ドキュメントの充実、 Sphinx  →暗黙値の共有化、形式知化の促進

Page 21: PyCon JP 2015 keynote

集まったひとたち・オープンソース を使い、恩恵をうけている・オープンソース・コミュニティ に参加している・オープンソースの Contributor として活動している↓会社も自然とオープンソース・コミュニティ型の会社運営に変わって行った

会社の変化その2

Page 22: PyCon JP 2015 keynote

変化の中で見えてきたもの

Page 23: PyCon JP 2015 keynote

これからの時代の会社とは?工業社会

(Industrial society)知識社会

(Knowledge society)

エンジニア( Engineer )( Knowledge Worker )

肉体労働者( Blue Worker )

エンジニア(ナレッジワーカー)が伸び伸びと創造性を発揮し価値を創り出せる会社

模索中

<現代社会>(Modern society )

エンジニアコミュニティ

Page 24: PyCon JP 2015 keynote

エンジニア・コミュニティ( Engineer Community)

SoftwareDocumentConnection of people etc…

Python

PyCon

FrameworkLibraryTool

Meetup

価値(Value)

Engineer

エンジニアが中心となり自発的に参加し、さまざまな価値を生み出しているコミュニティのこと。ここでは、主にオープンソースを中心としたコミュニティを指す。

Page 25: PyCon JP 2015 keynote

・組織( Organization)・エンジニア (Engineer)・組織とエンジニア (Organization and Engineer)

知識社会の会社(これからの時代の会社)  = エンジニア(ナレッジワーカー)が伸び伸びと  創造性を発揮し価値を創り出せる会社→ エンジニア・コミュニティにヒントがある

Page 26: PyCon JP 2015 keynote

・会社 = コミュニティである・オープンソース・コミュニティ型運営から学ぼう

組織運営

Page 27: PyCon JP 2015 keynote

同じことに共感し、感動することができる↓暗黙値が共有され、組織内の学習や情報共有につながる↓切磋琢磨の結果、会社が知識レベルがアップし、事業に活かせる↓ブランド化

会社 = コミュニティである

→ ジャンルは、事業に関係するものが効果的・雑談の積極的奨励・場作り(社内勉強会)

コミュニティ  = 同じことに興味をもった人たちの集まり

Page 28: PyCon JP 2015 keynote

1983 年 GNU Project1990 年代後半 Open Source Movement↓インターネットの発展↓ 多くのエンジニア が Open Source Project に参加↓Open Source Project の コミュニティ化↓組織運営・コミュニティ運営ノウハウを培う(エンジニア が創意工夫して培って来たノウハウ)→ エンジニアが活躍する、知識社会の会社にも有用

組織オープンソース・コミュニティ型運営から学ぼう

Page 29: PyCon JP 2015 keynote

・フラットな組織 (Flat Organization)

・コミュニティ評議会 (Communtiy Council)

・コミュニケーション (Commnucation)

組織オープンソース・コミュニティ型運営から学ぼう

Page 30: PyCon JP 2015 keynote

フラットな組織階層型か、フラット型か?

Page 31: PyCon JP 2015 keynote

階層型組織・組織を管理しやすい・官僚制 → 管理のためのルールがつくられる・情報が階層間で滞りやすい → 意思決定のスピードが落ちる・どうしても出世に目が行く → 社内に目が向き、社外に対する意識が薄れがち

メリット 管理しやすいので、うまく回れば、上のひとは楽デメリット 内発的動機、自尊心、好奇心が失われ、創造性が失われる

Page 32: PyCon JP 2015 keynote

フラット型組織 (Flat Organization)・目的ごとにチームをつくり、役割を決める・管理のためのルールは最低限  仕事をスムーズにするためのルール・情報が行き渡りやすい・出世を気にしなくて良い

メリット 価値を創り出すことに集中できるデメリット 組織の管理が難しい

Page 33: PyCon JP 2015 keynote

フラットな組織への取り組み(役職無し)・社長含む役員2人以外は役職無し・名刺には好きな肩書きを記載

←肩書き

Page 34: PyCon JP 2015 keynote

フラット型組織で大丈夫か?・セルフマネジメントと信頼関係を重視・管理する /管理されるの関係をつくらない

組織にかかるコストを削減できる・管理するコスト・管理されるコスト・コミュニケーションコスト→ 本来やるべき「価値を創り出す」ことに集中できる

Page 35: PyCon JP 2015 keynote

会社の経営 = コミュニティの運営経営者 = コミュニティ・リーダー( = 役割) 経営者は偉い人ではない ↓ 権力ではなく役割である ↓ リーダーにとって重要なこと  権力ではなく、良い人格をもつこと

Page 36: PyCon JP 2015 keynote

・フラットな組織 (Flat Organization)

・コミュニティ評議会 (Community Council)

・コミュニケーション (Communication)

組織オープンソース・コミュニティ型運営から学ぼう

Page 37: PyCon JP 2015 keynote

コミュニティ評議会( Community Council )・コミュニティ全体を運営する役割を持つグループ・課題がある場合に、評議会に提出される・課題について評議会で議論し、方針を決定する

「 Art of Community 」  Jono Bacon 著 / 渋川よしき 訳 より

Page 38: PyCon JP 2015 keynote

「 BP カイゼン」プロジェクト・会社を改善することを目的・月2回、1時間のミーティングを開催・社内誰でも参加できる・ redmine で課題管理。  課題がある場合、チケットを作成する・議事録は全社員に公開、オープンなプロセスで決定

Be Proud の取り組み

Page 39: PyCon JP 2015 keynote

「 BP カイゼン」から生まれた制度BPRD2.0 (BeProud Remote Day)

・週5日間、いつでもリモート勤務可能・制度を維持できるように、自分たちで制度を育てている (例) ・アンケートを取り、問題点を改善する ・ Slack や bot などのツールを活用し、  皆が気持ちよく仕事ができるような仕掛けづくり

Page 40: PyCon JP 2015 keynote

コミュニティ評議会を会社に置くメリット

・自分たちで良い制度を提案し、育てていくことができる → 当事者意識、参加意識が生まれる・決定プロセスがすべてオープンなので風通しがよい → 公正感が生まれる

Page 41: PyCon JP 2015 keynote

・フラットな組織( Flat Organization)

・コミュニティ評議会 (Community Council)

・コミュニケーション (Communication)

組織運営オープンソースコミュニティ型運営から学ぼう

Page 42: PyCon JP 2015 keynote

オープンソース・コミュニティ のコミュニケーション手段・ ML・ Issue Tracking System ( ITS )・チャット (Chat)・ビデオ通話 (Video Call)・オフラインミーティング (Offline Meeting)

時間、リソース、場所などの制約が多い・自然にさまざまな手段を使う・隙間時間で、成果を出している

Page 43: PyCon JP 2015 keynote

Remote work for communication

導入しているコミュニケーションツール

時間、リソース、場所などの制約が多いのは会社も同じ↓

リモートワークの体制づくりにより制約を超える・時間 → 通勤時間の削減→時間を捻出する・場所 / リソース → 家庭事情などで会社に来れない人も仕事ができる

etc….

Page 44: PyCon JP 2015 keynote

Q. リモートワークは チームでのクリエイティブな     仕事に向かないのでは?

Page 45: PyCon JP 2015 keynote

リモートワークでは段取りが重要つくるプロセスアイデアを生み出すプロセス

必ずしも全ての時間、顔をあわせて仕事をする必要はない

チームで一緒に仕事 個別に仕事

「アイデアを生み出すプロセス」と「つくるプロセス」 を区別する

Page 46: PyCon JP 2015 keynote

エンジニア・コミュニティ型組織運営のまとめ会社はコミュニティである・共感による社内知識共有→会社がレベルアップ・価値観の一致による意思決定の迅速化オープンソース・コミュニティ型運営から学ぼう・フラットな組織により価値・目的に集中できる・オープンな運営による当事者意識、参加意識、公正感の醸成・コミュニケーション手段の効率化により、       時間、リソース、場所の制約を超える

Page 47: PyCon JP 2015 keynote

・組織 (Organization)・エンジニア (Engineer) ← Next・組織とエンジニア (Organization and Engineer)

知識社会の会社(未来の会社)  = エンジニア(ナレッジワーカー)が伸び伸びと  創造性を発揮し価値を創り出せる会社→ エンジニア・コミュニティにヒントがある

Page 48: PyCon JP 2015 keynote

創造的なエンジニアになろう

OrganizationContributionEngineer

<創造的>Value

idea

創造的なエンジニア  = 主体的に価値を創り出そうとするエンジニアのこと

Page 49: PyCon JP 2015 keynote

Open Source Contributor

Community自発的に参加Engineer

価値に目を向け、アイデアを持っている・どのようなソフトウェアが世界に役立つのか?・どのような機能が便利なのか?

Value

・社会にもたらされる価値に目を向けている・アイデアを持っている・自発的に参加している

Page 50: PyCon JP 2015 keynote

・不安を乗り越え、主体的になる・技術に感動する習慣をもつ・価値を創り出すプロセスを学ぶ

創造的なエンジニアになる方法

Page 51: PyCon JP 2015 keynote

創造的なエンジニアになる方法

・不安を乗り越え、主体的になる・技術に感動する習慣をもつ・価値を創り出すプロセスを学ぶ

Page 52: PyCon JP 2015 keynote

創造性を失わせる最大の敵・不安  “できなかったらどうしよう”・恐怖  “できなかったらクビになる”

自分の外のことに怯え、主体性を失い、ディフェンシブな思考になる↓創造性を失う

Page 53: PyCon JP 2015 keynote

創造的なエンジニアになるために不安を乗り越える方法

その 1. 技術を身につけるその 2. 今を生きる

Page 54: PyCon JP 2015 keynote

その1:技術を身につける技術を身につける↓自信がつき、心が安定し、不安が少なくなる

創造的なエンジニアになるために不安を乗り越える方法

Page 55: PyCon JP 2015 keynote

その2:今を生きる完成したプログラム

プログラミング 不安恐怖<欲しい結果>

不安・恐怖をもとに頑張る(外発的動機)↓集中できず、結果がでない

「できなかったらどうしよう」納期、品質、満足度 etc…

創造的なエンジニアになるために不安を乗り越える方法

Page 56: PyCon JP 2015 keynote

完成したプログラム打ち込む /楽しむ一旦忘れる(頭の片隅に置く程度にする)

プログラミングそのものを楽しむ(内発的動機)↓集中できて、結果につながる(フロー状態)

プログラミング<欲しい結果>

創造的なエンジニアになるために不安を乗り越える方法その2:今を生きる

Page 57: PyCon JP 2015 keynote

・不安を乗り越え、主体的になる・技術に感動する習慣をもつ・価値を創り出すプロセスを学ぶ

創造的なエンジニアになる方法

Page 58: PyCon JP 2015 keynote

技術に感動する習慣をもつ(エンジニアを始めた当初)「おー、動いた!」「この技術は便利だ!」

↓ (経験を積んでくると)「動いて当たり前」「その技術は想定の範囲内。目新しくない」

Page 59: PyCon JP 2015 keynote

感動すると創造的になれる

感動が少ない人は好奇心が薄れ、記憶も弱まる。→ 結果、退化していく

感動 好奇心 探求心 創造記憶 アイデア

「感動する脳」 茂木 健一郎 著 より子供のような好奇心、あるいは冒険心があって初めて、新しいものを生み出す力が生まれてくるのです。

ジェフ・ベゾス( amazon.com創業者)

Page 60: PyCon JP 2015 keynote

・不安を乗り越え、主体的になる・技術に感動する・価値を創り出すプロセスを学ぶ

創造的なエンジニアになる方法

Page 61: PyCon JP 2015 keynote

価値を創り出すプロセスを学ぶ

・要求開発・ U 理論・リーンスタートアップ etc…

価値を創り出すプロセス・考え方、イノベーションについて体系的に学ぶ↓創造的視点が生まれる↓アイデアが生まれる

Page 62: PyCon JP 2015 keynote

・組織 (Organization)・エンジニア (Engineer)・組織とエンジニア (Organization and Engineer) ← Next

知識社会の会社(未来の会社)  = エンジニア(ナレッジワーカー)が伸び伸びと  創造性を発揮し価値を創り出せる会社→ エンジニア・コミュニティにヒントがある

Page 63: PyCon JP 2015 keynote

Open Source の Contributor のように仕事をしよう

会社貢献自分の強み(興味)を活かして役割を探し、貢献する

会社仕事労働契約で決められたことをする

役割 役割役割 役割

Page 64: PyCon JP 2015 keynote

役割に対して報酬を支払う

会社貢献

報酬 果たした役割に対して報酬を支払う重要:役職に対して支払うのではない

Page 65: PyCon JP 2015 keynote

シナジーで社会に価値を生み出す

会社貢献役割 役割役割 役割

強み

・自発的に参加したくなる組織づくり ・組織の目的 ・組織運営

価値創造エンジニア

<創造的>アイデア

<価値創造インフラ>

Synergy

Page 66: PyCon JP 2015 keynote

まとめ

組織運営 ・会社 = コミュニティである ・オープンソース・コミュニティ型運営から学ぼうエンジニア ・創造的なエンジニアになろうエンジニアと組織の関係 ・オープンソース・コントリビューターのように仕事をしよう ・エンジニアと会社はシナジーで価値を生み出す

知識社会の会社 = 「エンジニア・コミュニティ」→ エンジニア(ナレッジワーカー)が活躍する会社

Page 67: PyCon JP 2015 keynote

Python

PyCon

FrameworkLibraryTool

Meetup

Possibilities of Python

Value

「 Python が好き」という気持ちのもとに つながった Python Community が生みだしていく価値   = Possibitities of Python

SoftwareDocumentConnection of people etc…

→ これからの会社のありかたのヒントに

Page 68: PyCon JP 2015 keynote

Thank you for listening!

PyCon JP 2015 Keynote       Last Message

Possibility of Python

技術に感動しよう!ご清聴ありがとうございました