仙石浩明の日記

技術者の成長

2007年1月17日

技術者を目指す学生さんたちへ

いよいよ就職活動本番ですね。 どのような進路を選ぶにせよ、 あとで後悔することのないよう、 じっくり考えて決めたいものですよね。 でも、ただ単に考えると言っても、 一人であれこれ思い悩むのは感心しません。 「思いて学ばざれば則ち殆し」と言いますから、 ぜひいろいろ見聞きした上で考えて頂きたいと思います。

企業への就職を考える場合、まず気になるのは評価制度のことだと思いますが、 まさにこの評価制度が揺れ動いているのが、いま現在と言えるでしょう。 高度成長期以来、長年用いられてきた年功主義に基づく評価制度の綻びが 誰の目にも明らかになってきてはいるものの、 年功に代わる評価方法を模索し続けているのが 多くの企業の現状だと思います。

どこの企業も新しい人事制度を模索し、成果主義が取り入れられつつありますよね。 (同時にコスト削減という意味合いもありますが)
この成果主義という人事制度ですが、 多分どこの会社でもおおよそこんな感じなのではないでしょうか。
●年初に目標を設定(部署ごとの目標・個人の目標)
●3ヶ月か半年ごとに上司と面談
●成果をアピール
●評価の通知
一見、単なる年功序列よりは凄くまともそうなシステムに見えますよね。 でも、実際には明らかな欠点があると思います。 (評価する側の上司がそもそも年功序列組だという点は除いて)
◆短期間にアピールできるようなものにばかり心奪われるようになる
◆業績アピールに繋がらない日常の雑用や、他人の手伝いは避けるようになる
どちらも当たり前の弊害だと思うのですが、 多くの企業ではこれらの問題について見て見ぬフリをしているのではないでしょうか?

ぜひこういった疑問を、どんどん企業にぶつけていって頂きたいと思います。 就職活動というのは、いろんな企業に対して歯に衣着せぬ質問ができる 唯一と言ってもいい機会なのですから。

「評価」には二つの側面があります。 「評価される側」と「評価する側」です。 上に引用した文章は、 「評価される側」にフォーカスした疑問と言えるでしょう。 もちろん学生さんは就職したら評価される側になるので、 「評価される側」から考えたくなるのは当然だと思いますが、 なにごとにも表と裏があります。 片方の側からだけ考えていては考えを深めることはできません。 ぜひ、自分とは異なる立場の視点も持つ習慣を身につけて頂きたいと思います。

「評価」を両方の側から考えてみれば、 「短期間にアピールできるようなものにばかり心奪われるようになる」というのは 評価される側の理屈に過ぎないことは自明ですよね? つまり暗黙のうちに、 アピールがそのまま通るような「無能な上司」を前提としてしまっています。 もし、「評価する側」が 「業績アピールに繋がらない日常の雑用や、他人の手伝いは避ける」人の 評価を下げるのであれば、 このような弊害を避けることは可能でしょう。

引用した文中に「評価する側の上司がそもそも年功序列組だという点は除いて」と ありますが、 まさにこれこそが問題の本質だと思います。 「除いて」しまっていては考えが深まりません。

どのような人事制度であれ、 「評価する人」と「評価される人」の双方に、 その制度の「精神」が徹底できていなければ機能するはずがありません。 そして、 「評価される人」への徹底は、 そもそも徹底できていなければ評価が下がるので、 否が応にも徹底されるわけですが、 「評価する人」への徹底ができるかどうかは、 「評価する人」を評価する人、つまりその上の上司の責任です。

より具体的に言えば、 「短期間にアピールできるようなもの」「アピールしやすいもの」 ばかりを評価の対象としてしまって、 部下の本当の価値を評価できていない上司を、本当に降格できるのか? という問題でしょう。 年功主義では過去の功労者が上司となるケースが多いようですが、 過去に成果を上げた人が、 現在の部下の成果を評価できるのか? という問題であるとも言えますね。

製品には、どうしても長期的な投資が必要なものがあると思います。
例えば日亜化学の青色LEDだって、中村氏が個人で何年もかけて、 会社の中止命令を無視してやり遂げたと著書にありましたし。
もし青色LED開発中に、 3ヶ月ごとに面談していたらどんな評価がされるんでしょう?
失敗続きで亀のようにのろく、先が見えない実験の繰り返しでしょうから、 それらの失敗が将来大きなリターンになって返って来ることを 強く確信している人でなければ、続けられませんよね。
同ページ」から続けて引用

「技術者の成果」とは何でしょう?

技術者が作ったものから得られる売上でしょうか? もちろん、それだけではないですよね? 「青色LED」のように最終的に莫大な利益を生み出したものは、 とても分かりやすい「成果」ですが、 サーバシステムの運用などのような縁の下の力持ちの仕事だって 立派な成果ですし、 さらに、 自分自身では何も生み出さなくても、 社内の技術者を育てることや、 社内の技術をブログなどで発表して会社の知名度を上げることなども、 立派な成果と言えるでしょう。

したがって「3ヶ月ごとの面談」という制度が問題なのではなく、 きちんと技術者を評価できない上司をそのままにしておくのが問題なのです。 そしてそういう上司をそのままにしている上司の上司も問題ですし、 そのまた上の上司の上司の上司にも責任があります。

こうやって責任の連鎖を上へ上へ登っていくと、 技術者の評価制度が機能するか否かは、 技術者の評価について最終的な責任を負う人がいるのか? という点に行き着くことになります。

技術者を目指す学生のみなさんには、 ぜひこの点 ──この会社では誰が技術者の評価の最終責任を負っているのか?── を押えた就職活動をするようお勧めします。 そしてできれば、「誰が責任者か」だけでなく、 その責任者がどんな考えを持っているのか調べられるものは全て調べ、 さらに疑問点があれば直接会ってでも質問するくらいの勢いで 臨んで欲しいと思います。

KLab株式会社 取締役
兼 最高技術責任者
仙石浩明
Filed under: 元CTO の日記,技術と経営,技術者の成長 — hiroaki_sengoku @ 07:49
2006年12月12日

戦略的に会社を利用する

成功している中小企業が持つ5つの要素」から引用:

Five Secrets of High Performing Organizations」という報告書(PDF)が 公開されていました。 この報告書はアメリカで10~100人規模の企業300社以上を調査して、 成功している企業が持つ要素を5つにまとめています。 さらに、それぞれの要素を実現するためにはどのような努力をすれば良いかを 解説してありました。
...
4. 戦略的に技術を利用する
本当は何が必要かをわかるまでは課題に対して利用する技術を特定してはいけません。 成功している中小企業は、技術を使う事が目的ではなく、 戦略を達成するために技術を利用する事を知っています。 また、一度使うと決めた技術に対する調査も徹底して行われます。 調査には、技術そのものに対してだけではなく、 効果を最大化するためのトレーニングも含まれます。

誠にごもっとも。 目的は課題を解決することであって、技術はその手段に過ぎない。 いま自社にある技術を中心に考えてしまうと、 それに引きずられ課題を見失うことになりかねない。 だから技術のことはいったん忘れて何が目的なのかしっかり考えなければならない。 目標が明確になった時、 自社が現有する技術と必要な技術との間に乖離があれば、 自社の技術者たちはスキルシフトか職探しを求められる。

