Ruby
キャリア
若手
生存戦略
まつもとゆきひろ

[ まつもとゆきひろ氏 ]若手エンジニアの生存戦略

エンジニアになるのは10月からですが、参加してきました。

以下素人なりに、自分なりの解釈でザックリ、まとめたいと思います。

以下、本日の内容まとめたものになります。

まつもとゆきひろ

皆様ご存知、Rubyの開発者です。

導入

ロールモデルの生存戦略は人によって違う。ただ、抽象化して当てはめることはできる。

成功者のパターン学習により、成功に近づく。

スタートアップ成功者共通の特質 : パターン認識能力

バタフライ・エフェクト : 些細な違いのインフルエンスが結果を大きく変える。

世の中のだいたいのHowTo本は美化されている。パターンとして認識し実行する程度にとどめておく。

まつもとさんの略歴

12歳でpcを触る。ボードマイコンに遭遇。
15歳でポケコン( 400行制限、ユーザー定義関数なし、変数は一文字 )。pcについてわかってくるようになる。
「pascal入門」に出会う( 当時で言うところのC言語 )、ひたすら写経
世の中の、目的に沿ってデザインされた様々なプログラミング言語に興味を持つ。
大学に進学。コンピュータサイエンスを学ぶ。当時からプログラミング言語を作りたいと言う欲求はあった。研究室は言語開発でなく、コンパイルについて。
卒業後、東京で働きたくなかった。鳥取→筑波→?
浜松に就職。同期200人、CS専攻6人のバブル採用。
鶏口牛後。ソフトウェアがどうあるべきか若いうちから裁量を持てた。
「みんながやっている」は我慢の理由にならない。
我慢に価値はない。日本の社会的圧力としてある程度存在している。

プログラマ三代美徳

  • 怠惰- サボるための労力を惜しまない。効率化を追い求める。
  • 短期- コンピュータが怠慢な時に感じる怒り。改善しようとプログラム改変を行いがち。
  • 傲慢- 自分の作品(プログラム)に自信を持つ。

死の鎖 : 日本社会的同調圧力

社会的な同調圧力に対しては鈍感であるべき。
Ex).少数派に所属し、競争を避ける。松本さんは、プログラミング言語がニッチな分野だったからこそ、突出できた。

  • 積極的に裏技を見つける
  • あえて空気を読まない
  • 目的を明確化する

Don’t work hard , work smart.

拒否の仕方

エンジニアは、上の言うことを聞くことが仕事ではない。
ソフトウェアを開発し、会社に利益を与えることが仕事。

ただ、わがままを受けてもらえる土壌は信頼関係があってこそ。

WinとLoseの組み合わせ

7つの習慣より
永続的な取引ができるのは2/7
→ Win WinまたNo Deal

結局のところ、自分を知ることが一番大事。

武器を伸ばし、短所を認識する。
松本さんの武器はプログラミング言語だった。

思い込みについて自覚的になる

思い込み == キャッシュ
インバリデーションのないキャッシュ
意識的キャッシュインバリデーション
思い込みはとても怖いもの。知らず知らずに間違った方向に進んでしまう。プログラムのバグも同じ。
プログラマーの仕事は問題解決→問題把握→分析→ソリューション提案→ソリューション実装→テスト
Ex.) よくやる失敗を弾き出す。→もっと便利なツールを

同じ原則は人生に適用できる。プログラマは人生の勝ち組になりやすい。かも。

コントロール意識

生産性を下げるものは何か?

一説によれば、叱るとエンジニアの生産性は60%下がる

まつもと氏の見解では、強制されると生産性が下がる、つまり個々人のコントロール意識を制限すると生産性は下がる。
逆を言えば、コントロール意識、裁量を持つ、持たせることが生産性を高めることにつながる。

アルファシンドローム・逆アルファシンドローム

プログラマの楽しみの根源は万能感にある。
コンピュータをあくまで道具として使う。
コンピュータはあくまでツール、奴隷になるな。
恐れ、不安、疑念は自分の価値と関係はない。

勉強する

本を読む。インプットでは差別化要因になりづらい。
アウトプットこそが差別化要因につながる。
羞恥心を捨てる。
チャンスがない。 → アウトプットを恐れている
人間の可塑性(環境適応能力)にかける。立場によって人間は成長、変化することができる。
心理的な怖さを乗り越えて、可塑性にかけアウトプットする。
ソフトウェアエンジニアにとって心理的、人間的な側面がとても大切。

Q&A

・意思の強い部下ができたら
組織の秩序を守るか、エンジニアリングを大切にするのか。答えがどうであれ指導指針をブラさない。

・女性エンジニアとして生き残るには
根本として信頼関係を構築できればいいので、男性エンジニアと差のない組織に行けばいい。

・人格者として振る舞う
お互いが‘ フェア ’ であることを大切に。

・失敗について
Ruby開発中、Perlを参考に余分な機能を入れてしまった。

・会社員かフリーランスか
正解はない。柔軟に環境に時代に合わせて対応しよう。

・情報収集方式は?
大したことはしてない。
Twitter
RSSリーダー → hacker news ,stack overflow,Reddit

・大学は畑違いだったが、コンピュータサイエンスをまなびたい
今から体系的な勉強するのは現実的でないので、ボトムアップで知りたいことから広げていく。

以上、箇条書きですが、右も左も分からない状態で業界に飛び込もうとしている身として、とても充実した時間を過ごせました。