SSブログ

書籍『40代からのスターティングノート』 [転職]

40代からのスターティングノート―あなたはもう、自分の人生シナリオを描きましたか?

40代からのスターティングノート―あなたはもう、自分の人生シナリオを描きましたか?

  • 作者: 関 眞次
  • 出版社/メーカー: 日本経済新聞出版社
  • 発売日: 2011/08/26
  • メディア: 単行本(ソフトカバー)

少しSF風の小説として描かれており、人生の残り20年の計画を主人公が7つのFをキーワードに考えていく内容です。タイトルとしては40代ですが、40代後半から私のような50代が対象だと思います。7つのキーワードは、以下の通りです。
① Finale ― 人生の目標、仮のゴール
② Family ― 配偶者、子供、両親、親族
③ Field ― 活動の場。何をしたいのか?
④ Faculty ― 能力、技術。何ができるか?
⑤ Finance ― 財産、お金。生活必要資金
⑥ Friends ― 友人、知人。誰が本当の友だちか?
⑦ Fight ― 元気。やる気。心と体の健康
主人公である50歳の安部玲二の前に、14年後の未来の本人が現れ、iNoteというデバイスを与えて、それを通して7つのキーワードに関して主人公に考えさせるというストーリーです。パラレルワールドというSFの要素が入っており、途中で予想もしなかったような展開になります。

高度経済成長期であれば、60歳の定年退職を迎えてから、その後の自分自身の人生設計を考えれば良かったのかもしれません。なぜなら、組織を離れるのが定年になってからだったからです。しかし、今日では、組織を離脱するのは、定年に限られる訳で無く、独立、転職、あるいは早期退職など、早い段階で起こり得ることです。そのため、本書は、40代から自分自身の人生設計を考えてもらうためのきっかけとしての物語になっています。

私自身は、11月で52歳になります。ソフトウェア開発にどれだけ直接従事していたかということを振り返ってみると次のようになります。

1978年4月~1984年3月 大学で情報工学を学んだ期間です。
1984年8月~1996年8月 製品開発に従事し、米国駐在も経験した期間です。
1996年9月~1998年4月 直接自分でプログラミングをするという開発は行っていない期間です。
1998年5月~2003年1月 自分では直接プログラミングしなくても、技術教育やライブラリー設計をしたり、設計・コードレビューを多く行った期間です。途中、短いですが、再び米国駐在しています。
2003年2月~2008年12月 部門長でしたが、製品開発に直接従事し、設計からプログラミング・デバッグまで多くを行った期間です。
2009年1月~現在 残念ながら直接製品開発に従事していない期間です。

一方、2000年からは私的な活動として、雑誌の記事や書籍の執筆、技術書の翻訳を行っていますし、2009年からは一般の講演も行うようになっています。

この本のサブタイトルではありませんが、自分の人生のシナリオを描き直す時期かもしれません。

書籍『Being Geek』(3) [転職]

Being Geek ―ギークであり続けるためのキャリア戦略

Being Geek ―ギークであり続けるためのキャリア戦略

  • 作者: Michael Lopp
  • 出版社/メーカー: オライリージャパン
  • 発売日: 2011/06/25
  • メディア: 単行本(ソフトカバー)

副題にあるようにキャリア戦略なので転職の話が色々と書かれているのですが、その中で「転職先の価値を見極める」(p.27)には転職先には「新しさとは別の、独自の価値があるかどうかが大切である」と述べられた後に、次のように述べられています。
 会社に独自の価値があるか、また、その価値とは何かがわかれば、次に問うべきことは、「そこで本当に自分のやりたいことができるか」である。むしろこの方が重要な問いだろう。それが自分の将来を左右する。また、この問いに答えるには、自分が本当にやりたいことは何かを考えなくてはならない。
 本当にやりたいことは何か、一言で明確に答えられなくてもいいだろう。私にもまだ明確な答えはない。だが、答えるのが非常に難しい問いだからといって、答えなくてもいいという意味にはならない。たとえおぼろげな目標だとしても、転職先の会社が、その目標に向かう上でプラスになるかどうかを考えることはできる。その会社に移ることで、目標に一歩でも近づけそうだ、と自分が感じるかどうか、それが最も大事である。
 つまり、転職先を選ぶというのは、ただ会社を選ぶというよりも、自分の進むべき道を選んでいるということなのだ。その道が本当に自分の進みたい道なのか、それをじっくり考えて決断すべきだ。