合理主義を貫こうとする限り、 この考え方には反駁の余地がない。 技術者が経営方針に振り回され続け、 その結果スキルを充分に伸ばせなかったとしても、 会社は技術者養成機関ではないのだからその責は負わない、 という考え方は首尾一貫している。

問題は、会社が合理主義を貫こうとしている現代においても、 技術者の側が合理主義を貫ききれていないことにある。 「成功している中小企業が持つ5つの要素」の 技術者版「成功している技術者が持つ5つの要素」が必要であろう。

4. 戦略的に会社を利用する

本当は何が必要かわかるまでは 自身の技術 (あるいはこれから身につけようとする技術) に対して 利用する会社を特定してはいけません。 成功している技術者は、 会社に貢献することが目的ではなく、 自らのスキルを向上させるために会社を利用することを知っています。 また、一度入社すると決めた会社に対する調査も徹底して行ないます。 調査には、会社そのものに対してだけでなく、 効果を最大化するための会社の制度および風土なども含まれます。 経営者の技術に対する考え方や、 昇給・昇格などの人事制度や、 どのような人物が自分の上司になるか、 あるいは互いに切磋琢磨できるような同僚がいるかどうかは、 自らのスキルをどれだけ伸ばすことができるかに大きな影響を与えるからです。

経営者にとっては、事業の遂行が目的であって技術はその手段に過ぎない。
技術者にとっては、自らの技術スキルの向上が目的であって 事業はその手段に過ぎない。

スキル向上に役立たなくなった仕事はどんどん捨てるべきである。 なぜなら技術スキルこそが、技術者にとって最大の資産であるからだ。 目先のキャッシュフロー (若いときの給料) にとらわれることなく、 将来のキャッシュフローを生み出すストックをどうやって積み重ねていくかを第一に考えて欲しい。

Filed under: 技術者の成長 — hiroaki_sengoku @ 12:31
2006年12月5日

チープ教育: 「無意味にポジティブ」のススメ

KLab 社内には、社内専用の IRC サーバがあります。 IRC (Internet Relay Chat) つまり、 ネットワークリアルタイム会議システムです。 普通の IRC はインターネットに接続できれば、 誰でも使えるのですが、 KLab 社内 IRC は、KLab のイントラネットに接続できる人しか使えません (VPNワープを使って社外からもアクセスできます)。 だから社外秘な内容も流せますし、 社内ミーティングを IRC で済ませてしまうこともよくあります。

社内 IRC が真価を発揮するのは、 コンテンツ提供用の WWW サーバ システム (DSAS) の メンテナンス作業の時など、 多くの人がリアルタイムに状況 (メンテナンス作業の進捗状況) を 共有したいときです。 メンテナンス作業は、 コンテンツ提供サービスに悪影響を与えていないか確認しつつ 慎重に進める必要があるのですが、 それには実作業を行なう人と、 その作業をチェックする人、 そしてコンテンツ提供に悪影響が及んでいないか監視する人など、 沢山の人が進捗状況をリアルタイムに把握する必要があります。

関係者が全員同じフロアにいれば、 大声をあげるだけでも進行状況の「雰囲気」を共有できるでしょうが、 KLab の場合は東京、大阪、福岡のオフィスの他、 SOHO 形態で働いている人もいますし、 DSAS メンテナンスの場合はデータセンタ (東京二ヶ所と九州一ヶ所) にいる人とも 連係しなければなりません。 遠隔地の人と手軽に「雰囲気」を共有する手段として、 社内 IRC はとても便利です。

あまりに便利なので、 技術者の大半が常時 IRC サーバに「常駐」しているのですが、 こうなってくると計画的な作業の連絡用だけでなく、 技術者全員の横のつながりというか、 部署を超えて技術者同士が連係できる共有空間の役割を果たすようになります。 例えば昨晩も...

18:28 (sengoku`) チープ教育 http://cn.ce-lab.net/ja/toshi/archives/2006/08/post_75.html
18:29 (sengoku`) ↑これ、かなり本質をついてる気がするのですが、皆さんはどう思いますか?
18:30 (sengoku`) 私がはじめて出会った PC (当時の呼称はマイコン) は、とてもチープだったんで、自分で作ろう、という気が起きたけど、今の PC 見て、作ってみよう、と思う人はいないよねぇ..

チープ教育」を読んで、 ぜひみんなに紹介したいと思ったので、 とりあえず社内 IRC に投げてみたわけです。 ほどなく隣の部署の人から反応がありました。

18:34 (koura-h) 細部の作り込みに入ってしまうのって、それはそれで楽しいときもありますけど、苦痛になってしまうことも多いっす。。。
18:35 (koura-h) 制作環境における「チープさ」って、ありがたいと思うす。

続いて、協力会社の人からも...

18:39 (ktaka) ある意味、何でもそうだと
18:39 (ktaka) 思います。
18:40 (ktaka) 自動車でも、
18:40 (ktaka) 楽天のような商売でも
18:41 (ktaka) 物理学者が生物学に入っていって、DNAとかの研究が盛んになり始めた衣
18:41 (ktaka) 頃も
18:42 (ktaka) ショックレイがフェアチャイルド社(?)を始め、Intelができた頃も
18:42 (sengoku`) あはは
18:42 (ktaka) みんな始めは、
18:42 (ktaka) ある意味、やればできそうという感覚があったんでしょうね
18:43 (sengoku`) ですよね~
18:43 (sengoku`) 「へぼくても許される感」って重要ですね~

反応してない人も、この会話の流れを見てはいるわけで、 技術者同士、考え方を共有することはとても重要なことだと思います。 もちろん社内には情報共有の方法としてメーリングリストも多数あるのですが、 なんでも気楽に書込めるという敷居の低さで、 IRC のほうが勝っていると思います。

