機雷がなんだ! 全速前進!

SEというかプログラマというか、日々のエンジニア生活の中で体験したことなどを中心に書き残しています。

スポーツと円卓のちから

月イチで開催している職場フットサルの打ち上げで思ったことのメモです。

 

普段の職場では決して十分なコミュニケーションが取れているとは言えないのだけれど、その日はやけにみんなで楽しく会話出来たなーと思ったので、なんとなくふりかえりをしてみることにしました。

 

いつもと何が違ったんだろうか?

これかなぁ…と感じたのは次のことでした。

 

  • 普段の職場から離れて非日常を感じたこと
  • スポーツで体を動かしたこと
  • 円卓で飲み食いしながら会話したこと

 

普段の職場から離れることで、非日常を演出できたのが良かったと思う。いつものなんとなくどんよりシ~ンとした雰囲気から開放されたように思います。普段PCに向かって作業をする時間が長いので、スポーツで体を動かして汗をかくことが、肉体的にも精神的にもデトックス効果があって良かったのかな。珍プレーも好プレーもあって、みんな自然と笑顔になる瞬間もあったし(^^)

 

そして、円卓で飲み食いしたこと。これが意外と効果的なんじゃなかったのかな、と思いました。居酒屋などの四角い長机だと対面の人の顔はよく見えますが、それ以外は、意識していないとなかなか見れません。反して円卓では、ほとんどの人の顔が満遍なくみえますし、特定の人というよりは、基本的にみんなと話すという意識になりやすと思います。

 

これは、普段の現場のミーティングなんかを思い返しても、大事なこのなんじゃないかなって思います。問題を解決する場合は、人ではなく問題と向き合うために、物理的なレイアウトを、そのような配置にするとより効果的だという話を「Amazon.co.jp: これだけ! KPT: 天野 勝: 本」でも言っています。物理的な配置を根本的に変えるのは難しいと思いますが、ミーティングや飲み会などなど、ちょっとした工夫でより効果的なコミュニケーションがとれるならば、これは是非やるべきでは?って思いました。

 

てことで、次回も楽しみです。

また、新しい気付きがあるといいな

 

 

アジャイラーは魔法使いなのか?

アジャイラーは魔法使いなのか?

 

奇跡のマネージメントを前提とした開発をしている人から見ると、リーンやアジャイルで開発している人をつい別世界の人と考えてしまうことがあるように思う。あの人達は、恵まれており、特別で、特殊な能力を持っているので、そんなことができるのだ…と。

 

本やネットの記事を見ているだけだと、すごいなー、いいなー、って憧れつつも、どうせ雲の上の人だからなんだと考えがちで、軽い思いつきで動いても、確たる信念みたいなものもないので、すぐに頓挫して止めてしまう。そして、これまでと殆ど変わらない、いつもの毎日を過ごすことになる。

 

果たして本当にそうか?

アジャイラーは魔法使いなのか?

 

社外の勉強会で、いろいろな現場の人と話をすると、それは少し違うということに気づく。確かに、先進的な取り組みをしている人もいるのだけれど、同じように悩み、困り、失敗している人も沢山いることを知る。そして、先進的な人も、最初から先進的だった訳ではないし、失敗している人も、その失敗を糧にして前進しようとしていることなんかも知ったりする。何より、前向きに、地道に挑戦し続けている人達が、確たる権力や役職を持っている訳でもない、自分と同じいちエンジニアだったりすることも多くて、決して魔法使いなんかではないことを思い知る。それどころか、限られたリソース、時間の中で、より価値のあるソフトウェアをつくるためにどうしたら良いかを、奇跡のマネージメントなんか当てにせず、自分の頭で徹底的に考え抜いて実践している徹底したリアリストだったりする。

 

社外の勉強会へちょいちょい顔を出すようになって、だいたい1年半くらい経つ。そして、その時々で新しい知識を仕入れたりしている。そもそも勉強会へ行く動機は先ずはそこにある(あった)のだから当たり前なのだけれど。ただ、最近それ以上に価値があると思えるのは、ディスカッションなどで同じグループになった人達のそれぞれの現場の経験談を聞けることなんだと思う。本人から直に聞いた話というのは、本やネットの記事を読むのとは違う。失敗談ですら勇気をもらえる。私も自分の現場の悩みや失敗を相談することもある。もちろん藁にもすがる思いでそうしているのだけれど、そんな現場の悩みや失敗談ですら、時として人に気付きや勇気を与えることもあるんだよな・・と思う。

 