私自身が4回転職し、この部分は非常に耳が痛い話です。自分が何をやりたいかとうことは、若い頃には明確であった訳ではなく、色々な職場を経験して、徐々に明確になってきている気がしています。

しかし、4回目の転職がその目標に一歩でも近づいたと感じるかと問われるとしたら、大幅に後退したと言わざるをえません(感覚的には10年は戻った感じです)。では、何も得られていないかというと、そうでもなく、後退した結果、転職する前の位置までの道のりがどのようなものであったかが良く理解できるようになりました(「教育、場、権限」)。

後退した結果、同じ道のりを歩んで後退前の地点まで戻ることはあり得ないと思っています。それは過去の道のりであり、今歩んでいる道のりとは異なるからです。今の道のりで後退前の地点を遙かに超えたと言えるような地点まで歩めるのか、あるいは、もっと手前で別の道を歩むかは今は分かりません。

転職(5) [転職]

転職(4)」で少しだけ現状を振り返っています。さらに、追記です。

技術教育を通して様々な事柄を教えていっても、開発の現場で実践される可能性は非常に少ないです。その主な理由は、開発現場での日々の活動や改善に対して、私が直接開発メンバーとして関与していないため、私からの教育やアドバイスを受けても、結局は現場の思惑で物事が動いていってしまいます。

つまり、教育に関しては、他に教える人がいないので単なる教育者としての活動を行わされているに過ぎず、さらに、教えたことが開発現場で実践される訳でもないのが現状です(「教育と場」)。

一方で、様々な開発グループに対する教育やコンサルテーション活動の他に、私自身は開発を行うグループに属しています。その開発グループに対して、残念ながら属している言えるような開発活動を私自身は行っていません。

私の経験からするとどう考えても1990年代までの開発手法であるため、様々な課題に気づくことが多いです。しかし、残念ながらそれらの課題が長期的なソフトウェア開発に与える影響に関して、現場のメンバーや技術リーダーには認識されないため、私自身が説得する気力をすでに失っています。

たとえば、レビューを受けてきたことがない人のコードをレビューして、色々と指摘して、最後は一緒にペア・プログラミングして、Eclipseの効率的使用法も教えながらコードを良くしたのに、「納期が厳しいのに本人に余分な工数がかかった」と言われてしまいます。

開発活動を行っていない実際の理由は、私自身に何らかの開発が任されていないことです。何も任されていないのですから、開発していないのは当然です。

結論から言うと、私自身は、「seeking a change of employer」状態です。とは言っても、現在行っている社内向けの「プログラミング言語Java」教育は最後まで終了させるつもりです。また、始めたばかりの『Linux Kernel Development』読書会は、もし再び転職するようなことがあれば、希望者だけで週末に継続して行うことになるかと思います。

※ 開発環境を整備しないと、とても開発する気にはなれないので、開発環境の整備を提案して、そのための活動は行ってはいます。しかし、やりたいことが「環境整備、テスト駆動環境作り、テストコード作成など」で、「開発をしたいのではない」と周りが勝手に思い込んでしまうのには困ってしまいます。

【2011年7月14日追記】 
開発環境を整備したら、レンタル契約切れのサーバの契約更新も仕事だということで振られて、完全にサーバ担当者扱いです。この会社では、マネージャは何もせずに、すべての雑務を現場に押しつけるようです。

転職(4) [転職]

今日でちょうど一年となります。期待していた仕事を、過去一年間でできたのかで評価すると、残念ながら評価点はかなり低くなります。

個々のソフトウェアエンジニアが継続的に学習を続けて、組織全体が成長するという観点では、一年前と比べると良くなってきてはいます。しかし、その変化は、非常にゆっくりとしたものです。また、本を読めば書いてあることさえ、教育コースを作って教えなければならないという状況に、あまり変化はみられません。(「教育と場」)