18:43 (uchikawa-) itronのコードでも弄ってみますか(秋月のボードで自力で動かすというのはやったことあります)
18:43 (sengoku`) 逆に言うと、へぼが許されないような雰囲気のとき、どうやって「無意味なポジティブさ」を学ぶか意識しないと、ってことですね。
18:44 (sengoku`) まあ、遠慮せずにどんどんやれ、ってことなんですけど、
18:44 (ktaka) 私は、そもそも、参入しないと言うのもありかな、と思っています
18:44 (sengoku`) なかなかポジティブになったことの無い人にそれをやれ、ってのは難しいのかもしれませんね。
18:45 (sengoku`) もちろん、参入しない、という選択肢があるときはそれでもいいんですが、
18:45 (ktaka) 高度に専門家されたことを大きな組織でやるよりも、
18:45 (sengoku`) コンピュータ技術者、って道を選択してしまった人に、いまさら他の道を探せ、ってのも酷でしょうから... ;-)
18:46 (ktaka) 一時代を築く可能性がある、チープなものに出会えれば。。。
18:46 (ktaka) でも
18:46 (ktaka) 一口にコンピューター技術者といっても、いろいろあって
18:47 (ktaka) 昔は、ボードの設計からできそう、だったのが、
18:48 (sengoku`) (いまでも、ちゃちな PC ならボードから設計できるんですけどね、実は)
18:48 (ktaka) 今は、Youtube見たいなの作れそう、っていうのがあるとおもいますので
18:49 (ktaka) おお、すごいですね~
18:49 (sengoku`) ようは、ポジティブになれるかどうかが、勝負を分けることになるんじゃないかと...
18:49 (ktaka) チープなフェーズにある、面白そうなものって言うのは、いろんなところにあるんではないかと
18:49 (sengoku`) まあ、そういう話は、
18:50 (katsumiD) ( つhttp://journal.mycom.co.jp/column/architecture/037/
18:50 (sengoku`) プログラマを目指すのに適した時代、適していない時代 http://www.gcd.org/blog/2006/07/83/ ってことに
18:50 (sengoku`) 続くのかな。
18:50 (katsumiD) ちなみに,
18:51 (katsumiD) 今だと CPU を作ろうと思った場合,FPGA とかで作れますが
18:51 (katsumiD) そういうことをしようと思った場合のハードルが,昔に比べて下がっている,と言うのもあるように思いますです
18:52 (ktaka) 確かにそうだと思います>適していない時代
18:52 (sengoku`) いや、あるんですが、ようはそれを自分でやろうという気持ちを起こせるかどうか、ってことだと思います。
18:52 (ktaka) 確かにそうだと思います>CPUを作るハードル
18:52 (sengoku`) 技術的な障壁は確実に下がってるんですが、心理的な障壁は、逆にあがってるかも知れませんねぇ
18:53 (katsumiD) なるほど

若干、会話が錯綜気味で読みにくくなってしまっていますが、 それが逆に、 考えがまとまっていなくてもとりあえず書いてしまえ、 という気楽さにつながっているのでしょう。 メールだと、論旨をはっきりさせて書かねば、という気持ちになりますから、 思ったことをそのままぶつけられる IRC のような場も必要だと思います。

ちなみに、会話に参加している 5人のうち、 4人は声の届く範囲にいたりする (^^;) のですが、 ひざ突き合わせて話そうとすると仕事を中断して集まらなければなりませんし、 大声を出すと会話に興味がない人に迷惑ですし、 URL を伝えるときなどは声よりチャットの方がむしろ便利ですし、 また、IRC だとログが残るので後で参照することもできます。

なお、「プログラマを目指すのに適した時代、適していない時代」に言及したのですが、 どちらかというと「ロングテール戦略が格差社会を生む: 必要は発明の母」のほうが話の流れに近かったかも知れません。 要は、不足感がないと何かをやろうという気力が出てこない、 ということが言いたかったわけです。

18:53 (uchikawa-) 昔だったら「自分で作ったほうが世の中にあるものよりいいものになる」だったですからね
18:54 (sengoku`) 世の中にもっといいものがある、からといって遠慮する必要はないんですけどねぇ、ほんとうは。
18:54 (katsumiD) でも,実は心理障壁を乗り越える人はいつの時代だって乗り越えるし,乗り越えない人はいつだって乗り越えない,というのも,
18:54 (katsumiD) http://www.chiaki.cc/Timpy/index.htm
18:54 (katsumiD) こういうサイトを見ていると思ったりもします
18:54 (katsumiD) (こういうのを見ると,むしょうに自分でも何かをしたくなり出します(^^
18:55 (sengoku`) ぜひぜひ
18:55 (katsumiD) ちなみに,今の時代だと,2足歩行ロボットとか,結構盛り上がってますよね
18:56 (katsumiD) ちょっと前は,2足歩行どころか,普通のロボットでも作る機運ってのは無かったですが
18:56 (ktaka) 私的には、やっぱり、WEBやネットワークがチープなフェーズにあるのではないかと思います
18:57 (katsumiD) 色んな製作記事とかキットが出始めたこととかもあって,アマチュアの人が一杯やってらっしゃいますね
18:57 (sengoku`) まあ、どんな分野でもいいんで、ぜひチャレンジして~と。

収拾がつかなくなってきたんで、ちょっと投げやりになっています > 私 (^^;)

18:57 (katsumiD) (^^
18:57 (ktaka) なるほど
18:57 (ktaka) >ロボット
18:57 (ktaka) 二足歩行のおもちゃ変えますもんね
18:57 (ktaka) 買えますもんね
18:58 (sengoku`) Web が普及して一番困ったことは、誰もが批評家になっちゃって、自分ではやろうとしなくなったことなのではないかと...
18:58 (ktaka) そうなんですか
18:59 (ktaka) 何でも自分でやる技術者の世界に、批評家が入り込んできたという意味ですか?
18:59 (sengoku`) なんでも web 見れば載ってるんで、
19:00 (sengoku`) 自分でやらずに、自分でやってるような気分になっちゃう
19:00 (sengoku`) 見るのとやるのとでは大違いなのに、たいてーの人は見るだけで満足しちゃうんじゃないかと...

うっかり「批評家」と言ってしまって意図が通じにくくなってしまいましたが、 誤解されてもすぐ補足説明できるのが IRC のいいところですね。 「自分で実行しないで他者の行為をあれこれ言う者」という意味で使ったのですが、 「批評家」ではなく「評論家」と表現すべきでした。

19:01 (katsumiD) あぁ,それはあるかもですねぇ・・・
19:01 (katsumiD) 変な事をしてる人は一杯いて,それをいろいろ満てるだけでお腹いっぱいになってるとか・・・
19:02 (sengoku`) そういう傾向はあるんじゃないかなぁ~
19:02 (sengoku`) すでにやってる人がいるから、わざわざ自分でやらなくても、って
19:03 (sengoku`) 思っちゃうんじゃないかなぁ
19:03 (sengoku`) やってみれば、新しい発見があるかもしれないのにね。
19:04 (koura-h) それは分かりますね>わざわざ自分で~
19:05 (koura-h) 何かしりごみするっていうのか、既に誰か手を付けてると後から追いかける意欲が薄れるというか。

ようやく思った通りの結論にたどり着きました (^^)。

19:08 (koura-h) 例えばCPANなんかで、「これ自分で作ったんだけど登録してみよー」とか思っても大抵既に誰かがのっけてたりして、そういうのに何個か当たってしまうとそのしりごみの気持ちが強まってしまうっすね。。。
19:11 (ktaka) なるほど
19:12 (ktaka) >CPAN
19:12 (koura-h) (って打ってたら仙石さんが帰られていったorz

あはは。

Filed under: 元CTO の日記,技術と経営,技術者の成長 — hiroaki_sengoku @ 09:00
2006年7月1日

プログラマを目指すのに適した時代、適していない時代

プログラマの道を目指すのに適した時代、適していない時代、 というのがあるように思う。 もちろんプログラマに限らず、あらゆる職種、それぞれについて、 適した時代というのがありそうだ。 最初に断っておくが、 適していない時代だからといって、その職種を目指すな、と言っているわけではない。 ただ単に、適していない時代であることを意識し、 適していないことを覚悟して ;-)、その道を目指すべきだ、という意味である。

現代は、プログラマを目指すのには適していない時代だとつくづく思う。

そんな馬鹿な、インターネットの普及によって、何でも簡単に調べられて、 その気さえあればいくらでも高度な勉強ができて、 いくらでもプログラマとしてのスキルアップができるではないか、

という反論が聞こえてきそうであるが、 もうしばらく黙って私の話を聞いて欲しい。

自分なりに体系化するセンス」で、長久氏曰く:

「仙石浩明の日記」版「断片的な知識と体系的な知識」を見ると、 こういう学生時代を過ごして来た人って、 私の知人を見る限り 「未踏」級なんですよね。 で、やっぱり1回目の未踏に採択されています。 また、学習指導要領的には、 私の1世代前で、最も勉強が難しかった世代です。 今と違って、誰でもプログラマーになれた時代でもありません。 恐らく、仙石氏の同世代で普通のプログラマーって、 私の世代の普通のプログラマーより、 はるかにパフォーマンスが高いはずです。 更に世代を下がって、今の20代前半の普通のプログラマーって、 仙石氏の世代から見て、ありえない人たちに見えるのではないかと思います。
あまり議論されているのを見たことないのですが、 世代の違いって、すごく大きい気がします。 ソフトウェア技術者って、 仕事でハンマーとか使わないから(?)、 後輩に優しかったり、 職場に同じ年代が集まりやすいので、 世代を超えて積極的に交わろうとしなかったり、 世代間の断絶みたいなものがある気がするのです。 なので、私は、プロレスのように、積極的に世代闘争するべきだと思うんですよね。

「未踏」というのは、 「天才プログラマー/スーパークリエータ」を発掘支援することを目的に IPA が実施している 事業で あるが、 採択された他の方がどうだかはよく分からないが、 少なくとも私自身はとても「天才」とか「スーパー」とか呼ばれるようなレベルでは 全然ないと思う。 これは決して謙遜というわけではなくて、 自身がそういうレベルではないと思うからこそ、 プログラミングのみに集中するのではなく、 「取締役CTO」みたいなことをやったり、 マーケティングをかじってみたりと、 プログラマとしては道を踏み外したことを専らやっているわけだ。

そんな私が、いやしくも IPA のような権威に認めてもらえるように なってしまったのは、 ひとえに私がプログラミングを始めた時代が、 プログラマを目指すのに適した時代だった、 という幸運に恵まれたためだったからと思う。 私が初めてプログラムを書いたのは、 今から 30年近く前、中学1年生の時である。 1978年当時は、まさに長久氏がおっしゃる通り、 今と違って、誰でもプログラマーになれた時代ではなかった。

そもそもコンピュータ自体がまだまだ珍しい存在で、 私自身、もし中学校に「マイコン部」が無かったら、 コンピュータに出会うのはもっと後になってからだったとは思う。 コンピュータに出会う確率が低かった、 という意味で誰でもプログラマーになれるわけではなかったわけであるが、 それ以上に、当時の「マイコン」には少なくとも普通の人にとっては、 なんの魅力も感じられない代物だった、というのが重要な点である。

今と違い当時の「マイコン」は、大したことはできなかった。 高々 20Kバイトの BASIC インタープリタに、 最大 8Kバイトの RAM に記憶させた BASIC プログラムを実行させて、 40x25 キャラクタディスプレイ (つまりビデオRAM はわずかに 1Kバイト! もちろん表示できるのは半角文字だけである) に 表示させてできることなぞタカが知れている。 慣れない BASIC言語でプログラム書いてはバグに悩まされ、 散々苦しんだ挙げ句に得られる見返りは、あまりに少なかった。 自分で言うのもアレだが、 こんな何の役にも立たないものが好きになるのは、 よっぽどの物好きだけだったろう。

実際、私の同級生の中には、 プログラミングに興味を持って BASIC 言語を学ぼうとした人も沢山いたが、 大多数の人は何をすき好んでこんな七面倒くさい「言語」を学ぶのか、 到底理解できず、すぐ興味が別のものへ移っていった。 中学を卒業する頃、まわりを見渡してみると、 BASIC 言語を使いこなすレベルまで到達したのは私だけだったと記憶している。 私以外の同級生が BASIC 言語も使えないくらい低能だった、 というわけでは決してない。 それどころか私より明らかに頭がいい人も沢山いた。 それでも BASIC 言語一つ覚えられなかったのは、 単にプログラミングをするということに意義を見いだせなかっただけに過ぎない。 彼らが現在の中学生だったなら、 余裕で Web 2.0 時代のプログラミングをバリバリこなしていただろう。

つまり、誰でもプログラマーになれた時代ではなかったというよりは、 誰もプログラマーになろうとは思いもしなかった時代だった。 しかし、逆説的ではあるが、 苦労に見合うリターンが全く得られないからこそ、 自分がプログラミングが好きだということを確認できたという点で、 当時は「プログラマを目指すのに適した時代」だったと思う。

それに比べ、 現在のように少しでもプログラミングができれば給料までもらえてしまう、 ある意味プログラマが必要以上に優遇されている世の中では、 好きだからプログラミングをするのか、 それとも単に食うために(仕方無しに)プログラミングするのか、 曖昧になってしまうわけで、 「プログラマを目指すのには適していない時代」なのだと思う。

長久氏がおっしゃるように、 「仙石氏の同世代で普通のプログラマーって、 私の世代の普通のプログラマーより、 はるかにパフォーマンスが高いはず」というのは (実際に統計をとったわけではないが実感としては) 正しくて、 その原因は、 当時の「普通」のプログラマは、 みな例外無くプログラミングが三度の飯より好きだったし、 プログラミングに向いている人だけがプログラミングをやっていた、 ということにあるのだろうと思う。

昔話に終始していては、現在の若い人たちの参考にならないだろうから、 この話を現在に適用すれば、次のようになるだろう:

今の時代は、 プログラミングをすれば充分すぎる見返りが得られるが故に、 自分がプログラミングに向いているのか、 あるいは単に見返りのためにプログラミングをしているのか見極めるのが、 とても困難な時代である。 プログラマを目指すのもいいが、 向いていないことを後になって自覚して 「35歳で定年を迎える」ことにはなってほしくない。 現在は明らかにプログラマを目指すのには適していない時代である。 では何を目指すのに適した時代だろうか? 1978年当時の「マイコン」に相当するものが、 今の時代にもきっとあるはずである。 若い感性でそれを見つけ出し、 誰もが目指さないからこそチャンスがあるんだと信じて、 自分に向いていることをどこまでも追い求めて欲しい。

Filed under: 技術者の成長 — hiroaki_sengoku @ 08:41
2006年6月21日

時間ができたら勉強したい、というのは禁句

好きなこと = 他の人に勝てる分野

負けることを恐れるあまり、勝つことに価値を見いだせなくなってしまった人たち」に 頂いたコメントを見ていて、 あらためて日本語の難しさを痛感する (^^;)。

「勝てることが好き」 と 「勝てるから好き」 と 「勝つことが好き」

文字ヅラはとても似ているが意味はだいぶ違う。 私が書いたのは「勝てることが好き」だったのだが...
「勝つ」こと自体が好きと、「勝てること」が好きでは、 もちろん全然意味が違うし、 どんな分野であれ最初から「勝てる」ことなどないのだから、 勝てる「から」好き、というのもちょっと違う。

「好きだから注力する」⇒「注力するからより上達する」⇒ 「上達を実感するから、より好きになる」 という正のフィードバックによって、 しだいに勝つことができるようになるのである。 「勝つ」は結果であって、理由ではない。 つまり「勝てるから好き」ではない。 もっとも、「勝ちたいから注力しているうちに好きになる」ということは あるが。

やりたいことを見つけるにはどうすべきか?

Mimiteru さまのコメントから引用:

業務も職種も世の中にはたくさんあります。 やりたいことがわからない人は、 本当にプログラマがやりたいのかさえも漠然とした意識を持たないのかもしれません。

その通りだろう。 何がやりたいのか見つけるには、 好きでなくても手当たり次第に挑戦してみることも必要である。 何事も始めてみなければ始まらない。

ところが、挑戦してみることを勧めると、 「時間ができたら勉強したい」と答える人のなんと多いことか。 率直に言って、こう答えた時点で好きになれる可能性はゼロである。 何事も始めてからの方が困難なことが多い。 まして勝てるようなレベルを目指すなら、 好きでなければやってられないことも多いだろう。

世の中は、何をするにしても道半ばで、進むのを止めてしまえと 囁く誘惑に満ち満ちている。 「時間がない」ことを「いいわけ」にして始めないようなら、 仮に始めたとしても、困難にぶち当った途端、 山のような「いいわけ」を持ち出して自己を正当化し、 進むのを止めてしまうだろう。

好きなことがあるなら、時間なぞなくても始めてしまうだろうから、 こんな「いいわけ」は言わないだろう。 好きなことがないなら、そして何かやりたいことを見つけたいと本当に思うのなら、 「いいわけ」を口にしたくなっても思い止まるべきだ。 最初から「いいわけ」を口にしていて好きになれるはずがない。

勉強を始める最適な日は、今日という日をおいて他にない。

Filed under: 技術者の成長 — hiroaki_sengoku @ 06:30
2006年6月20日

コンピュータ科学における体系的な知識

断片的な知識と体系的な知識」にトラックバックを頂きました。 長久さま曰く:

体系的な知識を学ぶことはある程度可能です。 但し、その分野が十分に研究されていて、体系化されているならば、 という条件が付きます。体系化は、学問化と言っても良いでしょう。 この場合、本当に良くできた教科書を読むことで、 体系的な知識を学ぶことができます。
しかし、多くの分野では、体系化まで行ってません。 コンピュータ科学においても、体系化まで進んでいる分野は、一握りです。

「体系」を辞書で引くと、 「一定の原理で組織された知識の統一的全体」(広辞苑) とあります。 私は「統一的全体」として、 かなり広範囲の学問分野を想定していたのですが、 長久さまは「コンピュータ科学においても、体系化まで進んでいる分野は、 一握りです」と 表現されていることから、 もっと狭い個々の技術分野について考えられているのでしょう。 技術分野がどんどん細分化されていく昨今、 長久さまのように、 個々の技術分野の「体系」をイメージされるかたのほうが 多数派なのかも知れませんね。

私がイメージする「体系的知識」とは、 コンピュータ科学でいえば、 例えば「オートマトン理論」のような学問体系のことです。 現在のコンピュータは全てオートマトンですから、 コンピュータ科学全体が一つの体系と言ってしまってもいいかも知れません。 この意味でコンピュータ科学は、かなり体系化されています。 コンピュータ科学という「体系」の視点から見れば、 その中の個々の技術分野の「体系」は、 他の技術分野と相互に関連づけられていない限り 「断片的知識」と言いきってしまえるかも知れません。

「コンピュータ科学 体系」で Google 検索してみると、次の本が見つかりました:

図解雑学 コンピュータ科学の基礎 河村 一樹 (著)

内容
ほとんどの情報処理試験に出題され、 もっとも難しいジャンルとされる「コンピュータ科学基礎」について 図版を豊富に使って丁寧に解説。 コンピュータ科学がいかに体系化され、 いかに研究が進んでいるかを実感できる本。

目次
1 コンピュータサイエンスと符号化理論の基礎
2 論理学の基礎
3 集合論の基礎
4 形式言語理論の基礎
5 オートマトン理論の基礎
6 グラフ理論の基礎
7 プログラミング論の基礎

検索で見つけただけの本なので内容がどうなってるのか分かりませんが(^^;)、
この目次は、コンピュータ科学の体系を俯瞰するのに丁度いいと感じました。

オートマトン理論の中には、 チューリングマシンや計算量の理論などが含まれてくるでしょう。 非決定性チューリングマシンが多項式時間で解くことができる問題のクラス NPや、 オラクル付チューリングマシンが解くことができる問題のクラス階層は、 コンピュータ科学の体系の中でも最も重要な概念の一つと言っても いいかもしれません。

# オラクルといっても DBMS でもなければ、マトリックスの母でもありません ;-p

また、グラフ理論に関連する分野として、組み合わせ理論や探索などがあります。 遺伝的アルゴリズム(GA)は、確率的探索の中の一分野に過ぎません。 GA を単に、交叉・突然変異・自然淘汰からなる探索アルゴリズムとして 理解してしまうと、 本質を見失ってしまうのではないでしょうか。

プログラミング論には、 近年急速に発展しつつあるソフトウェア工学全体が含まれてきます。 秒進分歩といってもいいくらい新しい概念が次々と提案される分野ですが、 本質さえきちんと押えておけば、 数年で廃れる流行に振り回されずに済むのもまた事実です。

同ページで長久さま曰く:

「これ読めば、探索を体系的に学べます」というオチがきたら良かったと思います。 この終わり方だと、生殺しっぽいので。 でも、探索を体系的に記した本って、タブンないと思うんですよね。 捉えるレベルがメタ過ぎて、抽象的になっちゃうと思うので。

まずはコンピュータ科学全体を俯瞰し、 「論理学」「形式言語理論」「オートマトン理論」 「グラフ理論」「組み合わせ理論」「符号化理論」などの コンピュータ科学を支える重要理論を大ざっぱに把握した上で、 特に興味がある分野(例えば探索)をより突っ込んで勉強する、という方法が いいのではないかと思っています。 重要なのは、最初のうちは枝葉末節にあまり捕らわれないようにすることでしょう。 木を一本一本見ていて森が理解できるようになるほど、 コンピュータ科学という森は小さくありません。 まずは森全体の地図を見て体系を理解しておくことが重要でしょうね。

もっと読む...
Filed under: 元CTO の日記,技術者の成長 — hiroaki_sengoku @ 06:37
2006年6月14日

負けることを恐れるあまり、勝つことに価値を見いだせなくなってしまった人たち

『他の人に勝つ』ということに価値を見いださない人たち」に頂いたコメントから発展して、 /.j 方面でいろいろなコメントを頂いた。 いろんな考え方の人たちと議論することによって 考えが深まるので大変ありがたいことだ。 曰く:

この方は競争に勝つために勝てる分野を選んで それを好きになるという習慣を自分の中に構築して行った結果、 それがあまりにも固定化された「大前提」になってしまって、 そこに至るまでの「自分がなにをしたいのか」について ちゃんと考えることを止めてしまっているのではないかと思います。

どうやら昨今の事件によって「勝つ」という言葉の持つ負のイメージが 大きくなってしまっているようだ。 なにごとにも光と影の面がある。 勝つ人がいれば当然負ける人がいる。 負ける人のことに焦点をあてれば、 勝つことに価値が見いだせなくなるのは当然のことだろう。

では、「勝つ」という代わりに「人より『上手く』やる」と言い換えたらどうだろう? 例えば、「私は普通の人より効率的なコーディングができる」。 私よりコーディングの効率が劣る人は「負け組」だろうか?

もちろん違う。 単にコーディングに向いていないだけなのだ。 自身の適性を早く把握して、 自分に向いていることを見つけ出し、 それを好きになって取り組めば、 おそらくその分野では私より「上手く」やることができるようになるだろう。

「勝ち組」は一割以下だという。 ほとんどの人は「負け組」になってしまうから、 そもそも「勝ち負け」にこだわるのはよくないと、 まるで小学校の徒競走みたいなことを言う人がいる。

しかし、なぜ負けた人がその分野にこだわる必要があるのか? ある分野で負けても、他の分野で見返してやればいいではないか。 みんながそれぞれ自分に一番向いていることをすれば、 「勝ち組」の割合はずっとずっと増えるだろう。

これこそ、それぞれの人の多様な能力を伸ばすことをめざす 「ゆとり教育」の目標であったはずだ。 ところが現状は皆が自身の個性を無視して同じようなことを目指す。

徒競走でビリの子が出るのが問題なのではなく、 みんなを運動会に等しく駆り出すことが問題なのである。 勝ち負けをはっきりさせなければ誰が運動能力に優れ、 誰が向いていないのか曖昧になってしまう。

受験戦争が問題なのではなく、 大学で学ぶ意欲も能力もない子まで大学へ進学させようとするのが問題なのである。 大学で学ぶ意欲も能力もない子でも、 受験テクニックを無理矢理覚え込ませればテストの点は上がるかもしれないが、 そういった子たちが大学に入って何をするというのだろう。

お金儲けが問題なのではなく、 自身の適性を無視し、自分がやりたいことを見失って、 向いていない仕事を嫌々やっていることが問題なのである。 「プログラマ 35歳 定年説」に書いたように、 できるだけ早い段階で勝ち負けをはっきりさせ、 自分に向いていることを見つけるべきなのである。

Filed under: 技術者の成長 — hiroaki_sengoku @ 08:11
2006年5月22日

ストックが増える積み重ねと、増えない積み重ね

成長する秘訣は、 今の仕事を捨てて自分を変えること」に トラックバックを頂いた。 曰く:

ものの考え方にはストック…積み重ねにより大きな利益を得るっていうのもあって、 ストック、フローのどちらをよしとするかはケースバイケースなのでしょうが、 今の時代はフロー的なことが求められるのですかね。
...
ただ、エンジニア稼業というのはスキルの蓄積が実績として重要視される ストックな生き方を要求されることも多いかな。

蓄積には、ストックが増える積み重ねと、 増えない積み重ねがあるような気がしている。 ストックが増えるのであれば蓄積は重要だが、 ストックが増えなくなってきた仕事は捨てることも検討すべきだと思う。

そうでないと、 「これだけいろいろ経験を積んでスキルも蓄えたのだから、 当然評価されてしかるべきだ」という思考停止状態に陥ってしまう。 事実、面接で長大な職務経歴書を提示して、 一つ一つ説明して下さるかたがいらっしゃるが、 そんなものよりたった一つの深い経験の方が重要なこともあるのだ。

「ストック、フローのどちらをよしとするか」という話にしてしまうと、 当然重要なのはストックで、フローはそのオマケに過ぎない、 ということになってしまうが、 そういう問題ではない気がする。 ストックが大事なのは「エンジニア稼業」に限らず、 どんな職種でも同じなのではなかろうか。

Filed under: 技術者の成長 — hiroaki_sengoku @ 11:06
2006年5月17日

断片的な知識と体系的な知識

CTO日記に書いた 「断片的な知識と体系的な知識」を、沢山の方々に読んで頂けた。

この季節、新卒(見込み)の学生さんを数多く面接してきたのですが、 新卒の段階で既に とてつもなく大きな差がついていることに改めて驚かされました。
今後大きく成長する可能性が感じられる人と、 早くも既に成長の限界が見えてしまっていて、 可能性がほとんど感じられない人、という点では、 もう既に逆転不可能とさえ思えるような大差がついてしまっています。
可能性が感じられる人、というのはつまり、 自分が何をしたいか明確に分かっていて、 かつその分野の体系的な知識を身につけている人たちです。 現時点ではそんなに多くを習得しているわけではないにせよ、 体系全体を理解していますから、自分がどこまで知っていて、 未知の領域がどのくらいあるか、感覚でつかんでいます。

じゃ、オマエは学生の時どうだったんだ、という声が聞こえてきそうなので、 私の学生生活を振り返ってみる。 コンピュータの分野が好きだと思ったのは中学一年の時で、 体系的な知識を学んだのは大学の専門課程に進んでからである。

- o -

私が初めてコンピュータに触れたのは、中学一年生の終わり頃である。 「マイコン部」なるものがあって、 3台のCommodore PET 2001を 20人以上の部員で使っていた。 しかも「部活動」は週一回 50分ほどだったと記憶しているので、 PET 2001 に触れるのは、二週間に一度、25分だけ、 しかも二人で一台を使う形だった。 最初のうちは BASIC を使って簡単なゲームなどを書いていたが、 6502 のインストラクションセットをどこからか見つけてきて (どこで見つけたのだろう? 当時はその手の資料を中学生が見つけることは、かなり難しかったはず)、 ハンドアセンブルしたコードを BASIC の poke 文でメモリに書いて 実行させて遊んだりした。

初めて BASIC の入門書を読んだとき、 将来プログラミングを仕事にできたらどんなにいいだろう、 と思ったのを今でもはっきり覚えている。 今からは想像もつかないが、 1978年当時の中学生にとって、 一人一台マイコン (当時の呼び方 ;) を占有できるなんてことは、 とうていかなわない夢だった。

高校になってようやく MZ-80K2E を購入した。 日経Linuxに執筆した連載の枕から引用:

私が最初に購入したコンピュータは, シャープのMZ-80Kシリーズの最後の機種K2Eでした。 RAMは32Kバイト,CPUはZilog Z-80 2MHzで, BASICインタプリタをROMではなく, カセット・テープから読み込む方式であるため, BASIC以外の言語への対応が容易という, 当時としては画期的なパソコンでした。 BASICライクなアセンブラBASE-80を使って, ゲームやモニターを作っていたことを思い出します。 その後,CP/Mを移植するためにBIOSを記述する際にも, BASE-80を使いました。

高校時代は、マイコンのハードウェアに興味を持ち、 MZ-80K2Eのプリント基板の配線を目で追って回路図を起こし、 それをもとに Programmable Character Generator や Z80 DMA を追加するなどの改造を行なった。 また、 コンピュータ以外の分野では、 物理や哲学に興味を持ち、 1年に百冊以上読む、という目標を立てて 手当たり次第に読書したこともある。

コンピュータにのめり込んだ高校時代だったため、 大学に進むとき、物理, 数学, 哲学などの道に進むことも (一瞬 ;) 考えたのであるが、 コンピュータを学んだといっても所詮は独学に過ぎず、 まだまだ学ぶことがあるはずと思い直し、情報工学科に入学した。

1回生のときは、Z-80 を使ったコンピュータの手作りに熱中した。 ユニバーサル基板を何枚か使って、 それぞれ CPU ボード、I/O ボード、DRAM ボード、などを順に作り、 MZ-80K2E をキャラクタ端末にして CP/M を走らせた。 2回生のとき、ソフトウェアハウスでアルバイトするようになり、 MacVJE などを開発した。 私にとって初めての、 まとまった量のプログラミング (C 言語で 5万行くらい) 体験だった。

このあたりまではあくまで独学であり、 断片的な知識の寄せ集めである。 もっとも、現在のようなインターネットなどなかったから、 全て (数少ない) 専門書を読みあさって仕入れた知識であり、 Web ページで得られる知識よりは、マシだったかもしれない。 当時のコンピュータ関係の専門書は、 大型書店 (大阪梅田の紀伊國屋や旭屋など) にしかなく、 それも数えるほどしかなかった代わり、 ほとんどがマトモな本だった。

3回生になって初めて情報処理の基礎を学んだ。 今まで経験則で回路図を設計していたのが、 カルノー図を使うとシステマチックに最適な回路を設計できる、 ということを学んで感動し、 独学の限界を思い知った。 なにせ、それまではコンピュータの設計というと 数週間かけて行なうものだと思っていたのに、 教科書で説明されている方法だと数時間しかかからないのだ。 私が初めて大海を垣間見た瞬間かもしれない。 そのとき読んだ教科書がこれ:

Switching and Finite Automata Theory
Zvi Kohavi
McGraw-Hill Education ; ISBN: 0070993874 ; (1979/03/01)

ボロボロになるまで読んだ (まあ、もともと製本が粗末というのもあるが ;)。

Filed under: 技術者の成長 — hiroaki_sengoku @ 13:55
2006年5月16日

断片的な知識と体系的な知識

この季節、新卒(見込み)の学生さんを数多く面接してきたのですが、 新卒の段階で既にとてつもなく大きな差がついていることに改めて驚かされました。

中途採用の候補者の方々は、 前職でいろいろ学び経験してきたので、 多くを学んだ人とそうでない人とは大きな差がつくのは、 まあ当然と言えるでしょう。 それに対し、 新卒の学生さんは、これから職業生活のスタートを切るわけで、 差があったとしてもまだその差は小さいと思いがちです。

もちろん、学生さんたちを、 仕事を遂行する能力という点で比較すれば、 優秀な人もそうでない人も、そんなに大差ないでしょう。 この人はスゴイ、と思うような人でも、 入社直後にバリバリ即戦力として働けるか、というと おそらくそんなことはないと思います。

しかしながら、今後大きく成長する可能性が感じられる人と、 早くも既に成長の限界が見えてしまっていて、可能性がほとんど感じられない人、 という点では、 もう既に逆転不可能とさえ思えるような大差がついてしまっています。

可能性が感じられる人、というのはつまり、 自分が何をしたいか明確に分かっていて、 かつその分野の体系的な知識を身につけている人たちです。 現時点ではそんなに多くを習得しているわけではないにせよ、 体系全体を理解していますから、 自分がどこまで知っていて、未知の領域がどのくらいあるか、 感覚でつかんでいます。

一方、あまり可能性を感じられない人、というのはつまり、 自分が何をしたいのか、まだつかみきれていない人、 あるいは、 何をしたいかは分かっているのだけど、 断片的知識の寄せ集めしか身につけておらず、 その分野の体系の全体像をつかめていないので、 自分が何を知らないのか分からず、 井の中の蛙になってしまっている人たちです。

何をしたいかすら分かっていない人については、 先日「人の役に立つことをしたい」と言う技術者の卵たちで書きましたので、ここでは割愛します。

井の中の蛙とはいえ、自分が何が好きかは分かっている人は、 どんどん自発的に新しいことを学んでいけるので、 短期的には活躍できるでしょう。 しかし雑多な断片的知識はどこまで集めても体系にはなり得ません。 井戸の中しか知らない蛙は永遠に大海を知ることはないのです。 しかも、インターネットが普及した昨今、 断片的知識を得ることは限りなく容易になってしまい、 体系的知識を学ぶことが相対的に困難になってしまっています。

つまり、 今も昔も、 体系的知識を学ぶこと自体の難易度は変わっていないと思うのですが、 断片的知識がインターネット等であまりに容易に 見つけられる (なんせ google 一発ですもんね) ようになってしまったので、 体系的知識、すなわち IT業界で言えば 「情報処理のキホン」を学ぶ機会が減ってしまったと思うのです。 「情報処理技術の基礎を知らない情報技術(IT)業界の技術者」というのは こうやって文字面をみるだけでも頼りない感じがしますよね? (^^;)

そこで KLab(株) ではそういう機会を少しでも提供したいという思いから、 輪読会を実施しています。 現在進行中の輪読会では、

コンピュータサイエンスのための離散数学
Information & computing (61)
守屋 悦朗 (著)

をテキストとして使っています。 ぶっちゃけこの本は説明が簡潔すぎてイマイチなのですが、 あまり分厚い本だと読む前にメゲてしまいますし、 この本で端折っている部分は、 数学科出身のアーキテクトに補足説明してもらっているので、 なんとかなりそうです(反面、1ページ読み進むのに何時間もかかったりしますが ^^;)。

実力主義・能力主義」で

技術者が「技術だけでどこまでも上っていける会社」 「自分のキャリアパスを明確に描ける会社」それが理想。 出世すると技術がなくなったり、上司がいつの間にか技術者でなくなると、 「いずれは技術を捨てなければならない」と思ってしまう。それはありえない。

と書きましたが、 「技術だけでどこまでも上っていく」には、 技術体系全体を俯瞰して、 自身の現在位置が把握できていることこそ必要だと思うのです。

Filed under: 元CTO の日記,技術者の成長 — hiroaki_sengoku @ 09:45
2006年5月15日

「知らないこと」と「分からないこと」

CTO日記のほうに、 興味深いコメントを頂いた。 質問者のかたは、 こちらの日記も読んで頂いているようなので、 こちらで続きを書こうと思う。 「分からない時は、『分からない』と言おう」で書いた、 技術者がスキルアップするには、 分からないことがあるときは臆せず質問できる度胸こそ必要、という 私の考えに対するコメントであるが、曰く、

ここで言われている『分からない』という言葉の中には 「知らない」と「理解できない」の二つの意味が含まれているということです。
「知らない」ことについては、(自分を含めて)みんなが知らないことなのか、 自分だけが知らないのかすら判断できないから なかなか質問ができないのだと思います。 聞いた内容によっては(たとえ説明したとしても) そもそもその場で話している内容はまったく分かってないんだな、 と思われたりします。聞くのは危険だと思います。
「理解できない」ことについては聞いた内容について 自分の中で消化できないわけなので、 恥ずかしがらずに質問できるような人になれたり、 環境ができればいいと思います。

「知らない」ということと「理解できない」ということは確かに違う。 私が書いたのは、「理解できない」ということについてであって、 「知らない」ということについては言及していなかった。 「理解できない」ことについては、「恥ずかしがらずに質問できるような人」に なれたらいい、と書かれているので、私と同意見のようだ。

ところが、「知らない」ことに対する考え方は私と全く違うようだ。 この質問者のかたは、「理解できない」より「知らない」ことの方が恥ずかしい、 という感覚のようだが、 私の感覚は全く逆である。 つまり、「知らない」ことは全く恥ずかしいことではない、と私は思う。 だからこそ、「知らない」ことについてはあえて言及していなかった。

「知らない」ということは、たまたまそのことについて 知る機会がなかった、というだけのことである。 誰でも最初は初めてである。 今がその初めての機会であるなら、さくっと質問して 知ればいいだけのことであろう。 どうして今まで知る機会がなかったことが恥ずかしいのであろうか?

「当然知っておくべきこと」だから? では、なぜそれを「当然」と思うのか?
あたかも、どこかの誰かが決めた、 「技術者ならば常識」というのがあって、
それを知らないのは技術者として失格、とでも言いたいのだろうか?

全くもって馬鹿げている。 たとえその人が「常識」を知らなかったとしても、 素晴らしい能力を持っているかもしれないではないか。 知識の多寡で技術者の能力を推し量ることなど無意味である。 仮に、「常識」を知らないことを理由に馬鹿にする人がいるのであれば、 所詮そのレベルの技術者なのであろう、相手にする必要はない。

一方で、「理解できない」ということは、場合によっては恥ずかしいことである。 もしかすると、質問したことによって、 自身の理解の限界、あるいは自身の理解の速度の遅さを 思い知ることになるかもしれない。 その限界があまり高いレベルでない場合は、 つまり平均的な技術者がすぐ理解できることが、 自分にはすぐには理解できないのだとしたら、 その分野は自分には向いていないということになるだろう。

いままでそのことに気付かなかったのは恥ずかしいことであるが、 なにごとも遅すぎるということはない、 その分野はあきらめて、自分の得意な分野に集中すれば良いだけである。

Filed under: 技術者の成長 — hiroaki_sengoku @ 08:03
2006年5月13日

成長する秘訣は、今の仕事を捨てて自分を変えること

今までの自分を振り返ってみると、 ずいぶんいろんな仕事を捨ててきた。 一番大きかったのはもちろん大企業の研究所での研究生活を辞めて、 (株)ケイ・ラボラトリー (KLab の当時の社名) の創業に参加したことだが、 その後も、

  • ケータイ上の Javaアプリの開発
  • サーバ側の Webアプリケーションの開発
  • クラスタリングサーバの構築・運用 (後の DSAS)
  • そして KLabセキュリティ(株) への注力

と、どんどん仕事を替えてきた。 部下が成長してきて、私の代わりがつとまるようになったら、 私はもうその仕事はやらない。全てその部下に任せてしまう。 なかなか思う通りにいかないことも多いが、 他の人ができる仕事は自分ではやらない、という原則を自身に課してきた。

同じ仕事をやり続ければ次第に要領が分かってきて、 よりスマートにこなすことができるようになるが、 しだいに成長の度合いは鈍るだろうし、 なにより部下が育たない。 ある段階まで来たら仕事は部下に譲って、 自分は違うことをすべきだろう。 そうすれば新しいチャレンジができるし、 自分を大きく成長させることもできる。

今日、本屋で他に読みたいと思う本がなかったので仕方なく手に取った本:

千円札は拾うな。
安田 佳生 (著)

をパラパラと見たら、 まさに私が考えていたようなことが書いてある。 引き込まれて思わず一気に読んでしまった (私がいきなり本に没頭し始めたので、一緒にいた妻が不機嫌になってしまったが)。

久々に、いい本に出会えた感じがした。 さっそく私の参考文献リストに追加した。 それにしても、この本のタイトルはいただけない。 以前からこの本が平積みになっていたのは知っていたのだが、 タイトルからは食指が動かなかった。 そもそも、「お金を拾うな」というのは当たり前ではないか、 と思ったからだ。たとえ一万円札だろうと、 何か高価そうな品物だろうと、私は拾わない。

私の参考文献リストに加えていて気付いたのだが、 安田氏の著作はすでにリストにあった:

採用の超プロが教えるできる人できない人
安田 佳生 (著)

この本もオススメである。私の面接のやり方は、 この本に影響を受けた面がたぶんにある。

Filed under: 技術者の成長 — hiroaki_sengoku @ 21:16
2006年5月12日

資産を増やそう! 技術者にとっての資産とは?

資産とは、お金を入ってくる源泉。 お金が出ていくほうは負債。 持ち家を資産と思っている人も多いが、 持ち家に自分で住んでしまえば、 修繕費などでお金が出ていくことはあっても、 お金が入ってくることはない。だから負債。

金持ち父さん貧乏父さん
ロバート キヨサキ (著), 白根 美保子 (翻訳)

で述べられているように、 お金のしくみはいたって単純である。 少なくとも普段、技術者たちが相手にしている高度な技術に比べたら、 遥かに遥かに単純である。 負債を減らして資産を増やせば、 入ってくるお金が増える。 ただ、それだけ。

こんなに単純な理屈なのに、 多くの人は、 資産を増やすためにお金を使うより、 むしろ負債を増やすことにお金を使ってしまう。 例えばローンを組んで持ち家を買ったりする。 どうみても世間一般の人より遥かに頭がいいように思われる技術者たちが、 ことお金に関しては全くといっていいほど 頭を使おうとしないのはなぜなのか。

しかも、技術者の多くは、 他の人達が望むべくもない資産を持っている。

それは「スキル」。

しかも、わずかな投資(努力)で大幅に増やすことができる特異な資産である。 なぜ、この資産をもっと効果的に増やそうとしないのか。 なぜ、目先のキャッシュフロー (安月給) に目を奪われて、 自身の資産形成をおろそかにするのか。

Filed under: 技術者の成長 — hiroaki_sengoku @ 23:55
2006年5月11日

「他の人に勝つ」ということに価値を見いださない人たち

私が面接でよく聞く質問に:

生活するために働かねばならない、ということが仮になかったとしたら、
仮に、一週間何をしてもいい、と言われたら、何をしますか?

# 仙石浩明CTO の日記: 面接 FAQ (4) から引用

というのがあるのであるが、 意外なまでに多くの人がこの質問に答えることができない。

そんな馬鹿な、何をしたいか分からないなんて、 そんなことが有り得るのだろうかと思っていたのだが、 あまりにこの質問に答えられない人が多いので、 一つの仮説を立ててみた。

好きなことがない、あるいは明確にこれが好きと言えない人たちというのは、
「他の人に勝つ」ということに価値を見いだせない人たちなのではないか?

つまり、私の場合だと、 他の人にできないことが自分ならできる、 ということに自身の存在理由を求め、 この分野なら他の人に勝てる、という分野を追い求めてきた。

他の人に勝てれば、その分野が好きになるし、 好きになれば、それだけいっそうその分野に注力することになる。 そうすることによって実力がついて、 よりいっそう他の人たちより優位に立てた。 そういう正のフィードバックによって実力を磨いてきた。

だからこそ、私にとっては 好きなこと = 他の人に勝てる分野 なのである。

この感覚が、 私にとってはあまりに自然な発想だったので気付かなかったのであるが、 もしかすると私が自明なものとして疑うことがなかった 「他の人に勝つ」という大前提が、 人によっては、それほど重要なことではないのかもしれない。 いや、むしろ他の人と同じであることに価値を見いだす人たちなのかもしれない。

Filed under: 技術者の成長 — hiroaki_sengoku @ 23:46
2006年5月8日

満員御礼: 新卒採用面接を兼ねた会社説明会

会社説明会といいつつ、 要は私といろんな話題についてお話しましょう、 というノリですので、 私の日記 (CTO日記もよろしく) を見て、 波長が合いそうだと思ったかた、 ぜひ登録をお願いします。

おかげさまで第一回(5/9)と第二回(5/15)は満席につき、 現在は三回目を募集中です。

KLab(株) CTO仙石 (KLabセキュリティ(株) CTO を兼務) と語る、
「技術者の成長にとって一番役に立つ会社」
「技術者が自ら伸びていくことができる会社」とは

理工系の学生の皆様に、弊社で、 CTO仙石と少人数でコミュニケーションをとって頂く、 1次選考を兼ねた会社説明会をご案内致します。 皆様のお申し込みお待ちしております。

日時  2006/5/30(火)  13:30~15:00
場所  KLab(株) 本社会議室 (六本木ヒルズ森タワー 20F)

CTO日記のほうで書いている 「面接 FAQ ~弊社の面接で(私に)よく聞かれること、面接官自身が語る面接攻略法~」を読んでおけば、 面接事前対策もばっちり ;)。

Filed under: 技術者の成長 — hiroaki_sengoku @ 12:51
« Newer PostsOlder Posts »