見出し画像

「エンジニアの心を整える技術」をnoteで2章まで無料公開します! #感想まとめ #技術書典6

このnoteは、2019年4月14日に開催された「技術書典6」で頒布し、これまで600部以上(書籍+PDF版)販売している「エンジニアの心を整える技術 - 誰でも実践できる心のリファクタリング術 - 」のPDF版のダウンロードページになります。

技術書典6での当日の販売の様子です。

ものすごい勢いで書籍版は技術書典の開始早々に売り切れてしまいました。
足を運んでいただいたのに買うことが出来なかった皆様、まことに申し訳ありませんでした。

そして、これまで本書を購入してくださった方々、本当にありがとうございます。
著者として感謝感激です。

ここでは、「エンジニアの心を整える技術」の1章、2章を無料公開いたします。
また、このnoteをご購入いただくと「エンジニアの心を整える技術」のPDF版のダウンロードが可能になり全編読むことができます。

また、読者からの感想をまとめています。合わせてご覧ください。

【BOOTH でもPDF版を絶賛販売中】です!
https://karamage.booth.pm/items/1309156

読者の感想まとめ

読者からのTwitterの反響を載せさせていただきます。

書籍頒布物紹介


「エンジニアの心を整える技術」92ページ / ¥1200

目次

第1章 「心を整える技術」が必要な理由
1.1 憂鬱な月曜の朝
1.2 はじめに
1.3 心を整えることができないと仕事もうまくいかない
1.4 本書について
1.4.1 心のリファクタリング
1.4.2 マインドフルネスは、エンジニアの不安やストレスをやわらげる
1.4.3 アドラー心理学は、人間関係で悩むエンジニアにオススメ
第2章 メンタルの弱い私が IT 業界でこの先生きのこるための技術
2.1 メンタルの弱いエンジニアは多い
2.2 心を整える前に、職場環境を変えよ
2.3 My炎上プロジェクトの体験記
2.3.1 突然、火を噴くプロジェクト
2.3.2 月の残業時間200時間超えが続く
2.3.3 怒号が飛び交う現場
2.3.4 突然泣き出すプログラマ
2.3.5 会社から逃亡して行方不明
2.4 エンジニアの心が折れる瞬間
2.5 生きづらさと向き合う
2.5.1 世界の解像度が落ちる
2.6 ワイ、SIerから異世界転生する
第3章 IT 業界で心を壊さないための技術
3.1 IT技術者はメンタル不調な人が多い
3.2 エンジニアのメンタルがヤバくなる兆候
3.3 IT技術者の不足
3.3.1 2030年にIT技術者が40〜80万人不足
3.4 ITの現場は戦場だ
3.4.1 人月という名の現代の奴隷制度
3.5 SIer
3.5.1 「システムエンジニア」は「エンジニア」ではない
3.5.2 Excel方眼紙
3.5.3 SES
3.5.4 偽装請負
3.6 人手不足で一人一人の負担が大きい
3.6.1 常に納期に追われる
3.6.2 バグなどの突発的システムトラブル
3.7 ウォータフォール開発
3.7.1 不確定要素の多い仕様変更
3.8 IT業界で心を壊す環境四天王
3.8.1 ストレスが多すぎる
3.8.2 残業、⻑時間労働
3.8.3 低賃金
3.8.4 対人関係が最悪
3.9 転職のすすめ
3.9.1 いつでも転職できる状態を保つことが最強
第4章 エンジニアが今この瞬間を生きるための技術
4.1 サーチ・インサイド・ユアセルフ
4.1.1 Googleのチャーディー・メン・タン
4.1.2 一日ひと息だけ、これから一生やること
4.1.3 マインドフルネス瞑想の効果
4.1.4 瞑想のコスパは最強
4.2 かんたん!1分でできるマインドフルネス瞑想
4.2.1 Googleでもやってるマインドフルネス瞑想
4.2.2 メタ認知力
4.3 プログラミングの一休みにマインドフルネス瞑想
4.3.1 プログラミングの途中で適度に休息を取ろう
4.3.2 通勤電車の中でもできるマインドフルネス瞑想
4.4 ランチのときの食事瞑想 (マインドフルイーティング)
4.4.1 海原雄山のように食事する
4.5 ランチ後に歩行瞑想 (マインドフルネスウォーキング)
4.6 コードを打ちながらタイピング瞑想 (マインドフルネス・タイピング)
4.7 寝転がりながらできる身体感覚瞑想 (マインドフルネス・ボディスキャン)
第5章 IT 業界で役に立つアドラー心理学
5.1 マインドフルネスとアドラー心理学の共通点
5.2 原因論から目的論へパラダイムシフト
5.2.1 私がコミュ障なのはパソコンオタクだったのが原因?
5.3 劣等感にさいなまれるエンジニア
5.3.1 エンジニア的劣等コンプレックス
5.3.2 技術マウンティングは劣等コンプレックスの裏返し
5.4 エンジニアの自己受容
5.4.1 不完全である勇気、失敗する勇気
5.5 すべてのシステム開発の問題は対人関係である
5.5.1 システム開発における「課題の分離」
5.5.2 自分の課題、他人の課題を分ける
5.5.3 バグを憎んで人を憎まず
5.5.4 他者の期待を満たす必要はない
5.5.5 他者の課題に土足で踏み込まない
5.6 若手エンジニアを育てる
5.6.1 しかってはいけない、ほめてもいけない
5.6.2 評価ではなく、感謝する
5.7 エンジニアの承認欲求を否定する
5.7.1 プログラミングで承認欲求が満たされる?
5.8 対人関係で傷つくことを恐れないために
5.8.1 エンジニアの約束された勝利の剣
5.8.2 自己肯定感を上げるために小さな成功体験を積む
5.9 「嫌われる勇気」でエンジニアとして正直に生きる
5.9.1 エンジニアの「人生のタスク」
5.9.2 クソをクソと言える素晴らしさ
5.10 「共同体感覚」を持って、問題に立ち向かう
5.10.1 心理的安全性
5.10.2 「問題」VS「私たち」

----------------------------------------------------

「エンジニアの心を整える技術」 本文(2章まで無料公開中)