自分自身の成長という観点からは、会社の業務を通しての技術的スキルの向上はほとんどないです。その主たる原因は、「Be the Worst」にはほど遠い環境だからかもしれません。一方で、ソフトウェア開発の最終成果物であるコードを軽視するというソフトウェア開発組織の文化を経験できたことは、「読みやすいコードを書くことの重要性」やそのための「継続した学習」を強調している私にとっては、逆説的に言えば、(未経験なことを経験しているという意味で)良い経験になっているかもしれません。

この一年間を振り返ってみると、今後何年も留まる理由を、残念ながら今は見いだしていません。

ちなみに、今日でちょうど丸一年ですので、今まで5社に勤務した中で、3番目に長い会社となりました。4番目はジャストシステムですが、364日在籍したので、1日少ないです。

転職(3) [転職]

今の会社へ転職して、今月末でちょうど6か月になります。転職に際しては、こんなことができるようになるという期待も当然あって、転職するか否かを判断しています。ということで、それらの項目を半年レビューしてみると次のようになります。

項目
内容
評価
XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
新たに多くの若手を含めた人材育成を行える機会が増える
XXXXXXXXXXXXXXXXXXXXXXXXXXXX
ソフトウェア技術者として、設計・実装・デバッグを行う開発が行える
XXXX

項目1、2、4に関しては、内容は伏せてあります。

項目3に関しては、「プログラミング言語Java」、「ソフトウェアエンジニアの心得」、etcと色々な教育を行っていますので、〇という評価です。会社での工数のほとんどがこれに費やしているとい言っても過言ではないです(【追記:2010年7月16日】参照)。

項目5は、会社での工数の4割弱程度は、設計・実装・デバッグを行うことが希望であるということで、採用面接時にも述べていますが、実際には全くそのような活動はやっていないし、やらない組織に属していますので、評価はです。

単純に考えると、工数のかなりの時間を費やしている項目3が〇だから、全体評価が〇になるのですが、そんなことは全くありません。私個人にとっての全体評価では、項目5がである限り、他の項目の評価は意味がありません。

そして、やはり、どんな会社でも、入社してみないと分からないことが多いのも事実です。

【追記:2010年2月23日】
最初は教育中心の支援的な活動でも仕方ないと考えていました。しかし、製品開発に直接従事して、設計・実装・デバッグまでを行える見込みはなさそうです。つまり、今回の転職は、私にとっては失敗だったと言わざるを得ないでしょう。

【追記:2010年3月2日】
2月23日の追記の表現を修正しました。:-)

【追記:2010年3月10日】
教育では話し続けることが多いため、連日行っているとさすがに体力的に疲れます。受講された人は、ある程度は教育そのものを評価してくれているでしょうが、「ソフトウェアエンジニアの心得」教育でも書いたように、マネージャ層は興味ないのが現実かもしれません。

【追記:2010年5月18日】
4月から開発系の業務へ異動しましたが、ソフトウェア開発のやり方が、私自身にとっては1990年代に戻ってしまった感じです。

【追記:2010年7月6日】
教育と場」をブログに書きました。そして、項目3の評価を、〇から△へ変更。

【追記:2010年7月16日】
技術教育は多く行ってきましたが、育成という観点からは全く無いに等しいのです、△からXへ変更。項目5は、まだ変更なしです。

【追記:2010年7月21日】
教育と場」とも関連しますが、今、行っているの技術教育は、「プログラミング言語Java」コース以外は、単なる集合教育であり、本来私が想定していた若手の育成とは全く異なる内容です。

【追記:2010年8月19日】
転職して今月末で一年になりますが、振り返ってみると開発業務はほとんどやれていません。

【追記:2010年10月20日】
項目5をXXに変更。

【追記:2011年03月11日】
項目3と5にXを一つ追加

【追記:2011年07月14日】
完全に全項目が駄目です。ということで、真剣に次を考え始めています。

【追記:2012年03月27日】
最初にこの記事を書いてからすでに2年が経過しましたが、4月からまた全く開発をしない組織への異動となってしまいました。

