tottu22 エンジニアブログ

tottu22’s blog

エンジニアの日常をつづっていきます

アジャイルデータサイエンス

2日前くらいからオライリーからでている「アジャイルデータサイエンス」を読んでいます。

アジャイルデータサイエンス ―スケーラブルに構築するビッグデータアプリケーション

アジャイルデータサイエンス ―スケーラブルに構築するビッグデータアプリケーション

 

 

アジャイル開発の手法をデータサイエンスにおいても、取り入れていこうという内容になります。アジャイル手法については、私は以下の書籍がすごく参考になり、実際の業務でも取り入れていきました。

 

アジャイルサムライ−達人開発者への道−

アジャイルサムライ−達人開発者への道−

 

 アジャイルサムライ、大人気ですよね。書きっぷりがユニークで読みやすい書籍です。

 

アジャイルってなかなか日本に浸透しにくいですよね、スタートアップの企業とかだったら向いているんですが、からこれ何十年とやっているSIerで、客先とのつきあいも長くずっとウォーターフォールでやってますという会社では、切り替えが難しいと思います。

トップダウンで動いている組織で、上の方の理解があれば取り入れることが可能だと思います。ボトムアップで動ける環境だったとしても、上の方には説明が必要なのでものすごく体力を使うと思います。

チームとしてのマインドを統一しなければならず、いきなり「さあ今日からアジャイルでやっていこう」という感じにはならないです。

 

すこしずつ変えていかないと難しいというのが実際にやってみた感想です。

アジャイルサムライをまずはチーム全員に読んでもらおうと上司に渡して、メンバーにも3冊ほど自腹購入して回し読みしてもらいました。

 

リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)

リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)

 

 それから「リーダブルコード」こちらも隔週で、業務中に輪読会という場を設けて、章ごとに講師を変えて発表をするという方式で、コードをどのように書いていくかを組織内で統一していくことをしました。

全員参加でこういう場を設けるのは、アジャイルにとっては非常に重要なことです。

 

毎朝スタンドアップミーティングを取り入れたり、スプリントの終わりには振り返りをいれたり、とチームがすごく密な感じで毎日過ごしていて充実していたなと今思います。チームのメンバーから意見が出やすい環境にすることもリーダーにとっては重要な仕事だと思います。

 

チームの進捗管理もJIRA,Redmine,Tracなどツールをいくつか試してみて、最終的にははJIRAに落ち着きましたが、ツールをどんどん検証していきチームで話して決めていくのも大事です。

作業の効率がよくなることが一番なので、変なこだわりは捨てたほうがいいと思います。ツールだけでなく、仕様の変化などアジャイルは変化に柔軟に対応できる心がないと進められないですよね。

 

 以下の書籍も面白いです。アジャイルサムライと同じようなことができてきます。

アジャイルプラクティス 達人プログラマに学ぶ現場開発者の習慣

アジャイルプラクティス 達人プログラマに学ぶ現場開発者の習慣

 

 

大きな組織ではチームのマインドを変えていくのはすごく時間がかかり、変えようとしている人は本当にきついと思います。はじめたいと考えている組織は、最初のうちは変化に許容できる人を中心にチームを構成するのがよいですね。

あとは、まわりを気にかけながら仕事を進められて、かつリーダーシップを発揮できる人をアサインすること。

アジャイルは少人数が向いている手法なので、チームの構成がしっかりしてないと破綻すると思います。みんなが色々とできるようになっておくとこで、メンバーのいれかえにも対応できるようにしておくことも重要です。

 

リーダーはリーダでメンバーを引っ張っていかなかればならないのですが、メンバーそれぞれがメンバーを考えられる組織が求められます。全員がリーダ的な気持ちを持って進められればよいわけです。

 

アジャイルデータサイエンスは、これから読み進めていきますが、アジャイルが懐かしくなってしまったため、振り返ってみました。