Hatena::Groupbugrammer

蟲!虫!蟲!

Esehara Profile Site (by Heroku) / Github / bookable.jp (My Service)
過去の記事一覧はこちら

なにかあったら「えせはら あっと Gmail」まで送って頂ければ幸いです。
株式会社マリーチでは、Pythonやdjango、また自然言語処理を使ったお仕事を探しています

 | 

2013-06-11

[]ジェネラリストエンジニアというもの 22:54

前書き

 以前にも、社内の中で「業務開始前に10分間のWeb用語説明プレゼンをやるのがとてもよかったのでお薦めします - 蟲!虫!蟲! - #!/usr/bin/bugrammer 」という話を書いたのだけれども、解説したあとに、その説明を聞いた人がRedmineWikiにその解説を書く、ということをやっている。最近になって、その解説も増えてきたので、「だったらブログにしたほうがいいんじゃないか」という話になり、ブログの話が進行している。

 その中で、社内でブログの記事を二人一組のチームで分けている。一人は文章を担当し、もう一人はイラストを担当するという構成だ。自分はそれこそ少しくらいであるならば、イラストが描けるということになり、イラスト担当にまわった。(記事自体はそのうち公開される……と思う)

 恥ずかしながら、自分は元々中学生か高校時代は漫画家を目指していた時期はあった。それは、一般的に言われる「黒歴史」ではある。今も、たまにジャポニカの自由帳を使って、漫画を描きたくなる時期というのが何度かある。それは本当に趣味の範囲だから公開は殆どしてはいないが、そういう経験がこういうときに生きているのかなあ、と思うと、不思議な気持ちになる。

 たぶん、見聞きした限りだと、一口に「エンジニア」と呼ばれる職業の有りかたにも二つあると感じる。一つは「スペシャリストエンジニア」というものだ。他のことはともかくとして、一つのことを極めるということだ。例えばPHPのことなら何でも聞いてくれ、という状態であったり、JavaScriptなら仕様を読みこなしているぜ、とかそういうタイプの人間だ。

 もう一つの有りかたとして、「ジェネラリストエンジニア」というありかたがあるんだろうな、とも思う。

 ジェネラリストエンジニア、というのはちょっと一口に説明すると難しい。というのも、本来的な意味で「ジェネラリストエンジニア」というのは、たぶん存在しにくいとは思う。例えば、自分の場合であるならば、Pythonを基本とし、djangoを使ってサイトを構築している。そういう風に、何かしらの「専門性」は必要ではある。

 このブログで何度も書いている通り、自分はいわゆる「スペシャル」なエンジニアにはなりにくいと感じることは思う。もちろん、そこへの努力は惜しまないし、ある引っかかりというものは必要だ。しかし、何処かで、やはり何処かはみ出してしまう部分が存在しているとは思う。

 もちろん、人間というのは、どこかしら「スペシャル」な部分と「ジェネラル」な部分というのを持ち合わせている。知人のエンジニアも絵が上手いのだが、滅多にその様子を見せない。たぶん、そういう側面はあまり見せる必要がないからだと感じているからだろう。

「ジェネラルさ」が必要な部分と、「スペシャル」が必要な部分と

 これは企業風土にもよると思うし、その企業が作っているプロダクトにも依存している部分で、どちらが求められるのか、という点は大きい。例えば、ゴリゴリのHadroopフレームワークを作っているとか、内部エンジンを作っているという場合、やはりどうしても「スペシャル」な部分を求められると思う。

 しかし、自社の場合なんかはそうなのだけれども、基本受託開発をしつつ、新規サービスの考案をやったりするとなると、単純に「スペシャル」を雇うというわけにもいかないし、また「スペシャル」であると、タスクが落ち着いたときに手持ち分沙汰になってしまう可能性が高い。

 そういう意味では、「ジェネラル」な部分は割ときいてきたりする。上記の場合なら絵をそこそこ描けるという部分であったり、あるいはアイデア出しのときに、どういうフレームワークがあるのか、とかいったような。つまり、「普段はやらないけど、いざとなったらタスクを出せる」という状態というのは、割と大切な部分であるという気がする。

 あともう一つとして、本人がどちらのほうが能力を発揮しやすいかという問題もあると思う。例えば、Rubyをいじっているだけで幸せになる人であったり、Railsのコードを読んでいるだけで、楽しくなる人というのもいると思う。

 俺もコードを読むほうだとは思うんだけど、しかしいろんなところに目移りしやすいという側面は否めない。Pythonを軸にしつつ、いろんなところに絡んでいく。もちろん、知識だけじゃ駄目だから、実装してちゃんと確認するという作業も大切ではあるが、しかし直接プログラムとは関係ないアフォーダンスの議論とか読んだりして喜んだりするほうが楽しいという意味では、やはりジェネラルに触れると思う。(アフォーダンスの議論が重要ではない、というわけではないが)

まとめ

 取りとめも無い話ではあるが、自分が「スペシャル」になるのか、それとも「ジェネラル」なのか、そしてその辺を企業と絡めて、どのように働いていくのかというのは割と重要な話であるよなーという気がしている。そして、自分はどちらかというとジェネラルよりなのかもしれないなーと思いながら、社内ブログ用にイラストを描いたりしているのだった。

 |