【追記:2015年01月07日】
2013年7月から自分がリーダを行う開発グループを持って、その後、増員することで、実際の開発を通して育成ができるようになったので、項目3を〇に。しかし、逆に、自分自身の工数は、全く開発に費やすということはできていません。今後、グループが大きくなればなるほど、自分自身では開発ができそうにないので、項目5のXが4個です。

【追記:2017年6月21日】
自分がリーダを行う開発グループは、2年前の2015年5月末で解散。その後、部下を持つこともなく、直接育成する若手もいない状態なので、項目3をXに修正。

【追記:2017年8月31日】
この記事の更新も今日で終わりです。

6ヶ月目 [転職]

転職して、昨年9月から働き始めて、今日から6ヶ月目です。過去の転職でもそうでしたが、会社というのは、会社の外からは分からないことが多く、実際にそこで働き始めて分かることが多いです。逆に、同じ会社にずっといる人は、自分の会社が他の会社とどのように違うのかが当然分かりません。

私自身は、会社としては、今の会社が5社目ですが、全く新しい人達と一緒に仕事を始めた職場としては、米国での3ヶ所を加えると、実質8社目です。それだけ、様々なソフトウェア開発組織でソフトウェアを開発してきたことになります。

しかし、ある会社の中での成果や評価は、やはり、その会社の中で閉じられてしまいます。そのため、今後は、ますます、外向きの活動をソフトウェアエンジニアにも、求められてくる時代がきているような気がしています。