第1章 「心を整える技術」が必要な理由

もし仕事に行きたくなくなったら、そのまま反対の電車に乗って、海を見に行くといいよ。
海辺の酒屋でビールとピーナツ買って、海岸に座って
陽に当たりながら飲むといいよ。
ビールが無くなったら、そのまま仰向けに寝ころんで、
流れる雲をずっと眺めるといいよ。
そんな穏やかな時間がキミを待ってるのに、何も無理して仕事になんか行く必要ないよ。
-- ネットの有名コピペより引用


憂鬱な月曜の朝


月曜の朝、アパートの窓から外に目をやると、朝の7 時 20 分なのに薄暗かった。

その日の田園都市線は人身事故のため 40分遅れで運行中。


田園都市線のヤバイほどのぎゅうぎゅう詰めのラッシュに揺られて職場に向かう。


混雑時の通勤電車に乗り込むのは、戦場に向かう兵士の気分のようだった。
戦場には行ったことないのでよくわからないけど (笑 

車内は、すん、と湿った匂いが充満している。ちょっとくさい。


死んだような目で、電車の窓から外の風景が流れていくのを、ぬぼぉーっとぼんやり見ていた。

多摩川の鉄橋を渡る際、電車の窓にぽつぽつと雨が降って水滴を垂らすのを見ながら物思いにふける。


今日は、朝から進捗会議。


しかし、担当しているモジュールの製造の進捗は芳しくない。

胃が痛い。

前工程の要件定義がなんどもひっくり返って、出戻りが発生しているのが原因。

スケジュールは、もうすでに二週間も遅れまくり。ため息しか出ない。


電車は二子玉川を過ぎて、真っ暗なトンネルに入り、地下に潜っていく...


真っ暗な窓を見つめていると、ずっと頭の片隅にこびりついている上司の顔が浮かんできた。

...


先週の進捗報告会議では、上司に


「進捗が遅れている」と正直に言うと、


「ひょっとして、甘えているだけじゃないか?」
 いや、甘えてないっす。


「なぜ、できない? できない理由を言え」
そもそも無理なスケジュールだからですよ。


「何としてでも納期を死守しろ。絶対だ」
今のリソースでは、とても手が足りていないじゃないっすか。


「じゃあ、もっと効率よくやれ!」


と烈火のごとく激怒された。


上司いわく、土日や残業すれば、問題なくスケジュールは守れると豪語していた。
おいおい、すでに休日出勤も残業も名一杯した状態なんだが、これ以上どうしろというのか。

すでに一日あたりの稼働時間は 16 時間を超えていた。


上司曰く「1 日の稼働時間を 18 時間にすればいける」とほざいていやがった。 

何度も上司にリスケをお願いしていたが認められない。
なぜならその上司は、顧客にはオンスケでプロジェクトが進行していると、嘘の進捗をしていたからだ。

そんなん状況報告隠蔽だろ。ふざけるな。


このままプロジェクトを進めるのは無理。ムリムリムリむりカタツムリ


「まじしんどい、おかしいじゃん...つらっ...」


と不意に声に出してしまって、周りの乗客に気づかれないか焦った。
慌てて咳払いして、うつむいて誤魔化す。


気がつくと手に汗をかいて、唇を強く噛んでいた。


今日、生き残れるのか。


いや、無理じゃね


もう仕事疲れた。辞めたい。会社に行きたくな...


電車が会社の最寄り駅に着いた。


電車のドアがプシューと開き、人並みに流されて押し出された。


はじめに


「エンジニアの心を整える技術」を手に取っていただきありがとうございます。本書は、 IT 業界で働くエンジニアの「心」 について書いた書籍です。
IT 業界って 肉体的にも精神的にも辛くてキツイ 職場が多いですよね。

そんなことないですか? 

最近だとエンジニアに優しいホワイトな企業も徐々に増えてきているみたいですね。うらやましいですね。しかし、そんな天国のような職場は SSR*1です。
一方では、劣悪な職場環境におかれたエンジニアは、うつ病になって休職したり、辞めてしまう人が多いです。
また、 心の問題を抱えたまま働いている人も多いです。


IT 業界で心の病気の人ってどれくらいいるんでしょうか? 

気になったので、ちょっと調べてみました。
少し古い資料なのですが、以下を御覧ください。


厚生労働省の患者調査によれば、気分 [感情] 障害 (躁うつ病を含む) の総患者数は、 平成 8 年には 433,000 人だったのが、
平成 14 年には 711,000 人、
平成 20 年には 1,041,000 人
となっている。
-- IT 関連企業従業員のメンタルヘルスを中心とする 健康状態に関する調査 より


まじでビックリですね。平成 20 年の時点で、なな、なんと、

IT 関連企業には、 100 万人以上もの心の病気を抱えた人がいます。

恐ろしい数字じゃないですか。

(※1) サーバサイドレンダリングではありません。スーパースペシャルレアの略

本書の概要


一般的に、エンジニアの仕事は心を壊しやすいと言われています。
それは何故なのでしょうか?
本書では、 私の過去の炎上プロジェクト体験を元に、エンジニアが心を壊しやすい状況をストーリー仕立てで書いています。そして、エンジニアに必要な「心を整える技術」を解説しております。
本書では「心を整える技術」として、具体的に以下のようなことを書いています。


•  メンタルの弱い私が IT 業界でこの先生きのこるための技術
•  IT 業界で心を壊さないための技術
•  エンジニアが今この瞬間を生きるための技術
•  IT 業界で役に立つアドラー心理学...などなど


テーマはエンジニアの心です。心は触ったり視ることができないために、なかなか捉えることができない、扱いがとても難しいものです。自分の心は自分で一番わかっているつもりでも、実は何も理解できていないことが多いです。ましてや他人の心を理解するなんて、宇宙の端っこがどうなっているかを理解するのと同じくらいに難しいものです。これまで生きてきて人の心がわからないと感じたことが何度もあります。
でも、 わからないことをわかるようになるのって面白くないですか?
エンジニアの仕事は、知らないことを学習して知っていく過程が面白いと思っています。日々、知的好奇心をくすぐられて、色々な技術を学んでいます。その一環として、「エンジニアの心を整える技術」を書くことによって、私も一緒に学ばさせていただきたいと思います。


知らなかったことを知るのが好きなんです!
-- りーちゃん(SHIROBAKO 14 話)


心を整えることができないと仕事もうまくいかない 


本書を通じてもっとも伝えたいことは、
エンジニアは心に問題を抱えていると、いくら技術やスキルを持っていても仕事の成果は出ないということです。
技術者としてせっかく持っている能力を発揮できないということです。
多くのエンジニアは、仕事ができないのは、知識やスキルが足りないからだと考えてしまいがちです。ですので、プログラミングの勉強してみたり、技術書を買って読んでみたり、勉強会に参加してみたり、資格の取得に励んだりします。
しかし、 技術やスキルの習得では、根本の心の問題が解決しないことが多々あります。
例えば、上司との人間関係であったり、プロジェクトの行く末の未来が見えない不安であったり、会社で就いている役職の責任の重圧がストレスだったりします。
もし、あなたが仕事の成果をもっと出したいと思っているのであれば、技術やスキルの習得ではなく、心に目を向けることも必要です。つまり、すべての社会活動において整った心が土台にあり、その土台の上に技術やスキルが乗っかることで、はじめて仕事の成果を発揮できます。土台となっている心の部分がグラグラで脆弱な状態では、いくら技術を習得しても、仕事で成果を出すことは難しいわけです。ですので、社会活動の土台となる「心」の部分に焦点を当てていきます。


エンジニアの「心」とは


一言に、「心」と言っても、広い意味、範囲があります。
本書で書く「心」とは、 感情、気持ち、思考、言葉、マインドセット、成⻑ といったものを含みます。 我ながら難解なテーマを選んでしまいました。どうまとめていけばよいか、自分でもよくわかっていませんが、なんとか知恵を振り絞って書いていく所存です。つたない文章です が少々お付き合いください。


心はソフトウェアと同じで、形がありません。


形がないので、視ることができません。
観念上のものを認識するためには、言語化が必要です。

人間は言語化されていないものは、取り扱うことができません。 コントロールすることもできません。
これはとても不便なことです。 しかし、エンジニアとして仕事をしていく上で、心の問題は避けては通れません。今回、 この取り留めもないエンジニアの心について書いていこうと決めました。それは、この文章を書くことによって、あなた、もしくは他の誰かの助けになれれば、こんなに嬉しいことはないと思ったからです。


アニメ『SHIROBAKO』について


突然のコラムコーナー失礼いたします。 唐突ですが、私は、アニメ『SHIROBAKO』が好きです。ちなみに一番好きなキャラクターは矢野さんです。
SHIROBAKO はアニメ業界で働く人の物語です。
しかし、SHIROBAKO のストーリーは、どの業界/会社でも、どんな職業でも同じことが言えると思うこともあって、本書では随所に SHIROBAKO の名言を引用させていただいています。
SHIROBAKO で描かれる働く人の考え方や思考や心の揺れ動きは、IT 業界と親和性が高いと思います。
SHIROBAKO の主人公の一人である宮森あおい(通称みゃーもり)は、物語の冒頭3話くらいで、働くことのストレスや心労によって心を病みそうになります。

本書について
本書を書こうと思ったきっかけ

この本を書こうと思ったきっかけは、自分自身が、本書を必要としていたからです。私は、十数年エンジニアとして、仕事をしてきました。
思い返せば、常に不安や劣等感に苛まれ、悩み苦しんできました。
上司やチームのメンバーとの人間関係にもストレスを感じていました。やりたいこともなく、ただ漠然とした不安を抱えながらエンジニアを続けてきました。プログラムも仕事だから仕方なく書いていました。

やりたいことなんてない。これから見つけられるかどうかもわからない。
でも、みんながやりたいことがあるなら・・・それを、援護することは出来る。
宮森 あおい(SHIROBAKO 20 話)

エンジニアとして、日々、仕事を続けていく中で、 心が乱されると、パフォーマンスが著しく下がります。ですので、自分の心をどのようにコントロールし、安定して稼働させるのか、方法などを体系的にまとめた本を探していました。また、エンジニアとして仕事 を続けていく上で必要なマインドセットなどを言語化して整理されていると良いです。
しかし、私の観測範囲では、そのような書籍をみつけることはできませんでした。
現代は「悩みの9 割は人間関係によるもの」ともいわれます。特に、職場での人間関係には気を遣います。
エンジニアの職場での人間関係でのストレスを減らす方法は、意外と誰も教えてくれません。
であれば、自分で書いてしまおうと一念発起し、筆を取りました。


本書は、


 •  マインドフルネスな状態で仕事に取り込むにはどうすればよいか
 •  対人関係の問題にどう対処すればよいのか


を説明しています。 「エンジニアが心を整える」方法論を多くの人に知ってもらうために、本書の執筆にチャレンジしました。
あなたが本書を読むことによって、 マインドフルネスとアドラー心理学 について学び、心がリファクタリングされ、日々の仕事が充実したものになることを願っています。

心のリファクタリング

「心のリファクタリング」とは、マインドフルネスな状態を保ち、対人関係を改善し、思考の働きすぎを鎮め、 頭の中に「空間」を作ることを意味します。
エンジニアは頭脳労働者です。 年がら年中、思考が働きすぎな状態に陥っています。
IT の発達によって、PC やスマホが手放せなくなり、デジタルツールを活用してさまざまなことが手早く対処できるようになりました。しかし、未だかつてない膨大な情報量を処理することを強いられています。
人間の身体は、ホモ・サピエンスが登場した 20 万年前からあまり進化していません。 しかし、近年、情報化社会の発達により、 人類誕生以来の未曽有の情報量 が、日々ものすごい速さで私たちの頭の中を通り過ぎていきます。
エンジニアの頭の中のデータ容量がパンパンに膨れ上がってしまいます。
CPU はクロック数を上げると熱でオーバーヒートで動作しなくなるため、冷却が必要です。
でも、われわれエンジニアは自分の脳をちゃんと冷却できているでしょうか? 

「心のリファクタリング」のために、
世界で大流行しているキーワードが 「マインドフルネス」 です。
 ベトナムの僧侶ティク・ナット・ハンさんが瞑想法のキーワードとして用いたため、そこに至るための瞑想そのものを「マインドフルネス」と表現されています。Google や Apple が社員研修に取り入れたことで、一気に有名になりました。
マインドフルネス瞑想については、本書の 4 章にて詳しく説明しています。

完璧主義な価値観が職場を息苦しくしている

エンジニアは、仕事をしていると、ついつい身についてしまう性格、価値観があります。


 • 論理的
 • 合理的
 • 完璧主義


です。 一見して、エンジニアとしてこのような性格を備えるのは当然かつ正しいと思います。 一方で、不確実で、曖昧なものを受け入れがたくなるという弊害をもたらします。 

エンジニアとして仕事でプログラムのコードを書く際に、「曖昧さ」は許容されません。 曖昧なプログラムはバグを生み出すからです。


 •「仕事ではミスはできない」
 •「バグを出すことは許さない」
 •「完璧なコード、完璧な設計を目指す」
 •「納期は絶対に死守せよ。納期を守るために死ぬほど働け」


このような価値観を持った人同士が集まることで、息苦しい職場を生み出しているように感じます。
完璧主義を突き詰めることにより、私たちは、曖昧さ、人間らしさを失っていないでしょうか?
人間らしさとは、不確実で曖昧なものだからです。

人は不完全だし、十人十色で何でも一律というわけには行かないのだが、そのこと
にいらいらすればするほど、我々は人間性の本質から遠ざかって行く。
コンピュータ・テクノロジーとうまく同化した人々に見られる症状は、他者に対する思いやりの欠如、対話の不足である。
-- グレイグ・ブロード『テクノストレス』より

本書では、「完璧主義」を手放すことを勧めています。5 章で解説する「アドラー心理学」でも、完璧主義は否定されています。

完璧主義な人ほど、うつになりやすい

論理的で、合理的で、完璧主義な人ほど、頑張りすぎて鬱になりやすいです。
エンジニアの仕事は、無理なスケジュールでも、納期厳守で、納品物を納めなければなりません。品質至上主義といってもいいかもしれません。
だがしかし、全てを完璧に仕上げることは、どんなにスケジュールが余裕があっても無理です。
結果として、世の中のシステム開発案件は、何かしら問題を抱えています。完璧なソフトウェアはこの世には存在しないからです。
エンジニアが完璧を求めすぎたゆえに、完璧には程遠い現実とのギャップに苦しむのです。
もっと、曖昧さや失敗に寛容になってもいいのではないでしょうか。
昨今の、行き過ぎた完璧主義の空気には、正直、辟易しています。
失敗に対して
「ま、いっか」
で済ませられる心の余裕を常に持ちたいものです。 完璧主義になりすぎてると感じたら、意図的に適当主義にマインドチェンジして、心のバランスを取りましょう。
完璧なものを作って納品する時代は終わったのです。

「Done is better than perfect」
「多分動くと思うから リリースしようぜ」
-- マーク・ザッカーバーグ

本書の対象者

本書は、IT 業界に勤務しているエンジニアを対象にしています。
特に、私と同じようなメンタルの弱いエンジニアに向けて、この文章をしたためています。心の状態になんらかの不安やモヤモヤを抱えて働いているエンジニアの手助けとなる方法や、考え方、マインドセットなどを内容に盛り込みました。
対人関係で悩んでいるエンジニアも多いことでしょう。対人関係の悩みを改善するためにアドラー心理学についても記述しました。

今はまだ、あなたが心の不調を感じていなくても、本書に書いてある内容を読むことによって、心が壊れる予兆を感じ取れるように、私の過去の体験を書きました。
筆者の炎上プロジェクトの体験記からブラックな職場環境がどういうものか知ることができます。
そのようなブラックな環境を避けるヒントを知ることができます。
職場の対人関係の問題解決の道標になることも記述しています。

著者の紹介

はじめまして、 karamage と申します。 フリーランスのエンジニアとして AI やアプリ開発の仕事をしています。
IT 業界で働くエンジニアで、心を病んでしまう人はとても多いです。昔、私の働いていた職場でも、うつ病で心身の不調をきたして、休職や退職をするケースを何度も目の当たりにしてきました。
私自身も、仕事のストレスや人間関係、⻑時間労働が重なって、 メンタルがボロボロになった時期もありました。その頃の自分は、毎日が不安で、うつうつとした日々を送っていました。毎週、日曜の夜、月曜日の朝が来るのが不安で怖かったです。
しかし、今は仕事上の不安やストレスは激減しました。マインドフルネスな状態を保てているおかげです。
今の職場でも多少のストレスは感じていますが、ほどよい緊張感をもたらす良いストレスです。⻑時間労働は一切していません。 残業はここ数年したことがありません。労働時間を減らしつつ生産性は上げることを意識して生活しています。
仕事でいろいろな新しい技術に挑戦しています。私は元々、C 言語で組み込み系の仕事をしていました。近年では、Web の仕事で、Ruby on Rails や Vue.js を使っていたりします。スマホアプリの分野では、React Native*2や Swift、Kotlin を使用してプログラムを書いてます。最近では、機械学習の分野にも手を広げ、AI 技術を習得している真っ最中です。 技術の向上のためにコードを書いて書いて書きまくっています。

(*2) 技術書典 5 では「Re:ゼロから学ぶ React Native 入門」を書きました


速く描くには上手くなる。上手く描くにはいっぱい描く。いっぱい描くには速く描 く。技術とスピードは実は全く別の問題でね。
杉江 茂(SHIROBAKO 7 話)


毎日、新しい技術を覚えて、自分が成⻑していると感じています。
昔と違って、今は月曜日が来るのが楽しみです。次は何に挑戦するか考えるとワクワク してきます。
プライベートでは、趣味で個人アプリをたくさん開発しています。自分のアプリが TV で紹介された*3こともあります。そのアプリは、たくさんのユーザーが使ってくれています。
今の自分は、昔の自分とは大違いです。 さて、私の中でいったい何が変わったのでしょうか?
結論から書くと、 マインドセットが変わったという一言につきます。 エンジニアが仕事を上手くいくために、スキルや技術ばかりが注目されます。
言語やフレームワーク、ライブラリ、いろいろな技術を習得することはエンジニアとして仕事をしていく上で大事なことです。


しかし、一方で、「心」をおろそか にしていませんか?


仕事で成果を出すためには、スキルや技術が必要です。しかし、それだけでは駄目なのです。
スキルや技術を使いこなし、 仕事で成果を出すためには、健全な心の状態が必須です。 健全な心の状態は、すべての社会活動のベースとなります。
健全な心の状態とは、マインドフルネスな状態を指します。

(*3) 私が個人で開発した「My 感謝日記」が TV に取り上げられました。

マインドフルネスは、エンジニアの不安やストレスをやわらげる

マインドフルネスとは、「今、この瞬間を生きている」状態のことです。 心がボロボロな状態というのは、今この瞬間にフォーカスできていないということです。 過去の出来事を思い出してくよくよ思い悩んだり、未来のことを考えて不安でどうしようもなくなってしまう状態です。
私は、今、はたして本書を書き上げられるのだろうか、という不安を感じながらこの文章を書いています。


誰にも、どんなことにも初めてはあるものです。
小笠原 綸子 / ゴスロリ様(SHIROBAKO 13 話)


しかし、一方で、ストレス、プレッシャーを心地よく感じる部分もあります。以前の自分だったら逃げ出したいほどの恐怖を感じていたんですが、マインドフルネスを実践して からは、自分の感情を冷静に見つめることができ、何かチャレンジする際、平常心で一歩を踏み出すことができるようになりました。
本書では、このマインドフルネスの状態をどうやって手に入れるのかということを説明しています。


アドラー心理学は、人間関係で悩むエンジニアにオススメ

ソフトウェア開発上の問題の多くは、技術的というより社会学的なものである
 -- 「ピープルウェア」より


5 章では、アドラー心理学を解説しています。 私たちの人生は、色々な苦しみや悩みに翻弄されます。 そのすべての悩みの原因は対人関係だ、とアドラーは言い切ります。 ソフトウェア開発でも、悩みはつきないです。 

開発の多くは技術ではなく人間関係で失敗しているといっても過言ではありません。


5 章は、特に人間関係で悩んでいるエンジニアの皆さんに是非読んでいただきたいです。 ソフトウェア開発における人の問題で役に立つアドラー心理学の知識をまとめました。 アドラー心理学では、「今、この瞬間」に集中することの重要性が繰り返し説かれています。
これは、マインドフルネスの考え方と同じなのです。


第2章 メンタルの弱い私が IT 業界でこの先生きのこるための技術



大丈夫、私は大丈夫、だから、約束してアリア。 一緒に子牛を見つけに行くって
-- キャサリン・ウェラー / キャシー(SHIROBAKO 20 話より)




メンタルの弱いエンジニアは多い

私は、元々は メンタルの弱いエンジニア でした。
とにかく、新しいことに挑戦することが不安で、内向的で心配症な性格をしていました。仕事で、人前でプレゼンする日があったのですが、前日の夜は心配で寝付けなかったり、当日の朝は必ずお腹が痛くなってトイレから離れられなくなります。今ではある程度は改善したのですが、今でも根っこの部分ではメンタルは弱いです。
激務が続くと、ご飯を食べることができなくなったこともあります。食べても味がしなくて、吐きそうになります。そういうときは、 カロリーメイトやウィーダーインゼリー をむりやり流し込みます。
しかし、今でも元気にエンジニアの職を続けられています。もともと私は、臆病で内向的な性格をしていて、仕事に対していつも不安を感じて生きていました。数年前、零細SIer で働いていた私は以下のような状況でした。


•  プロジェクトが火を噴いていてどうしようもない。
•  月の残業時間が 150 時間を超えた。この状態が半年以上続いている。
•  チームのメンバーが怖い。相談したいが話しかけても迷惑そうな態度をとられる •  このままの進捗では納期に間に合いそうにない。未来が見えない。不安だ。
•  プログラムのバグがどうしても修正できない。原因がわからない。
•  顧客との打ち合わせが怖い。顧客が奴隷のように扱ってくる。
•  休日にメールの通知が鳴ると変な汗が出る。


職場の人間関係にもビクビクしていました。


•  上司が自分のことを嫌っているのではないか?
•  同期にバカにされているのではないか
•  ミスをするたびに叱られて、自分が嫌になる。
•  会議で意見が衝突するのが嫌なので不満があっても黙っている
•  自分の意見を発言するのが怖い
•  スケジュール通り進んでないと上司になぜできないのかと詰められる


しかし現在では、 マインドフルネスの考え方に出会い、学び、実践することによって、 心のモヤモヤを取り除くことができました。今では、エンジニアの仕事に対して、日々充実した毎日を送ることができています。不安な気持ちがなくなったわけではありません。 しかし、「不安な気持ちがあっても良い」「失敗をしても良い」と思えるように考え方が変わりました。

マインドフルネスはうつ病や不安症、パニック障害などストレスの病気に本当に役に立ちます。マインドフルネスは Google の社員研修で取り入れられています。
本書を通じて、マインドフルネスの考え方を広めて、IT 業界で働くエンジニアの心の負担を少しでも減らせれば幸いです。


ただがむしゃらに、ひたすら前に進んでた。やりたい事をやり続けていた。そして 気が付くとこの年になってた。それだけさ。
-- 丸川 正人 / 社⻑(SHIROBAKO 19 話)

心を整える前に、職場環境を変えよ

マインドフルネスの話をする前に、皆さんに伝えたいことがあります。
それは、ブラックな職場環境では、 いくら心を整える技術があっても無駄です。

なぜなら、過酷な仕事環境では、マインドフルネスな状態になるのは、難しいからです。
どんな強靭なメンタルの持ち主でも、ブラックな職場では、兵士は無残に銃弾に撃ち抜かれて死体の山の一部となります。
戦場では、決してマインドフルネスな状態になれません。
たとえマインドフルネスを実践できたとしても、職場そのものがストレスフルな戦場であったとしたら、元も子もありません。
いくらメンタルを鍛えるために防弾チョッキを着込んでも、頭を撃ち抜かれたら終わりです。
よって、もしブラックな戦場で戦いを強いられているのなら、解決方法として最も有効なのは、その戦場から逃げ出すことです。

My 炎上プロジェクトの体験記
突然、火を噴くプロジェクト

皆さんは 炎上プロジェクトの経験がありますか?
もしないのであれば、とても幸せなことだと思います。その、今いるホワイトな職場環境を大事にしてください。
この本の読者の人で、炎上しているプロジェクトがどんな感じなのかわからない方もいらっしゃると思います。そこで、私の炎上プロジェクト経験を元に、その炎上した状況を書き起こしてみようと思います。


結論から言うと、私はこの炎上プロジェクトから逃げ出します。


当時は、物理的に目の前が真っ暗になり、完全に絶望しました。
(激務過ぎて、急に目が見えなくなって気付いたら倒れていたことがありました)
今では、心身ともに健康です。逃げ出して心の底から本当に良かったと思います。


真面目な人ほど、現実のギャップに傷ついたり、絶望したりするからね。
-- 矢野 エリカ(SHIROBAKO 21 話) 

皆さんがもし、炎上プロジェクトに放り込まれた際は、防御を第一に考えてください。


さくせんは「いのちをだいじに」 です。

当時の炎上プロジェクトを思い出す

それでは、当時の記憶を掘り起こしながら、状況をお話させていただきます。

その炎上プロジェクトは、いわゆるウォータフォール型の受託開発のプロジェクト です。


4 人のチームで半年間で完了させる予定のプロジェクトでした。
プログラミング言語は Java を使用していました。
私はメンバーの中でも最も若手の経験の浅い新人でした。 


チームのメンバーは、


•  PM おじさん
•  ベテラン主任さん
•  ジュニア先輩
•  karamage(私)


という構成でした。

■PM おじさん
PM おじさんは年は 40 半ばで恰幅がよく、ちょっと気性が荒いけど気の良いおじさんです。しかし、 ほとんどプログラミングはできません。 昔は金融関係のシステムに携わって COBOL を書いていたらしいです。Excel で仕様書を作ったりスケ ジュールの線表を描くのが仕事です。私がチームに加わった際に、
PM おじさんから「オブジェクト指向はまやかしだからほだされるなよ」
という謎のアドバイスをいただきました。


■ベテラン主任さん
ベテラン主任さんは、30 前半で、背が高く、筋トレと自転車が趣味の人です。設計もプログラミングも何でもこなすエース的存在です。Java が得意です。 オブジェクト指向に精通しています。PM おじさんのオブジェクト指向不要論と真っ向か ら対立しています。


■ジュニア先輩
ジュニア先輩は、社会人3 年目。見た目がぽっちゃりです。性格もおっとりしています。言いにくいですが、当時新人だった私から見ても、プログラミング能力は低いと言わざるをえませんでした。引っ込み思案で、チームの雑用係的ポジションで す。癒し系キャラ。


■karamage(私)
私こと karamage は、このチームに新人としてはじめてのプロジェクトで加わりました。ヒョロガリメガネでいつも顔色が悪く具合悪そうと言われていました。自分で言うのもなんですが、プログラミング能力はこのチーム内ではそこそこ高いで す。しかし、一方で色々とこじらせていたので、コミュ障を発揮していました。C 言語ばかりやってたので、Java はチンプンカンプンです。

問題がないという問題

以上の 4 人のメンバーで、つつがなくプロジェクトは開始しました。 プロジェクト・キックオフの飲み会で、


PM おじさん
「俺はいくつもの炎上プロジェクトを火消ししてきたプロ中のプロだ」

 と武勇伝を熱く語っていました。 社内では、「火消し団の団⻑」という異名を持っているそうです。


私は、PM おじさんのプロジェクトが燃えることを前提とした物言いに違和感だらけになりました。
PM おじさんが酒をついでくるのを必死にかわしつつ (※筆者は酒がダメ)
 。。おいおい、このプロジェクト、本当に大丈夫か!?
と、一抹の不安がよぎりました。
ジュニア先輩は、好きな女性声優について熱く語っていました。 

そして、キックオフも無事に済み、ベテラン主任さん主導のもとで、要件定義や基本設計が開始されました。 ベテラン主任さんは、他の仕事も掛け持ちしているはずなのに、すげぇーと思いました。 ただ、PM おじさんの引いたスケジュールの線表がかなりキツキツで期日を守れるのか不安でした。 しかし、私の心配をよそに、要件定義や基本設計などは順調に進みました。 

そして、いよいよ製造工程が開始されました。 やったープログラムが書けるぞ! と俄然やる気が出ました。

私は Java を書くのは初めてだったので、ベテラン主任さんの指導の元、Java のコーディングを進めました。
新しい言語を覚えるのは楽しくて、ノリノリでコーディング作業を進めました。 作業は何事もなく進み、チームのメンバーも残業もほどほどに帰っていました。 しかし、今思えば、何も問題ないのはありえない。


実は問題だらけでした。 

チームのメンバーは製造の段階で、薄々、仕様に問題があることは気付いていました。 問題の原因は、途中で、顧客からの要件が何度もひっくり返ったことにありました。その要件に仕様があってない箇所がありました。 しかし、私は、見て見ぬふりをして自分の進捗だけを気にして作業していました。 まあ、何か問題があれば、きっと PM おじさんやベテラン主任さんが何か言ってくれるはずだろうと考えていました。はっきり言えば他人事でした。


皆、毎週月曜日、朝の顧客との定例進捗会議で、


「進捗進んでます。問題ありません」


と言いたいがために作業していました。
完全にプロジェクトのゴールを見失っていました。


製造の段階も 6 割進んでいて、ここで仕様の抜けを指摘すると、これまで作業してきた部分の大半が無駄になる可能性があったからです。

しかし、納期 2 ヶ月前になって、結合テストが始まると、今までの誤魔化しが通用しなくなります。


結合テストで皆薄々気付いていた仕様の漏れが顧客にも明るみになってしまったからです。こうなると炎上は確定です。


後で聞いた話ですが、ベテラン主任さんは、他の案件に忙しく、途中で顧客の要件が変わったことを全ては把握してなかったそうです。だから仕様の漏れが発生したと言っていました。

月の残業時間 200 時間超えが続く

ここからが本当の地獄の始まりでした。...ガクガクブルブル


PM おじさん「本日より、臨戦態勢を敷く。休日はないと思え。帰社する際は必ず俺の許可を取れ。以上だ」


PM おじさんに私は何度もリスケを打診しましたが、却下されました。むしろ激怒されました。


PM おじさん「納期はなんとしてでも死守しろ。これは業務命令だ」

会議は踊る

まずは仕様の抜けを正すため、基本仕様書の見直し会議が行われました。 この会議は、朝 10 時に開始され、終わったのは翌日朝 10 時でした。
つまり 24 時間ぶっ通しで会議を行いました。
議論の途中、夜中の 3 時に PM おじさんとベテラン主任が取っ組み合いの喧嘩を始めて、私はなんとか仲裁しようと必死でした。喧嘩の原因は、PM おじさんの「オブジェクト指向不要論」でした。

new は危険だから禁止

PM おじさん「オブジェクトの new は禁止な、すべて static にしよう」

 
ベテラン主任「なぜですか? 意味がわかりません」


PM おじさん「new ってのはな、危険なんだよ。わけわかんないところでメモリリークを引き起こす」


ベテラン主任「しかしですね、適切に使えば、勝手に GC がメモリを管理してくれてですね...」


PM おじさん「その G なんとかを 100% おまえは理解できているのか? わけのわからないものを使って、なにか合ったときにお前が責任とれるのか?」 


ベテラン主任「そういう問題じゃないんですよ! 話にならない!」 

ジュニア先輩は、椅子に座って寝落ちしていました。
今思えば、この時、みんな頭がおかしかったんだと思います。


私はその会議で、PM おじさんとベテラン主任さんの話した内容をずっと書記して議事録を作成していました。朝に夜中のテンションで話した議事内容を見返すと、これは会議した意味があったのか疑問が湧いてきました。


しかし、今の我々には、後に引き返すという選択肢はありません。
前に進むのみです。

ベテラン主任さん死亡

その後、徹夜明けなのに、家にも帰らず、仕様書の修正作業に入りました。
昨日の会議開始から 36 時間経過した頃、ベテラン主任さんが倒れました。気付いたら机の下にうずくまっていました。


ベテラン主任さんは救急車で運ばれ、私はようやく家に帰れました。ひさしぶりに我が家で眠ることができました。嬉しくて普段はお酒は飲まないのですが、呑んで飲みまくって吐きました。


翌日出社すると、ベテラン主任さんの復帰はしばらく無理そうと PM おじさんに告げられました。

3 人で頑張っていこうと言ってました。

PM おじさんに追加の人員は来ないのでしょうか?

と聞くと、

「お前とジュニアが 1.5 人分働けば問題ない」

というありがたい 言葉を頂戴しました。


ここから怒涛の残業生活が始まりました。


月の残業時間は 200 時間を超えました。

怒号が飛び交う現場

納期まで余裕がなくなってくると、PM おじさんが進捗の遅れに激怒するようになりました。毎日のように怒鳴り散らしています。

PM おじさん「なぜ、こんな簡単な作業、できてねぇんだ」 


ジュニア先輩「...できません」


PM おじさん「答えになってないだろ? 理由を聞いてるんだけど」 


ジュニア先輩「...できないものは、で、きません...」


PM おじさん「あ ゙ぁ?」


ジュニア先輩「...んども、ぃゎか、て、ぃませ...」


PM おじさん「はぁ? 聞こえないんだけど? ガキじゃないんだからさぁ。はっきりしゃべろうよ。ちゃんと聞いてる?(怒)」


ジュニア先輩「...ぅ...」

ジュニア先輩は気が弱く、ぬぼーっとおっとりしていて、会社では癒し系な存在でした。PM おじさんは彼のマイペースさが気に入らないため、日々の鬱憤をぶつけるようになっていました。

突然泣き出すプログラマ

PM「あ ゙ぁ? なんとかいえよ」


ジュニア先輩「...ぐ...」 

うつむいたジュニア先輩の目から大量の涙が溢れていました。

涙が床にポタポタと落ちて、染みを作っていました。


PM「お前、もしかして、泣いてるのか? おいおい、泣くなよ」 


ジュニア先輩「......う」


PM「うわっ、おいおい、まじか。こっちが泣きたいよ」 

ジュニア先輩はそのままトイレに消えていきました。
私と PM おじさんは呆然とその姿を見送りました。

会社から逃亡して行方不明

翌日から、ジュニア先輩は会社に来なくなりました。連絡もつかないので、三日後に総務の人が家まで見に行ったらしいですが、家の扉には鍵もかかっておらず、電気もつけっぱなしで、いなくなってしまったらしいです。ジュニア先輩は行方不明になり、家族の方が失踪届を出したそうです。

エンジニアの心が折れる瞬間

ジュニア先輩もいなくなり、チームのメンバーは私と PM おじさんの二人になりました。ベテラン主任さんも一応復帰はしていたのですが、まだ本調子ではなく、時短勤務で出社している状態 (無断欠勤も多い) で、戦力としては期待できませんでした。

納期は一ヶ月後に迫っています。PM おじさんはプログラミングできないので、基本 Excel をいじったり顧客とのメールのやりとりをしてます。ですので、当然すべてのプログラミング作業は私に降ってきます。

私は、Java でのプログラミング能力はそれほど高くありませんでした。しかし、私以外にコーディング作業をやれる人がいないので、なんとか一人でプログラムを書きなぐっていました。当然、品質なんて気にしている余裕はありません。 コードレビューなんてものもありません。とにかく私は、PM おじさんが Excel に引いた線表を守るために必死 にコーディング作業を行いました。毎日ガムシャラにプログラムを書きました。


ずっとモニターを見つめていると視界がかすれていることに気づきました。

何度か目をパチクリしたり、目を細めてみると、右側の視界が消えていることに気づきました。


右目が見えなくなっていたのです。


あれ、あれ? と思ってると次第に右目の視力が回復してきました。

私は目をこすりな がらコーディング作業を続けました。


PM おじさんは、単体テストをやっている時間はないので工程から省くと言っていました。つまり、私のコーディング作業が終わって、次の結合テストが滞りなく終われば、無事納期は守れるということです。

納期 1 週間前の日曜日の午後 3 時に私はコーディング作業をすべて終えました。

ここまで、休日出勤と残業で、私はプライベートのすべてを仕事に捧げてきました。

PM おじさんは、結合テストのテストケースをすべて網羅した Excel シートを作成してくれていました。


PM おじさん「あとは俺がテストしておくから、今日はもう帰れ」


私は、ありがたい言葉を頂戴し、その日 (日曜日) は夕方前に帰宅しました。家に着いて愕然としました。

コンビニで夕食の弁当を買って温めてもらったのですが、受け取らずに帰ってきてしまいました。そのコンビニに戻って受け取る気力もなく恥ずかしさもあったので、その日は冷蔵庫にあったウィーダー in ゼリーを胃に流し込んで、すぐに眠りにつきました。


とにかく眠い。眠りたい。


その瞬間は突然に

エンジニアが心が折れる瞬間は突然やってきます。


日曜の深夜、私は嫌な夢を見て、ハッと目を覚まします。

なんと夢の中でデバッグ作業をしていました。

夢の中で PM おじさんが私に対して軽蔑の眼差しを向けながら怒鳴っていました。PM おじさんの目が「お前はクビだ」と言っているようで脳に焼き付いて離れません。

もう一度寝なおそうと試みましたが、先程の嫌なイメージが頭にこびり着いていて、とても眠れません。


嫌な汗をかいたのでシャワーを浴びようとしたとき、


ポキっ


と音がしました。足元を見るとメガネを踏んでいました。

メガネの柄の部分が折れてしまっていました。

しかたないのでガムテープで応急処置をしました。

月曜日が憂鬱

深夜 4 時、次の出社準備まで、あと 3 時間です。 真っ暗の部屋の中、なかなか寝付けずにいました。 寝返りを何度も打っては、頭の中に浮かぶ雑念を打ち消そうともがいていました。 ベットの上で目をつぶって、頭の中に巣食う仕事のことで悶々としていました。 どうしても PM おじさんが怒鳴るイメージが頭にこびり着いて離れません。 出社した後のことが怖くなって、憂鬱な気分になっていました。 これでは、とても再び眠りにつくことはできません。

突然身体が動かなくなる

月曜日。


朝七時。


ピピピと目覚ましのアラームが鳴りました。


しかし、身体が動きません。 

頭でなんど身体を起こそうとしても、動かないんです。

すると突然目の前が真っ暗になりました。

人生で初めて金縛りをいうものを体験しました。

意識ははっきりとあるのですが、身体が言うことを聞きません。

眼の前は真っ暗で、耳はキーンとなっています。

しばらくすると一筋の光が見えて徐々に視界が開けていきました。身体も指先などが徐々に動かせるようになってきました。しばらく視力の悪い眼でぼやけた天井を見つめてじっとしていたら、息が苦しいことに気づきました。私は持病で喘息を患っているのですが、ぜぇぜぇと喉が鳴っていました。私は深呼吸を繰り返して、呼吸を整えることに集中しました。

その後、フラフラしながら、なんとかベッドから這い出しました。

柄の部分をガムテープで補強したメガネをかけて鏡を見ました。


やつれた表情の痩せた何かがそこにいました。 

私は出社の支度を整えて会社に向かいました。

職場の人間関係が辛い

月曜の朝、出社すると、PM おじさんが激しい剣幕で詰め寄ってきました。

PM おじさんは私のそばに寄ってくるなり、眉を寄せ目を細め、眉間にシワを寄せながら怒りの丈をぶちまけました。


それを何の感情もなく聞いていました。

あ、これ、夢で見たやつじゃんと思いました。

 結合テストの結果がすべて NG だと言っていました。


PM おじさん「バグだらけじゃないか! どうしてこんな事になったんだ! 早く直せ」

 私「すいません、すぐ修正します!」


私は赤字で NG にまみれた Excel チェックシートを受け取って、バグ修正作業に取り 掛かりました。

合計不具合件数の欄には 2031 件という表示がされていました。


これを納期まで後一週間で、すべて修正するのかと思うと気が遠くなりました。


そもそもこの無能な PM おじさんは何なのでしょうか。

偉そうに文句垂れて、バグを修正しろだと。何様ですか。

PM おじさんのムカつく顔と怒号が頭の中で何度もリフレインして、どうにかなってしまいそうでした。


この人の側にいると駄目だ。


急にお腹が痛くなり、トイレに駆け込みました。

トイレに入ると今度は吐き気を催しました。


私はゲロをスーツの上着にぶちまけました。


ゲロまみれになった私は、トイレ前でオタオタしていました。

通りかかった総務の人が 私にタオルを持ってきてくれました。

それを見かねた PM おじさんは、私にいったん家に帰るように指示しました。
初めて PM おじさんが私を心配する表情を見せたので、なんだかちょっと可笑しく なって声に出して笑いそうになりました。

- 以降は、ご購入いただくとPDFがダウンロードできて全編お読みいただけます。

この続きをみるには

この続き:54文字

「エンジニアの心を整える技術」をnoteで2章まで無料公開します! #感想まとめ #技術書典6

karamage@柿本 匡章

1,200円

この記事が気に入ったら、サポートをしてみませんか?気軽にクリエイターを支援できます。

96

karamage@柿本 匡章

からまげです。 フリーランスでアプリを作る仕事をしています。 福岡生まれの不死鳥です。 Software Engineer (iOS, Swift, Android, Kotlin, React Native, Flutter, Vue.js, Firebase, AWS)

#エンジニア 系記事まとめ

noteに投稿されたエンジニア系の記事のまとめ。コーディングTIPSよりは、考察や意見などを中心に。
3つ のマガジンに含まれています
コメントを投稿するには、 ログイン または 会員登録 をする必要があります。