最近は、以前と比べて社内で何かしらの活動をするときに、共にトライできる仲間が増えてきたけれど、たまに社外の勉強会で色んな現場の人と話す度に、何かしら新しい気付きをもらえている気がする。最近ではTwitterFacebookなどの便利なSNSもあるので、うまく使えば普段のそれぞれの現場のトライを簡単に知ることができる。それほどコストをかけずに刺激し合える。SNSの好き好きはあるとは思うけれど、可能な限り活用すべきだと思う。

 

普段の現場から離れて、社外の色んな現場の人と語り合う場を持つことは、エンジニアにとってとても大切なことなんだと思う。

 

もっと外に出よう。

 

[2014/3/4(火)]アジャイルサムライ横浜道場「ざっくりわかるアジャイル開発」へ参加してきました

2014年始動の会 アジャイルサムライ横浜道場 「ざっくりわかるアジャイル開発」 - アジャイルサムライ読書会 横浜道場 | Doorkeeper へ参加してきました。昨年読書会がひと回りし、心機一転シーズン2がついに始まりました。

f:id:orinbou:20140305013024j:plain

今回は第1章「ざっくりわかるアジャイル開発」がテーマでした。

昨年までの通常回は、グループ内で輪読してディスカッションするという形式だったのですが、今回からは、プレゼンターの方(今回は道場主の KIMURA Takao (tw_takubon) さん)が30分程度スライドを使って解説した後、グループ毎にテーマを選択してディスカッションする形式になりました。今回は、初参加の方が3(4?)名ほど居たかな。その内のひとりは、現在の私の現場の開発チームの人でした。同じ現場で問題を共有できる人が一緒に参加できたことはものすごく嬉しい。

 

さて、今回わたしが参加したディスカッションのテーマは次の2つです。

  • 3つの真実
  • 価値ある成果(ソフトウェア)を毎週届ける

どちらも参加者のコンテキスト毎の経験などを交えてディスカッションしたことで、普段の自分の現場内だけでは、出ないような意見に刺激を受け、また、気付きを得ることができました。

 

今回のディスカッションで使用したホワイトボードをメモがてら残しておくとします。

f:id:orinbou:20140305013040j:plain

参加者の人が普段ガッツリWF開発をやっているということもあり、アジャイル開発との違いと、如何にして必要な要求を顧客から引き出すかについて語り合いました。顧客から価値ある要求を引き出すには、ドキュメントだけでなく、動くソフトウェアかそれに近いモノを見せるなど、できうる限りの手を尽くすべきだと…理論的には、無限の時間と予算があれば、全ての要求が固まってから開発に着手することができるかもしれない。がしかし、私達は、そんな理想的な世界には生きていない訳で、じゃどうするのが現実的なのか?限られた時間と予算でより価値の高いソフトウェアを提供するにはどうしたらいいのか?その答えのひとつがフィードバックを前提とした開発をすることなんじゃないかという話になりました。早めにフィードバックが得られる手法でやっって、開発する側と発注(評価)する側とのギャップを極力小さいうちに埋めていくのが現実解なのかなと感じました。

f:id:orinbou:20140304210129j:plain

 

f:id:orinbou:20140305091014j:plain

価値とはなんでしょうか?

誰にとっての価値でしょうか?

普遍的なものでしょうか?

答えはひとつではなく、ステークホルダー毎に価値は異なるよね?という話をしました。例えば、経営者にとってはビジネス(金を生むこと)が価値でしょうし、プロジェクト管理者にとっては計画通り開発が進んでいることにも価値があるということです。(私達のような)開発する人にとっては、早めのフィードバックを得て次のイテレーションに活かせることにも価値がある訳です。なので、普段我々が開発しているものは、いったい誰に何を提供しているのか?ということを自分の現場でも改めて考えてみることが大切なんじゃないかなと感じました。職場でもこういう風に普段の業務とは一歩距離を置いたディスカッションができると良いのになぁ…

f:id:orinbou:20140304213947j:plain

 

そして、ちょうど今読んでいる本「Amazon.co.jp: Fearless Change アジャイルに効く アイデアを組織に広めるための48のパターン: Mary Lynn Manns, Linda Rising, 川口 恭伸, 木村 卓央, 高江洲 睦, 高橋 一貴, 中込 大祐, 安井 力, 山口 鉄平, 角 征典: 本」のお二方にありがたいお言葉とお名前を一筆ずついただきました。