ソフトウェア開発では、DRY(Don't Repeat Yourself)ということで、重複したことを行わないことが重要であるとされています。しかし、会社の中で自分の頭で考えて生み出したものでも、転職という機会に(頭の中に残っていても)失われていきます。新たな会社で、同じことを繰り返さないためには、普遍的な事柄というのは、やはり、外向きの活動として公けに残していく必要があると考え始めています。

今日で一ヶ月目が終り [転職]

転職しての一ヶ月目が今日で終りです。で、この一ヶ月で何が変わったかというと
  • 飲み会が激減。以前は、Java教育の日に教育が終わった後に生徒の人達との飲み会が月に2回、部門の月例飲み会、それに「飲みに行こうか?」という会社帰りの飲み会。私の肝臓には非常に良いことかもしれません。
  • フレックス勤務ではないので、朝、家を出る時間が毎日同じです。
  • 通勤時間が長くなり、多くの本が読めるようになりました。(「長くなった通勤時間」)
  • (まだ何も開催していないので)朝の勉強会がありません。(そのうち開催しようかと考えています)
  • 当然ですが、新しい職場で多く人達と仕事をするようになり、知り合いが増えました。
  • 通勤のために歩く距離が前よりも長くなりました。
  • 今のところ、職場の自分の机の上が綺麗です。以前は、1台のWindows PCと2台のLinux PCの合計3台のPCに加えて、書籍が何十冊とありました。今は、1台のWindows PCと本が数冊だけです。

転職(2) [転職]

プログラマー現役続行 (技評SE新書)

プログラマー現役続行 (技評SE新書)

  • 作者: 柴田 芳樹
  • 出版社/メーカー: 技術評論社
  • 発売日: 2007/09
  • メディア: 新書

雑誌に掲載した記事を編集・修正して新書として出版したのが2年前です。もともとは、2000年の頃から始めた「プログラミング作法」教育で話してきた内容を雑誌の記事として執筆してきたものです。講演や教育で行っている「ソフトウェアエンジニアの心得」は、この本に書かれている内容に加えて、最近の私の経験に基づく話をしています。

第2章「プログラマー現役続行」の「社外からの評価の重要性」(32頁)では、次のように述べています。
 グーグルとは異なり、多くの日本企業では、若いうちはプログラミングを行い、ある程度の年齢になったらマネジメントを行うことが期待されている場合がほんとんです。つまり、「プログラミングは給料の安い若い人の仕事、マネジメントは給料の高い偉い人の仕事」という認識です。

社外からの評価の重要性
 このような環境の中で、生涯現役でプログラマーとして活躍していくためには、会社の中の評価ではなく、社外の評価を求めていかざるを得ません。そうでなければ、さらに上を目指すという動機を維持することは困難だと思います。
 若手を育成するという強い意識を持って、そのための教育の推進や実施、あるいは勉強会の開催などを継続して行えば、ある程度会社の中でも認められるようになります。しかし、それは、会社の中で積極的に育成活動をしていない人が多いために、相対的に認められているにすぎない場合が多いのです。
 このように、会社内の評価はあくまでも相対的であるとしても、社外からの評価が相対的になることはありません。社外からの評価を得るには、ソフトウェア業界であれば、技術雑誌に記事やコラムを執筆したり、専門書を執筆したり、講演をしたりすることだと思います。
 さらに、そのような活動に加えて、トレーニングコースなどの講師を務めることや、社外の技術者のコミュニティへ参加するのもよいかと思います。さらには、オープンソースのソフトウェアへ貢献することも含まれるのではないでしょうか。

昨年、英語を使う機会がないので、話をする機会でもということで青葉台のGabaに通ったことがあるのですが、その時に、講師の一人の先生から「技術書の翻訳は、趣味か?」と聞かれたことがあります。趣味ではないと答えたのですが、じゃ、なぜやっているのといことになって考えてみると、「一種の義務」だという答えになりました。多くの日本のエンジニアに読んでもらいたいと思うから行っていると。(「技術書の翻訳」

このように、プライベートな時間で翻訳、執筆、講演を行ったり、業務で社内外への様々な教育を行いながら、部門長業務を行うことで、バランスを取りながら、私自身はモチベーションを維持してきたのだと思います。モチベーションは誰かに上げてもらうものではなく、自分で維持するものだと思っています。※1

しかし、過去一年半は、会社外の活動だけでモチベーションを維持するのが、困難になってしまったのが正直なところです。私自身が直接開発をしない※2にしても、ソフトウェア開発を行う上で私自身が重要だと考えて活動してきたこと(若手を育成して、きちんとしたソフトウェアを開発する組織作り)が評価されなかったり、拙著の中で述べていることが理解されようともしなかったりすると※3、多くの時間をそのような組織の中で過ごすことは自分の人生の無駄遣いとなってしまいます。※4

「Don't Listen to Your Parents」で引用した言葉を借りれば、「人生の残りをその組織で働くことは、私の運命ではない」ということです。

過去の転職もすべて事後報告でしたが、今回も両親への報告は事後報告でした。親は、子供が何歳になっても、大丈夫なのかと心配してくれます。最後は、「自分で決めたことだから頑張りなさい」と言ってくれました。

※1 50歳にもなるような社員が、人事制度や評価制度が不満だと言って、年下の20代や30代の人事部に自分のモチベーションを上げるようにしてくれというのは、変ですからね。
※2 部門長でしたが、2008年末ぐらいまでは、私自身でも設計・実装・デバッグまで行っていました。
※3 贈呈しても、読んだとか感想とか聞いたことがないので、もともと読まれていなければ理解しようとする以前の問題になりますが・・・
※4 4月20日時点で「〇〇〇〇で働く意義を感じなくなっている」と上司へ提出したあるドキュメント中にコメントしています。

転職 [転職]

1998年5月から勤務してきた富士ゼロックス情報システムを8月末に退職して、転職します。実は、転職することは、すでに何回か書いています(「開発チーム(組織)の成長」「Don't Listen to Your Parents」「今日はJava教育」)。

大学を出て就職した頃は、まさか何度も転職するとは思っていませんでした。今回は、4回目の転職となり、今まで勤務してきた4社では様々な経験する機会を与えてもらったと思っています。

今日はJava教育 [転職]

8月末で退職するので、8月1日からは部門長でもなくなり、ほぼ有給休暇の消化モードなのですが、社内教育として行ってきた「プログラミング言語Java」教育だけは行っています。

第9期は、予定通り今月で一年間の研修が終了です。第10期は、途中で打ち切りとなってしまうため、本来なら月に1日だけなのですが、今月だけは1日追加して行います。それで、なんとか『プログラミング言語Java第4版』だけでも終了させたいと思っています。

「第8期「プログラミング言語Java」教育終了」「第7期「プログラミング言語Java」教育終了」