KIMURA Takao (tw_takubon) さん、たかS (takaesu0) さん、ありがとうございます。

f:id:orinbou:20140304235329j:plain

 

一筆いただいて気合も入ったことですし、こちらの本も、最近何かと停滞していた私(達)の現場を前進させるために、ぜひ活用していきたいと思います。

 

そんな訳で、明日からも頑張りましょうか。。。

 

身近なアンチパターンについて考えたこと

普段の生活の中のふとした瞬間に、これってアンチパターンだなぁ…

って感じることが時々あります。

 

そう思った瞬間は結構印象に残るような気がするのですが、結局忘れてしまい、次に同じようなことがあったときに、同じようにまた思い出す…っていうのがよくあるので、今回はBlogに書き留めてみることにしました。

 

今回感じたのは、自己犠牲パターンとでも言いましょうか、とにかく皆のために自分を犠牲にして頑張ってしまうパターンです。責任感の強い人に、そういう傾向が強いような気がします。自分が犠牲になることで、目標が達成されるのならば、それで良いじゃないかという、一見美しく素敵な考えにも思えます。ですが、私はこれは、良くない(というかキライな)考え方だと思っています。

 

緊急時だけならともかく、それが常態になってしまうと、その人は、常に自分の犠牲を前提にして行動するようになります。いろいろと面倒なことは、何だかんだ言っても最終的に自分が我慢すれば済むんだから…と。自分が犠牲になることを前提にして行動するため、負担は増えていきます。それでも頑張って増えた期待に応えようとします。しばらくは、なんとかこなせています。周囲から信頼され頼りにされ、しばらくはとても気持ち良くなります。

 

ですが、これって持続可能でしょうか?

このままうまくやり続けられるでしょうか?

 

負担が増えても、個人でできる作業の量には限界があります。もちろん、慣れや成長によって、効率は上がることもありますが、増え続ける負担にいつか追いつけなくなります。結果、品質が低下(ミスが増える)していきます。ですが、忙しいので、その時はそれには殆ど気付きません。さらに悪いのは、品質が低下したことで、さらに余分な作業が増えていきます。しかし、忙しいので、発生した問題に対して、場当たり的な対応をする時間しかありません。常に忙しくてなかなか休めないので、疲労やストレスも蓄積していきます。心身共に疲弊していきます。そして、失敗した時は、自分が頑張った分、より多くのダメージを個人で被ることになり、場合によっては、一気に心が折れかねません。

 

個人の心にはトラウマとなって残り、次の挑戦への芽が失われます。
結果、チームや組織に停滞をもたらします。

 

よく、人生がマラソンに例えられますが、まさにその通りだと思うのです。もちろん、ある瞬間をペースも考えずとにかく全力で突っ走ることが必要な時期があるのも否定はしません。ただ、それは一時的なものと考えます。私達は、チームで力を合わせて、なるべく継続的にアウトプットを出し続けられるようなペースや仕組みを自分たちで考え、作っていく必要があると思うのです。

 

そのためには、自己犠牲パターンは、私はアンチパターンだと考えます。

 

同じ目的に向かう仲間と互いに補い合える関係を普段から築いておくこと。そして、アイデアや計画、行動に対して常にレビューがかかるような状態で、挑戦し、成功も失敗も個人でなくチームで受け止めて、次への糧にすることこそ、継続的にアウトプットを出し続けるためのひとつの手段だと思います。

 

イマイチまとまってませんが、そんなことを考えた今日この頃でした。

 

 

[2014/2/13(木)-14(金)]Developers Summit 2014 へ行ってきました

翔泳社さんが主催している開発者のためのITカンファレンスDevelopers Summit 2014、通称デブサミ2014へ初参加してきました。昨年は、知人に誘われつつも、仕事の都合で参加できなかったので、ついにリベンジ出来ました。2日間に渡ってスピーカーの方々の熱い話が聞けて非常に良い刺激になりました。特に2日目は記録的な大雪にも関わらず、ものともせず参加する熱いデベロッパー魂の猛者が大勢いることに驚愕しました。大雪にも関わらずデブサミ会場は熱かった。さすがデベロッパーサミット!!!

 

全体のまとめについてはサイト「デブサミ2014、講演関連資料まとめ:CodeZine」さんがまとめてくれていますので、今回自分が参加したセッションについてメモがてら簡単な記録を残しておこうと思います。

 

【1日目】2/13(木)

セッション資料 関連レポート
【13-A-1】クラウドがもたらした多様な破壊と創造(新野淳一/玉川憲/佐俣奈緒子/仲暁子/長谷川秀樹/三村真宗/吉田浩一郎/大石良 Togetterなかやまろぐ
【13-A-L】ビジネスアプリケーションとつながる「Heroku1」のご紹介(相澤歩〔Heroku〕) Togetterなかやまろぐ
【13-E-3】クラウド時代の環境構築・デプロイ自動化戦略(吉羽龍太郎〔アマゾン データ サービス ジャパン〕) Togetter
【13-C-4】iOSにAndroid、百花繚乱モバイル開発環境を比較する(細川淳〔シリアルゲームズ〕(エンバカデロ)) Togetter
【13-D-5】[U30]フロントエンド開発者になるための切掛と行動/酒巻瑞穂ソフトウェア開発を勉強し始めて3年間でやったこと~After~/きょん(酒巻瑞穂〔エス・エー・エス〕/きょん〔オンザロード〕) Togetter
【13-E-7】Yet Another Your Story(Enterprise TED 3)(司会:高柳謙、川添真智子/小川充/たかのあきこ/中野雅之/梅澤雄一郎/平栗遵宜) Togetter、登壇者の事後談(小川充/たかのあきこ/梅澤雄一郎/平栗遵宜

 

【2日目】2/14(金)

セッション資料 関連レポート
【14-B-3】モバイル版グーグルマップのUXはいかにして作られたのか?(石塚尚之〔グーグル〕) Togetter@yukio_andoh
【14-D-4】デベロッパー戦国時代!ストーリーをつなぐ開発環境と3つの秘訣(長沢智治〔アトラシアン〕) Togetter講演者の事前告知講演録画など@tchikuba@akiko_pusu
【14-B-5】ピンポンゲームでスクラム体験ワークショップ(川口恭伸〔楽天〕) Togetter講演者の事後談
【14-A-6】Play2/Scalaでドメイン駆動設計を利用した大規模Webアプリケーションのスクラム開発の勘所(吉村総一郎〔ドワンゴ〕) Togetter登壇者の事後談
【14-E-7】デブサミ2014版プロレス as a Service ~ PaaS(【レフリー&司会】川田大輔) Togetter締切直前企画

 

 いろいろとセッショントークや、ワークショップに参加してみましたが、デブサミの2日間を通して一番印象に残ったのは、ショートストーリーだったにも関わらず Yet Another Your Story(Enterprise TED 3)の平栗さんの話「31歳無職、ベンチャーへ行く」かなぁ。出で立ちもインパクトありましたし、とにかくストーリーが面白くて印象に残りました。技術云々とかではなく、不思議な魅力とパワーのある方でした。まさに異端児という感じがして。機会があれば、是非またお話をきいてみたいと思います。後日、この記事「東大法学部卒(31歳・無職)が半年でプログラマーになれたのは生存本能のおかげ~『freee』開発者・平栗遵宜さん - エンジニアtype」を見て知ったのですが、東大卒なのですね。頭がキレるはずですw

 

体験したワークショップ(ピンポンゲームとかTOCfE)は、是非自社内の勉強会でも試してみたいと思います。

 

アルバム コメント
f:id:orinbou:20140213095958j:plain 雅叙園、デブサミ会場へと続く通路。和の雰囲気たっぷりで、かなりオサレです。
f:id:orinbou:20140213163846j:plain ひな祭りが近いこともあってか、つるし雛が綺麗に飾られていました。
f:id:orinbou:20140213163851j:plain そして、水面には五人(もっと大勢??)ばやし達が賑やかに「お・も・て・な・し」してくれます。
f:id:orinbou:20140213163915j:plain

さらには、鮮やかな桜色の着物まで展示してありました。

場馴れしない自分としては、オサレ過ぎて倒れそうでしたw

 f:id:orinbou:20140214134937j:plain デベロッパー憧れの登壇台…
 f:id:orinbou:20140225023959j:plain 高視野角HMD「Oculus Rift」を体験してみました。視覚情報だけなのですが、ジェットコースター搭乗映像を流してもらうと、体が倒れそうになったり、現実に近い高所を感じたりしました。そして変な汗もかきました…^^;いかに視覚からの情報の影響が大きいかということを思い知らされました。こういう風に体験できるブースがあるのも、デブサミならではですね。これは楽しい♪ 
f:id:orinbou:20140213182920j:plain こちらは、【13-E-7】Yet Another Your Story(Enterprise TED 3)の一コマ。たかのあきこ氏による「奥様デブサミに立つ」による、ちょっといい話です。
f:id:orinbou:20140213175256j:plain こちらは、【13-E-7】Yet Another Your Story(Enterprise TED 3)の一コマ。梅澤雄一郎氏による「脱Struts脳のススメ」によるJavaでモテる方法について暑く語っている様子w 
f:id:orinbou:20140213181804j:plain こちらは、【13-E-7】Yet Another Your Story(Enterprise TED 3)の一コマ。平栗遵宜氏の話「31歳無職、ベンチャーへ行く」の図。出で立ちだけで既に面白いw
 f:id:orinbou:20140214135829j:plain 2日目は大雪のため、午後のスケジュールが5分ずつ早まりました。
 f:id:orinbou:20140214140204j:plain 【14-D-4】デベロッパー戦国時代!ストーリーをつなぐ開発環境と3つの秘訣(長沢智治〔アトラシアン〕)の勇姿!!!これからのソフトウェア開発のあるべき姿を熱弁。
 f:id:orinbou:20140214151913j:plain 【14-B-5】ピンポンゲームでスクラム体験ワークショップ(川口恭伸〔楽天〕)の図。
 f:id:orinbou:20140214152023j:plain

ちなみに、ルールとしてピンポン球を空中に浮かせないとイケないとのご指摘により、床に並べるこのアイデアは、あえなく不発となりました…^^;

でも、この後に、もっと良いカイゼンのアイデアが出て、130個くらいの記録を出せました。

f:id:orinbou:20140225020118j:plain セッションの合間にTOCfEのオープンジャム「変えたい、変えて行きたいをかたちにする(木村卓央氏、中大和氏)」にも参加してみました。
 f:id:orinbou:20140214170200j:plain アンビシャスターゲットツリーのワークショップを体験しましたが、駆け足なので時間が足りなかった。別の機会にもう少しじっくり学びたい。機会を作らねば。
f:id:orinbou:20140214171714j:plain こちらは、【14-E-7】デブサミ2014版プロレス as a Service ~ PaaS でレフリー兼司会の川田氏が暑く語るの図。ミスターXが怪しすぎますw
f:id:orinbou:20140214170238j:plain こちらは、【14-E-7】デブサミ2014版プロレス as a Service ~ PaaS は綺麗なラウンドガールのお姉さんがタイムボックスを知らせてくれます。
f:id:orinbou:20140214181034j:plain 【14-E-7】デブサミ2014版プロレス as a Service ~ PaaS 終了後に、嬉しいプレゼントをいただきました。ありがとうございますm(_ _)m
f:id:orinbou:20140214181628j:plain

そして、プロレス終わって外を見ると…

ああああああああああああああ!!!!

か、帰れないかも(雪で)…と思った瞬間です。

最終的にはなんとか帰れましたが、案の定小田急線に3時間ほど拘束されました。この日は、渋谷の道玄坂がゲレンデになったりと、もっと大変な目にあった方も沢山いたのようで…皆様本当にお疲れさまでした。

 

そんな訳で、是非また来年も参加したと思います。

できれば、今度は私が誰かを誘って。

 

Team Geek を読んで思ったこと

社内の同僚が読んでいた本「Team Geek」が面白そうだったので借りて読んでみた。

自分メモとして特に印象に残った点と感じたことを書き留めておこうと思う。

f:id:orinbou:20140111220255j:plain

この本が全体を通して大切だと言い続けていること。

それは、優れたソフトウェアを作るチームではHRT(ハート♥と読む)が重要だということ。

  • H:Humility(謙虚)
  • R:Respect(尊敬)
  • T:Trust(信頼)

この三本柱は、人間関係を円滑にするだけでなく、健全な対話とコラボレーションの基板となる。そしてこうも言っている。

  • あらゆる人間関係はの衝突は、謙虚・尊敬・信頼の欠如によるものだ。

と。著者(Fitz&Ben)は、世界を変えるような功績は、インスピレーションの閃きとチームの努力であると述べ、本の中で、NBAバスケットボールのマイケル・ジョーダンとチームの関係などを例に出して、

  • ソフトウェア開発はチームスポーツである。

というメタファが出てくるのだけど、これが自分にはものすごくにハマった。自分がバスケをやっていたせいもあるのかも。ビジョンを共有し、仕事を分担し、他人から学ぶことの重要性は、まさにバスケと同じだな…と思ったことが、かつて自分にもあったなぁと。最近バスケしてないせいか、いつからか忘れてしまっていたようだ。そういえば、草バスケ選手としての自分のプレースタイルも、飛び抜けた身体能力があった訳でもなかったし、他のプレーヤーとコラボレーションすることで結果を出してきたように思う(恥ずかしいくらいに全く本当にしょぼい結果だけど)。というより、そうするしか無かったんだけどw実際、そういうスタイルになってからの方が試合で使ってもらえることが多くなったし、他のプレーヤーからも一緒にやってて楽しいとか、やりやすいとか言われることが多かったような…いわゆるつなぎ的な地味なこと(リバウンドやDFのカバーリングとかね)を淡々とやることが多かったな。自分が何点取ったとかより、チームとして機能するにはどうしたらいいか?みたいなことをいつも考えてた。思えば、いつも職場でもそんな感じだw反面、これは決定的な強みがないっていう弱さを隠すための「逃げ」なんじゃないかと感じることもあるので、もちろんコアとなる強みは作って置くべきだと思う。この辺は表裏一体なのでバランスが大事なのかな?

 

次に気になったキーワードは「ミッション・ステートメント」。この言葉を最初に知ったのはフランクリン・コヴィー氏の「7つの習慣」の研修を受講した時だった。ようは企業サイトによくある経営理念みないな「実際の行動に資する指針・方針として明文化したもの」のことなんだけど、これは別に企業に特化したものではなく、例えば個人やチーム、プロジェクト毎に作成してもいい。エンジニアリングチームのミッション・ステートメントであれば、チームの方向性を定義して、プロダクトのスコープを制限して、やること/やらないことを明確にしておくことが、場合によっては年単位で仕事の節約になる可能性もあると書かれていたのだけど、これは物凄く共感できる。これはアジャイル開発では、インセプションデッキに相当するのかな?いずれにせよ、方向性というか指針を明確にして、共有して常に意識できるようにしておくことで、迷った時に背中を押してくれると思う。言葉は違えど、大事なことっていうのは、共通するものがあるな、と感じた。

 

最後に、管理者(マネージャー)について。プロジェクトを進めるためにはリーダーが必要になるが、望まずとも気付いたらそういう役回りになっているという苦悩のことを「マネージャー炎症(manageritis)」と呼ぶとかwそれは置いといて、この本で理想としているのはサーバントリーダーで、時代遅れの管理者をトンガリ頭のマネージャー(@Deprecatedマネージャー)と呼んでいる。時代遅れのマネージャーというのは、軍隊の階級制度を参考にして、100年以上も昔の産業革命の時に導入されたモデル。決まった単純な作業を行う場合は、労働者をロバのように扱う「ニンジンとムチ」によるマネージメントは有効だっただろうが、創造的な考えや問題解決が必要なエンジニアリングでは全くナンセンス!つまり、封建的なカタチでガチガチと管理するやり方は、創造的なチームを活かすどころか、殺してしまう。上から押さえつけるように管理するのではなく、チームが有効に機能するように、執事や召使いのようにチームに奉仕するサーバントリーダーシップこそが、いま求められている新しいカタチなのだと言っている。これはスクラムでいうところのスクラムマスターとも非常に似ているなと思った。アジャイル開発において、ソフトウェアは、工場のベルトコンベアで製品を作るのと違い、人間が作るものだという「人間中心」を前提にしている。技術だけじゃなく、人間であることを前提とした感情やコミュニケーションも重視し、生涯を取り除くという仕事をすることは、物凄く理にかなっていると感じる。

 

他にもグッと来た点が、いろいろとあったけれどキリがないのでこの辺で。

内容としても学びがあるし、読み物としても面白いので、興味がある人はぜひ読んでみることをオススメします。

 

 

 

エナジャイズドな現場を追い求めている道半ばで思ったこと

あけましておめでとうございます。

この記事は DevLove Advent Calendar 2013 「現場」 の60日目の記事として書いています。 

滾る進撃のスクラムマスター 伊藤宏幸(The Hiro)さんからのバトンを繋がせてもらいます。

自己紹介

昨年の「DevLOVE現場甲子園2013」をキッカケに始めたBlogですが、今年も可能な限りで継続していきたいと思っています。Twitterアカウントと同じくorinbouというHNでBlog書いてます。派遣や受託でソフトウェア開発を行う小さな所謂SI屋で働いています。現場甲子園では団長の中村洋さん率いる「団」チームで、二回裏に「世界を変える前に現場を変えよう」というタイトルで発表させてもらいました。自己紹介は省略しますので、気が向いたらBlogのプロフページでも見てやってください。

自分にとっての現場

私の普段の現場というのは、お客様先です。何名かの自社メンバーと共に客先に常駐し、そこで開発チーム(お客さん&自社メンバー)を構成するというカタチで日々の開発を進めています。チームの構成人数は時期にもよりますが、大体5〜10名くらいの規模です。

私は、もともと存在していたプロジェクトに追加メンバーとして投入されて、今の現場に来ました。最初は3ヶ月の短期支援という話だったのですが、紆余曲折を経て1年半程経過した今現在もその現場で開発を行っています。もちろん投入当初のプロジェクトの次のプロジェクトへと移っていますが… 

投入後しばらくして現場の空気に慣れてきた頃、チーム内の作業がひどくタテ割りでメンバー間がサイロ化していることに驚かされました。もうアジャイルとかWFとか関係なく、基本的な情報共有がないことで日々様々な問題が発生していました。投入当初まず短期支援ということもあって、とにかく任された業務を仕上げることに注力して、ひたすら耐えていました。が、支援期間が半年延長されるとなった時から、これは何とかしないと(特に最初はチームの開発効率云々よりも自分のストレス的に)マズいと思いました。開発チームのメンバーは、自社メンバーだけでなく、お客さんも居ます。しかも、私はPMでもPLでもなく、イチ支援メンバーという立場だったので、何から手を付けようか、どうやって進めたらいいか…という点でスタートが非常に難しかったです。本当に、どうしたもんかと困っていたのですが、たまたま若手の開発メンバー(お客さん)と共同作業することになったのをキッカケにして、ある期間だけ2人で次の事を段階的にやってみました。なるべく自然に、それとなく始める感じで… 

  • 朝会(毎朝私から勝手に押しかけて開催してみる)
  • ふりかえり(なんちゃってKPT)
  • Redmineの導入(廃棄予定サーバーを間借りしてタスク&バグ管理)

元々そういうことが無かったこともあって、比較的早く効果を感じることができました。そんな感じで、しばらく継続していると、私より後に開発チームに合流した開発メンバー(お客さん)にも、同じように現状に問題を感じている人がいて、私達の活動に関心を持ってくれていることが分かりました。例えそれが正しいと分かっていても、現場で今までやったことがない事を試して続けるのって、一人だとそれだけでなかなか大変なので、それがわかった瞬間というのは物凄く嬉しかったです。それだけで物凄く勇気ももらえます。これがデレク・シヴァーズ氏のいうところの「最初のフォロワー(追随者)の重要性」なのかな?とか思いました。

その後は、その仲間と協力しながら、アイデアやタイミングを相談し合いながら地道にチーム内へと展開していくことができ、開発チームとして先ほどの3つのことを定着させることができました。朝会で、個人タスクの抱え込みも減りましたし、問題があった時すぐにフォローし合うこともできました。期日と各個人が抱えてるタスクのクリティカル・パスを見える化するなどして、危機感や目的を共有をすることでモチベーションも上がりましたし、数値化してませんが、生産性も良くなっていったと思います。Redmineの運用はタスク管理よりバグ管理専用で使う方向にになっていきましたがリリース管理やバグ管理の情報が蓄積&見える化されるようになりました。ふりかえりは、後半かなり形骸化してきましたが、問題が問題のまま残り続けることが減り、以前よりは少しはマシになりました。そしてこれは「一兵卒でも現場を変えることができる」という貴重な体験にもなりました。以前自分がPLやって半トップダウン的にやったのとは対照的な体験にもなりました。

当初は、まずなんとか自社開発メンバーを巻き込んで、それを突破口にしてなんとか展開していこう…とか考えていましたが、まさか最初のフォロワーがお客さんで、その後も最も協力的というか、一緒に悩んでアイデア出して、実践に導いてくれたのもその人でした。これは私にとって、とても幸運なことだったと思います。それと同時に、例えそういう人が近くに居たとしても、最初の一歩を自分から踏み出していなければ、その幸運にも巡り合えなかったんじゃないかと思います。こうすれば必ずうまくいく…なんていういわゆる「銀の弾丸」なんて都合のいいものはありませんが、それぞれの立場や状況で、思い考えているだけでなく、行動するということが必要なんだと改めて感じました。

 

で、その後(今現在)の話です。前述のプロジェクトは終了し、同じ現場で、次のプロジェクトが始まっています。チームメンバーや体制も少し変わりました。ここからは少しネガティブな話になりますが、今モンモンと感じている暗黒面(Dark Side)のことを最後に書いておこうと思います。

 

前述のとおり、現場をボトムアップで良くしていくということは、できると思います。状況によってはそれすら難しいこともあるかと思いますが、特にスタートが「無」の状態であれば、ちょっとしたこと(例えば朝会だけでも)ですぐに効果が出ると思います。小さな成功/失敗を積み重ねていくことで、経験が蓄積していき、チームとしても個人としても成熟していくのだと思います。が、プロジェクトは有期限の活動であり、メンバーも都度変わります。毎回のプロジェクトがほぼ完全リセットされて、またゼロからやり直す…ということになるとなかなかしんどいですね。まるで賽の河原の石積みのように…全然先へ行けない。また最初の仕込みからやらんとイカンのか…みたいな。その辺は、各々の現場(業種や業界)によってかなり大きく違うと思いますが、所謂SI屋としての共通の悩みなのかもしれません。とはいえチームや個人を成長させるためにプロジェクトが存在している訳ではなく、プロジェクトによって開発されたアウトプットが価値を生む訳なので、その価値を生み出す際の利点として(契約時に?)合理的に説明できる根拠がないと難しいですね。ソフトウェア開発というものに関しての理解や経験を、契約に関わる主要な人全てが持っている訳もないですし、基本的に今までの契約の延長線上で考えるでしょうから。それを求めるのは開発者が「完璧なユーザー」を求めるのと同じくらいナンセンスなのかもしれません。

また、社外の現場で作業している限りは、文化や伝統というものは、常駐している場所の影響を大きく受けることになります。特に現場がある程度歴史ある会社だったりすると、現場をカイゼンするための取り組みも、結局は「今まではこうだった」みたいな流れに押されてしまうことが多いです。これは自社内での開発時には、そこまで気にならなかったことでもあります。何十年もかけて醸造されてきた文化や伝統というものは良くも悪くも、私達の日々の活動に影響を及ぼしてきますし、加えて、政治的なパワーゲームなどもあり、なかなか一筋縄ではいきません。現場のPMがちゃんと管理しない(プロジェクト開始直後から「気合い」を前提として、さらに割り込みを増やす…etc.)というようなことが日常茶飯事だと、モチベーションも品質も↓になります。それが俺流、あるいは、文化/伝統だと言われてしまうと正直なかなか辛いものがあります。

 

ふりかえれば昨年は自分が関わったプロジェクトを少しでも良くしたい…という思いで夢中で駆け抜けてきた時期だったように思います。もちろん今も変わらずその思いはあります。が、プロジェクトを重ねて行く中で、今日より明日、明日より明後日が良くなっている…という改善サイクルの理想とのギャップをどうやって埋めていこうかと悩んでいる時期(これはanytimeかw)でもあります。もちろん、今できることを全力でやるしかないのですが、場合によってはある程度トップダウンで物事を進められる力が必要だなと感じることが多くなってきました。ある程度の裁量権というか決定権と言うか…そのためには、自分にできることを増やしつつ、そういう立場へ自分から名乗りをあげて進んで行かないと行けないのかもしれません。

 

そんなことを思いながら、年も開け、また今年の仕事が始まりますが「機雷がなんだ!全速前進!」の精神で、今年も頑張りたいと思います。

 

現場をあきらめない。。

We energize us!

次の人へ

次は Mitsuo Hangai (bangucs) on Twitter さんへバトンをお渡しします。

どうぞよろしくお願いします!