自動化か、全削除か? 海外で働く僕が発見した「非生産的エンジニア」の生存戦略

なぜ海外エンジニアこそ「ムダ」を憎むべきなのか?

(ここから本文:約2800文字)

どうも!皆さん、お疲れ様です。

海外の片隅で、今日も今日とてC#とWPFのコードをこねくり回している、現役ITエンジニアです。設計から開発までゴリゴリやってます。

さて、突然ですが、これから海外でエンジニアとして一旗揚げてやろう!と思っている皆さんに、いきなり水を差すような、でもめちゃくちゃ大事な話をします。

「海外でエンジニアとして潰れたくなかったら、誰よりも『非生産的』になる努力をしてください」

…は?って思いました?(笑)

「いやいや、海外で働くからには、誰よりも生産的でいなきゃダメだろ!」「現地の猛者たちと渡り合うために、人の3倍は働かないと!」

そう思いますよね。わかります。僕もそうでした。

日本で数年間エンジニアとして働いて、こっちに来た当初はもう、アドレナリン全開。「日本人のキメ細かさ、見せたるわ!」と息巻いていました。

ミーティングの議事録は誰よりも詳細に。

「これやっといてくれる?」と頼まれたら、二つ返事で「OK, I’ll take it!」。

自分のタスクが終わっても「何か手伝うこと(Anything I can help with?)」と聞きまわる。

素晴らしい心がけですよね。日本なら「あいつはデキる」「気が利く」と評価されたかもしれません。

でも、こっち(海外)でそれをやると、どうなるか。

マジで、潰れます。

なぜか。

理由はシンプル。まず、僕ら(日本人エンジニア)は、スタートラインでハンデを背負ってるからです。

僕らは「外国人」です。

言語の壁。これ、どれだけ勉強しても、ネイティブの同僚が100%の力で会話してるのに対して、こっち(僕)は常に脳のリソースの30%くらいを「英語(または現地語)の処理」に持っていかれます。

文化の壁。会議での発言のタイミング、ジョークのニュアンス、レビューでの角の立たない指摘の仕方。これ全部、無意識レベルでストレスです。

そして、ビザや生活のセットアップ。僕ら、ただコード書いてるだけじゃ生活できないんですよ。

つまり、現地のエンジニアが「仕事」だけに100のリソースを割けるとしたら、僕らは「仕事(70)」+「言語・文化(30)」みたいな状態で、毎日戦ってるわけです。

この状態で、彼らと同じ、いや、それ以上に「生産的」であろうとしたら…?

答えは簡単。残業するか、睡眠時間を削るか、精神をすり減らすか。

どれも持続可能じゃありません。

僕がC#とWPFという、どちらかというとエンタープライズ向け(つまり、デカくて古いコードも多い)領域で働いているから余計に感じるのかもしれませんが、この世界、「頑張り」はマジで評価されません。

日本だと「あいつ、遅くまで頑張ってるな」というプロセスが、ある種(良くも悪くも)評価の対象になる瞬間がありますよね。

こっちには、それがゼロとは言言いませんが、ほぼありません。

評価はただ一つ。「で、あなたは何を終わらせたの?(What did you get done?)」 これだけです。

僕がこっちに来て半年が経った頃。

毎日必死で働いて、自分では「めちゃくちゃ生産的に動いてる」つもりでした。

でもある日、メンターだったシニアエンジニア(仮にジョンとします)にこう言われたんです。

「君はいつも忙しそうだね(You look busy always.)。でも、君の**『インパクト』**はどこにあるんだ?」

…グサッときました。

僕は「Busy(忙しい)」だったけど、「Effective(効果的)」じゃなかった。

「Productive(生産的)」だったかもしれないけど、「High-Impact(高付加価値)」じゃなかったんです。

振り返れば、僕の時間の多くは、

  • 正直、出なくてもいいミーティングへの参加
  • 自動化できるはずの、WPFアプリのUIの手動テスト
  • 毎回ググれば出てくるような、環境構築のマイナートラブルの解決
  • 「それ、僕のタスクだっけ?」というような、曖昧な依頼の処理

…こういう**「やった感はあるけど、ぶっちゃけ誰でもできる(もしくは、やらなくてもいい)こと」**に溶けていました。

一方、ジョン(僕のメンター)は、いつも定時(ならぬ16時とか)に帰るんですよ。

でも、彼のインパクトは絶大でした。なぜか?

彼は、「やらないこと」の天才だったんです。

  • 彼は、反復作業を病的なまでに憎んでいました。ビルド、テスト、デプロイ。ちょっとでも「面倒」だと思ったら、即座にスクリプトを書いて自動化する。
  • 彼は、AIやノーコードツールを「おもちゃ」として使い倒していました。「こんなのエンジニアが使うもんじゃない」というプライドがゼロ。「だって、そのほうが早いじゃん?」が口癖。
  • そして彼は、「No」を言うのがメチャクチャうまかった。「そのミーティングのアジェンダ(議題)は?」「そのタスクの優先度は?」「それは僕がやるより、Aさんのほうが適切じゃない?」と、華麗にディフェンスする。

彼は一見「非生産的」に見えるかもしれない。

でも、そうやって「ムダ」を徹底的に排除(Eliminate)し、「面倒」を自動化(Automate)することで生まれた時間と脳のリソースを、「本当にやるべき仕事」…つまり、複雑なアーキテクチャの設計や、C#でのコアロジックの実装、若手のレビューといった「高付加価値」な仕事に全振りしていたんです。

海外で働くエンジニア、特に僕ら外国人は、このジョンの「非生産的」スキル…すなわち**「戦略的にサボる技術」**を、プログラミング言語より先に学ぶべきだと痛感しました。

日本人の生真面目さは、時に「全部自分で抱え込む」という弱点になります。

でも、リソースが限られている僕らは、戦う場所を選ばないといけない。

あなたの時間は有限です。

その貴重な時間を、「やっても評価されない作業」に使うのか?

それとも、「あなたにしかできない設計や開発」に使うのか?

このブログ記事では、僕が海外で働く中で実践してきた**「Automate or Eliminate(自動化か、全削除か)」**の具体的なテクニックを、余すところなくお伝えします。

これは単なる時短術じゃありません。

言語と文化のハンデを乗り越え、海外でエンジニアとして「生き残り」、さらに「評価される」ための、超実践的なサバイバル戦略であり、人生術です。

具体的には、

  1. 【見極め編】あなたの時間を奪う「ムダ」なタスクを洗い出す、超具体的なフレームワーク
  2. 【実践編】AIとノーコードを使い倒す、現役エンジニア(僕)のリアルな活用事例
  3. 【最難関】角を立てずに「ノー」と言う技術。あなたの時間とエネルギーを守る交渉術

これらを、僕の実体験ベースで(失敗談も交えつつ)語っていきます。

読み終わる頃には、あなたも「よし、明日から非生産的になろう!」と決意しているはずです(笑)。

見極めろ! あなたの時間を奪う「自動化すべき」タスクの解剖

(ここから本文:約2900文字)

【起】では、「海外エンジニアこそ、言語や文化のハンデがあるんだから、戦略的にサボらないと(=非生産的にならないと)潰れるよ」という話をしました。

僕のメンターだったジョンが、定時で帰りながらも絶大なインパクトを出していたのは、「ムダ」を徹底的に排除していたからだ、と。

これ、頭ではわかるんですよ。

「ムダをなくそう」「本質的な仕事に集中しよう」

でも、9割のエンジニア(昔の僕も含めて)は、ここでつまずくんです。

「…で、俺の仕事の『ムダ』って、具体的にどれ?」

この「見極め」が、めちゃくちゃ難しい。

僕らエンジニアって、悲しいかな、「忙しいこと」に快感を覚えちゃう生き物なんですよね。

ずらっと並んだJiraのチケットを右(Done)に動かす瞬間。

深夜にデプロイを完遂したときの達成感。

鳴り止まないSlackのメンション。

これら全部、「俺、仕事してるわー」という「偽の生産性」を与えてくれます。

でも、【起】で書いたように、海外の現場(特に僕がいるような欧米系の環境)では、その「忙しさ」自体に価値は1ミリもありません。

C#でいうところの、is と as の違いみたいなもんです(ちょっと違うかw)。

「Busy(忙しい)」と「Valuable(価値がある)」は、似てるようで、本質的にまったくの別物。

むしろ、いつも夜遅くまで働いている(ように見える)と、「あいつ、タイムマネジメント下手なのかな?」「タスクの見積もりもできないのかな?」と、マイナス評価にすらなりかねない。マジで。

だから、まず第一歩として、「偽の生産性」という麻薬から抜け出し、自分のタスクを冷徹な目で見つめ直す必要があります。

大丈夫。安心してください。

今日は、僕が現場で叩き込まれ、今でも実践している超具体的なフレームワークを2つ、皆さんに伝授します。

これを使えば、誰でも「自動化すべき(Automate)」タスクと「削除すべき(Eliminate)」タスクを解剖できます。

フレームワーク①:「2回やったら、自動化」の法則

まずこれ。超シンプルだけど、最強。

僕のメンター、ジョンの口癖でした。

「同じ手作業を2回やったら、3回目が来る前に自動化を疑え」

これは、僕らエンジニアがお馴染みのDRY原則(Don’t Repeat Yourself)を、コーディングだけじゃなく「あなたの全業務」に拡張する考え方です。

あなたの「行動」こそが、最大のリファクタリング対象なんですよ。

例えば、僕らC#/WPFエンジニアの現場でありがちなこと。

  • 「開発環境のセットアップ。あのWiki見ながら、Visual Studioのこの機能入れて、あのライブラリをNuGetで落として…」
  • 「WPFアプリの動作確認。アプリ起動して、ログインして、あの画面まで5クリックして、このテキストボックスに『test』って入れて…」
  • 「週次の進捗報告。Jiraのチケットを集計して、Excelにコピペして、グラフ作って、Slackでメンションして…」

これ、「2回目」をやった瞬間、あなたの頭の中にアラートが鳴るようにしてください。

「あ、ヤバい。また同じことやってる」と。

ここで多くの人が、「でも、自動化するスクリプト書く時間なんてないよ」「自動化するより手でやったほうが早いし」と言い訳します。

気持ちは痛いほどわかる。

確かに、その1回だけを見れば、手作業のほうが早いでしょう。

でも、考えてみてください。

そのタスク、3回目、4回目、そして来月、来年…何回やりますか?

そのたびに、あなたの貴重な「脳のリソース」と「時間」が、そのクソどうでもいい作業(失礼)に奪われ続けるんですよ。

WPFの手動テストに1回15分かかるとしましょう。

自動化スクリプト(PowerShellでも簡単なテストコードでもいい)を書くのに、まぁ2時間かかったとします。

「15分 vs 2時間」なら、手作業が勝ちますよね。

でも、そのテスト、リリースまでに何回やります?

8回やれば、もう元が取れます(15分 x 8回 = 120分 = 2時間)。

9回目からは、あなたの「15分」が「0分」になる。浮いたその15分で、あなたはもっと価値のあるバグ修正や、新しい設計について考えることができるんです。

「2回やったら、アラート。」

まずはこれを、あなたの脳みそにインストールしてください。

フレームワーク②:「価値ゼロ」タスク発見マトリックス

「2回の法則」で、「なんかこれ、面倒だな」という反復タスクが見つかるようになりました。

でも、それだけじゃ不十分です。

反復しないけど、そもそも「やる価値がゼロ」のタスクも大量に潜んでいますからね。

そこで使うのが、この「タスク棚卸しマトリックス」です。

あなたの抱えている仕事を、2つの軸で4象限に分類します。

  • 横軸:「自分じゃなきゃダメか?」(専門性:低 ⇔ 高)
    • そのタスクは、C#/WPFの深い知識や、あなたの経験がないとできない?(高)
    • それとも、ぶっちゃけ新入社員でも、なんならAIでもできる?(低)
  • 縦軸:「本当にやる必要があるか?」(必要性:低 ⇔ 高)
    • そのタスクは、プロジェクトの成功や、顧客の満足に直結する?(高)
    • それとも、最悪やらなくても、誰も困らない?(低)

さあ、あなたのタスクをこの4マスに放り込んでみましょう。

A: 高専門性・高必要性(=あなたの「インパクト」領域)

  • 例:WPFでの複雑なカスタムコントロールの実装、MVVMパターンの設計、C#での非同期処理(async/await)を使ったコアロジックの改善、深刻なメモリリークの調査。
  • 対策:最優先でやれ!
  • これこそが、あなたが給料をもらっている理由です。海外で「あいつはスゴイ」と評価される源泉。僕らは、自分の時間の8割を、このA領域で使うことを目指すべきです。

B: 低専門性・高必要性(=「自動化(Automate)」領域)

  • 例:定型的なビルドとデプロイ、単体テストの実行、環境構築の手順、日次レポートの作成、依存ライブラリのアップデート確認。
  • 対策:自動化 or 委任
  • やる必要はある。でも、「あなたが」やる必要はない。
  • これこそが、まさに「Automate(自動化)」の最優先ターゲットです。
  • 「2回の法則」で引っかかったタスクは、だいたいここに入ります。
  • スクリプトを書く、CI/CDパイプラインを組む。そして、次の「転」で話す「AIやノーコードツール」を使って、コードを書かずに自動化するのも最強の手段です。
  • もしチームにジュニアがいれば、手順書を整備して「委任(Delegate)」するのもアリです。

C: 高専門性・低必要性(=「自己満足」領域)

  • 例:誰も求めていない過剰なリファクタリング、プロジェクトのスコープ外の新技術の「とりあえず」の導入検討、完璧すぎる(けど誰も読まない)設計ドキュメントの作成。
  • 対策:疑問視しろ!
  • エンジニアが一番ハマりがちなワナがここ。「俺、スゴイことやってる」と勘違いしがち。
  • でも、それ、本当に「必要」ですか? ビジネスの価値に貢献してますか?
  • 「これ、本当に今やる必要ありますか?」とプロダクトオーナーやマネージャーに確認する勇気が必要です。あなたの「高専門性」は、もっと「高必要性」(A領域)のことに使うべきです。

D: 低専門性・低必要性(=「即・削除(Eliminate)」領域)

  • 例:自分がメインで話さない、ただ聞いているだけの定例会議。形式的な進捗確認のためだけの朝会。全員にCCで飛んでくる、自分には関係ないメールの処理。誰も読んでない議事録の作成。
  • 対策:今すぐ削除しろ!
  • おめでとうございます。これぞ「価値ゼロ」タスクです。
  • これをやっている時間は、あなたの時給をドブに捨てているのと同じ。
  • これが、あなたの「Eliminate(削除)」ターゲットです。

僕の失敗談と、B領域の攻略(WPFエンジニア編)

僕がこっちに来たばかりの頃は、このマトリックスでいうと「B」と「D」のタスクでスケジュールがパンパンでした。

「A」の本当にやるべき設計やコーディングは、いつも後回し。だから残業になる。最悪の悪循環です。

特に「B領域」(自動化すべきタスク)は強敵でした。

例えば、「WPFアプリの手動テスト」。

昔の僕は、毎回アプリを起動し、ログイン画面で「admin」「password」と打ち込み、メニューを5回クリックして目的の画面を開き、そこにテストデータを手入力して…というのを、ビルドのたびにやっていました。

完全に「2回の法則」に違反してますよね。

これをどう「自動化」したか?

完璧なUI自動テスト(Appiumとか)を導入するのはコストがかかりすぎます。

だから、もっと「手抜き」な自動化をしました。

  • デバッグビルドの時だけ、ログイン画面をスキップするように if DEBUG でコードを埋め込む。
  • テストデータを毎回手入力するのがダルいので、JSONファイルから読み込んで自動でテキストボックスに流し込む「デバッグ用ボタン」を画面の隅っこに作る。
  • 最低限、ビルド後にアプリが起動して、クラッシュしないことだけを確認する簡単なPowerShellスクリプトを書く。

これだけでも、1回15分かかっていた作業が、1分になりました。

14分の「貯金」です。

これが「B領域」の攻略法です。

もう一つ、「環境構築」。

新しいメンバーが入るたびに、半日かけてVisual Studioのインストールや、IIS(懐かしい)の設定を手伝っていました。

これも「やる必要はある」けど「僕の専門性はいらない」(B領域)ですよね。

そこで、

  • Visual Studioのインストーラー設定ファイル(.vsconfig)をGitリポジトリで共有する。
  • 必要なレジストリ設定やDBのセットアップを全部やってくれる、1本のPowerShellスクリプト(setup-dev-env.ps1 とか)を整備する。

これで、半日かかっていた作業が、スクリプト実行中の1時間(放置)で終わるようになりました。

さあ、どうでしょう。

これであなたの目の前にあるタスクが、「A(やるべき)」「B(自動化すべき)」「C(疑問視すべき)」「D(削除すべき)」に分類できたはずです。

タスクの「解剖」は、これで完了です。

でも、本当の戦いはここからです。

B領域(自動化)を、どうやって「楽して」自動化するのか? コーディングするだけが自動化じゃありません。

そして、最難関のD領域(削除)。これをどうやって「角を立てずに」やめるのか?

次の【転】では、このBとDを具体的に「潰す」ための、僕の秘密兵器…

**「AIとノーコードツールの活用術」と、海外で生き残るための必須スキル「上手な『No』の言い方」**について、徹底的に解説します。

「やらない勇気」とAI活用術:時給を爆上げする実践テクニック

(ここから本文:約3000文字)

【承】で、僕らは自分の仕事をメスで切り刻みました。

あなたのタスクは、今や4つの象限に分類されているはずです。

  • A: 高専門性・高必要性(=あなたの「インパクト」領域)
  • B: 低専門性・高必要性(=「自動化(Automate)」領域)
  • C: 高専門性・低必要性(=「自己満足」領域)
  • D: 低専門性・低必要性(=「即・削除(Eliminate)」領域)

おめでとうございます。「解剖」は終わりました。

いよいよ、このブログの核心、「手術」の時間です。

この「転」パートが、正直言って一番エグい。

なぜなら、B領域(自動化)を潰すには**「技術」が、そして最難関のD領域(削除)を潰すには「勇気」**が必要だからです。

でも、ここを乗り越えれば、あなたの時給…いや、「エンジニアとしての市場価値」はマジで爆上がりします。

僕が海外で生き残るためにやってきた、泥臭いけど効果絶大なテクニックを全部シェアしますね。

まずは、とっつきやすいB領域、「自動化」の攻略からいきましょう。

パート1:B領域の攻略 — エンジニアよ、プライドを捨てて「ズル」をしろ

B領域のタスクを覚えていますか?

「やる必要はある。でも、あなたがやる必要はない」タスクです。

例:定型的なビルド、テスト、レポート作成、環境構築…。

これを「自動化」と聞くと、多くの真面目なエンジニア(特に昔の僕)は、「よーし、いっちょゴリゴリのPowerShellスクリプト組むか!」とか「Pythonで自動化ツール作ったるわ!」と意気込みます。

…待った。

それ、本当にあなたの「A領域」の時間を使ってまでやることですか?

もちろん、CI/CDパイプラインの根幹をC#やYAMLで構築するのは、立派なA領域の仕事かもしれません。

でも、もっと小さい、日々の「面倒くさい」を自動化するのに、そんな大層な「作品」を作る必要はないんです。

B領域の自動化の目的は、「完璧なツールを作ること」じゃない。

**「あなたが、その作業から、1秒でも早く解放されること」**です。

だから、僕はここで**「エンジニアとしてのプライドを捨てろ」**と言いたい。

使えるものは全部使う。特に「AI」と「ノーコードツール」。

これらは、僕らにとって「ズル」ではなく、「最強のレバレッジ(てこ)」です。

1. AIの活用術(=あなたの「専属ジュニアプログラマー」)

僕は、ChatGPTやGitHub Copilotのことを「無料で雇える、文句を言わない超優秀なジュニアプログラマー」だと思っています。

こいつに、B領域の雑務を丸投げするんです。

  • 事例①:「ダルいスクリプト書かせてみた」(C#/WPFエンジニア編)【承】で、「WPFのビルド成果物を特定のフォルダにコピーするスクリプト」の話をしましたよね。昔の僕は、PowerShellのコマンドをGoogleで調べながら、1時間くらいかけて書いていました。今は違います。AIにこう頼むだけ。「WPFプロジェクト(csprojファイルがある場所)を Release ビルドして、生成されたEXEとDLLだけを C:\Deploy\MyApp フォルダにコピーするPowerShellスクリプト書いて。あ、obj フォルダとか不要なファイルは除外してね」…30秒で出てきます。マジで。僕はそれをコピペして、ちょっと手直しするだけ。実働5分。1時間の作業が5分になったら、浮いた55分で何ができますか? A領域の、複雑なC#の非同期処理(async/await)の設計を考えることができますよね。
  • 事例②:「もうテストデータなんて作らない」WPFアプリの画面テスト、面倒ですよね。特にDataGridとかに表示する、それっぽいダミーデータ。昔の僕は、手打ちで「test1」「test2」とか入れてました(笑)。今は、AIにこう頼みます。「C#のWPFアプリで使う、顧客リストのダミーデータが欲しい。FirstNameLastNameEmailAge のプロパティを持つ Customer クラスのリストを、JSON形式で30件分生成して。Emailはそれっぽく、Ageは20〜60歳でランダムにして」一瞬です。これで、画面がリアルなデータで埋まる。テストの質も上がるし、何より僕の時間が溶けない。

B領域のタスクは、AIに「壁打ち」したり、「下書き」させるのが最強です。

正規表現、SQLクエリ、簡単なHTMLメールのテンプレート…

「自分でググりながらやる作業」は、全部AIにやらせる。

これが、現代エンジニアの「非生産的」スキルです。

2. ノーコードツールの活用術(=「コード書きたがる病」の治療薬)

エンジニアは悲しいかな、「全部コードで解決したがる病」にかかりがちです。

でも、それ、あなたの時給に見合ってますか?

  • 事例:「ビルド失敗したら即Slack通知」僕のチームでは、Azure DevOpsでCI/CDを組んでいます。ビルドがコケたら、昔はメール通知が飛んでくるだけ。気づくのが遅れる。「これ、Slackに通知飛ばすようにするか」となった時、昔の僕なら「Azure DevOpsのAPI叩くC#の Function Appでも作るか…」とか考えました。でも、今は違います。Microsoft Power Automate(Zapierでもいい)を使います。これは、エンジニアじゃない人でも使える「ノーコード」ツール。「Azure DevOpsでビルドが失敗したら(トリガー)」→「Slackのこのチャンネルに、このメッセージを投稿する(アクション)」これを、ポチポチとブロックを繋ぐだけで設定完了。コード、ゼロ行。開発時間10分。これで、ビルドがコケた瞬間に全員のSlackが鳴る。即座に対応できる。僕がC#でAPI連携ツールを自作してたら、半日はかかりましたよ。10分 vs 半日。どっちが「価値」を生んでますか?

プライドを捨てて、ノーコードツールを使いましょう。

Jiraのチケット自動起票、メールの自動振り分け、Excel(!)へのデータ転記…

B領域の「PC操作」は、想像以上にこいつらで自動化できます。


パート2:最難関・D領域の攻略 — 「No」を言う勇気と技術

さて、B領域(自動化)は、言ってみれば「技術」の話でした。

ここからは、もっと難しい「人間関係」と「勇気」の話。

D領域(即・削除)の攻略です。

D領域のタスクを覚えていますか?

「低専門性」かつ「低必要性」。

そう、「価値ゼロ」のタスクです。

  • あなたが出ても何も発言しない、ただ聞いているだけの定例会議。
  • あなたが書いても誰も読んでいない、形式的な週次レポート。
  • 「それ、誰の仕事だっけ?」という、曖昧な依頼。

これらを「削除(Eliminate)」するには、**「No(やりません)」**と言うしかありません。

これが、特に日本人気質を持つ僕らにとって、めちゃくちゃハードルが高い。

「断ったら、やる気がないと思われるかも…」

「チームの和を乱したくない…」

「そもそも、英語で角を立てずに断る言い回しがわからん…」

わかります。僕もそうでした。

でも、思い出してください。【起】で話したことを。

海外(特に欧米)の職場では、「Yes Man」は評価されません。

あなたの時間は有限です。

D領域のタスクに「Yes」と言うことは、あなたの本当に価値あるA領域(C#でのコア設計、WPFのパフォーマンス改善)のタスクに「No」と言っているのと同じなんです。

「あいつはいつも忙しそうだけど、結局何やったんだっけ?」

これが、一番最悪な評価です。

そうならないために、僕は「ただ断る」のではなく、「理由」と「代替案」をセットで提示するという技術を身につけました。

これは「喧嘩」じゃない。「交渉」であり「調整」です。

僕が現場で使っている、具体的な英語フレーズと共にご紹介します。

シーン1:無駄な会議(D領域の代表格)に招待された時

× ダメな例: “No, I’m busy.” / “I can’t join.”

(冷たすぎる。理由も代替案もない。ただの「反抗」だと思われる)

○ 良い例(理由+代替案のコンボ):

  1. まず、アジェンダ(議題)を要求する。“Thanks for the invite. To make sure I can contribute effectively, could you share the agenda (議題) for this meeting?”(訳:招待ありがとう。ちゃんと貢献できるか確認したいから、会議の議題を教えてくれる?)
  2. 議題を見て、自分に関係なさそうだったら「代替案」を出す。“Thanks. Based on the agenda, it seems my input isn’t critical for this session. Could you send me the meeting minutes (議事録) afterward? I’ll catch up from there and focus on finishing the [あなたのA領域タスク名, e.g., the performance tuning of the main window].”(訳:ありがとう。議題見たけど、僕の意見は必須じゃなさそうだね。代わりに議事録を送ってくれる? そっちでキャッチアップするから、僕は**[A領域のタスク、例:メイン画面のパフォーマンス改善]**に集中するよ)
  • ポイント:
    • 「参加しません」と直接言わない。
    • 「議事録でキャッチアップする」という代替案を提示する。
    • あなたが「サボる」のではなく、「より重要なA領域のタスクに集中するためだ」という**理由(大義名分)**を明確にする。

これで、相手は「OK、合理的だね」となります。誰も不快になりません。

シーン2:曖昧なタスク(「これ、ちょっと見といて」)が飛んできた時

× ダメな例: “OK.”

(最悪。安請け合い。これがD領域タスクの温床になる)

○ 良い例(優先順位の確認 = マネージャーに仕事をさせる):

“Happy to help. Currently, I’m working on [A領域タスクA] and [A領域タスクB], which are the top priorities. Where does this new task fit in terms of priority? Should it come before A or B?”

(訳:喜んで。今、最優先事項のAとBをやってるんだけど、この新しいタスクの優先度はどこ? Aより前?)

  • ポイント:
    • 「できません」とは一言も言わない。「喜んで」と前向きな姿勢を見せる。
    • ボールを相手(マネージャー)に投げ返す。
    • あなたの「やることリスト(A領域)」を可視化し、「どれを後回しにすべきか、あなたが決めてください」と迫る。

これを言うと、9割のマネージャーはこう言います。

「Ah, OK. Then please finish A and B first. That new one is not urgent.」

(あ、そう。じゃあAとBを先に終わらせて。その新しいのは急がないから)

…ほら、D領域のタスクが消滅した(か、優先順位が明確になった)瞬間です。

あなたが「No」と言わなくても、相手が「No(急がない)」と言ってくれるんです。

シーン3:スコープ外(「それ、俺の仕事?」)の依頼

○ 良い例(適切な人へのパス):

“That’s an interesting point. For this specific area (e.g., the database schema), [担当者X] would be the best person to talk to, as they manage that. Should I loop them in?”

(訳:面白い点だね。ただ、その領域(例:DBスキーマ)に関しては、Xさんが担当だから彼と話すのがベストだと思う。彼を会話に巻き込もうか?)

  • ポイント:
    • 「知りません」「僕の仕事じゃない」と突き放さない。
    • 「自分は専門外だが、専門家を知っている」という、情報ハブとしての価値を提供する。
    • 「パスする」という形で、やんわりと「No(僕の仕事じゃない)」を伝えている。

どうですか?

これらは「サボり」でも「反抗」でもありません。

あなたの限られたリソース(時間と脳)を、会社にとって最も価値のあるA領域に集中投下するための、**プロフェッショナルな「交渉術」であり、「防御術」**です。


さあ、「転」はここまでです。

B領域のタスクは、AIとノーコードで「ズルく」自動化しました。

D領域のタスクは、「賢く」交渉して削除しました。

これで、あなたのスケジュール帳には、大きな「空白」が生まれたはずです。

あなたはもう、日々の「Busy(忙しさ)」に振り回されるだけのエンジニアではありません。

いよいよ最後の【結】です。

こうして生み出した最強の武器=「時間」と「脳のリソース」を使って、僕ら海外エンジニアは、いかにして「真の価値(インパクト)」を生み出し、このサバイバルを勝ち抜いていくのか。

その答えを、次の章でお話しします。

エンジニアよ、「非生産的」であれ。それが最強の価値になる

(ここから本文:約2900文字)

ここまで、長い旅にお付き合いいただき、本当にありがとうございます。

【起】では、僕ら海外エンジニアが背負う「言語・文化」という名のハンデと、時間ではなく「インパクト」で評価される海外のシビアな現実についてお話ししました。

「忙しい(Busy)」と「価値がある(Valuable)」は違う。だからこそ、戦略的にサボる=「非生産的」になる必要があるんだ、と。

【承】では、その「ムダ」を見極めるための具体的な解剖メスを2つ紹介しました。

「2回やったら、自動化」の法則と、あなたの仕事を4象限(A:インパクト / B:自動化 / C:疑問視 / D:削除)に切り分ける「価値ゼロタスク発見マトリックス」です。

そして【転】では、ついに手術を敢行しました。

B領域(自動化)のタスクは、AIやノーコードツールという「ズルい」武器を使って、プライドを捨ててでも効率化する。

最難関のD領域(削除)のタスクは、「No」と「代替案」をセットにしたプロの「交渉術」で、角を立てずに葬り去る。

…さて。

今、あなたのスケジュール帳には、何が残っていますか?

もし、あなたがこの戦略を正しく実行できたなら。

そこには、D領域のムダな会議や、B領域の退屈な反復作業で埋まっていたスケジュールが消え、ポッカリと**「空白の時間」**が生まれているはずです。

おめでとうございます。

あなたは今、海外で働くエンジニアにとって、いや、すべてのプロフェッショナルにとって、**「最強の武器」**を手に入れました。

その武器の名は、「時間」と「脳の余白(リソース)」です。


生み出した「時間」で、僕らは何をするべきか?

ここで、絶対に勘違いしてほしくないことがあります。

この「空白の時間」は、「サボるための時間」ではありません。

(いや、もちろん、疲れたら堂々とコーヒー飲んでサボってください。それも大事な戦略です)

この時間は、「偽の生産性」に追われていたあなたが、「本物の価値」を生み出すために投資する、黄金の時間なんです。

【承】のマトリックスを思い出してください。

僕らが目指すべきは、自分のリソースの8割を**「A領域(高専門性・高必要性)」**にブチ込むことでしたよね。

あなたが、AIと交渉術を駆使してB領域とD領域のタスクを必死に殺したのは、すべて、このA領域で戦うためなんです。

では、僕らC#/WPFエンジニアにとっての「A領域」とは、具体的に何でしょうか?

生み出したこの「空白の時間」で、一体何をすべきなんでしょうか?

それは、「チケットを閉じる(Close)」ことではありません。

それは、「コードを書く(Coding)」こと…だけではありません。

それは、**「考える(Thinking)」**ことです。

  • 「なぜ、この機能が必要なんだっけ?」と問い直すこと。D領域の会議を断った時間で、代わりにプロダクトオーナー(PO)を15分だけ捕まえて、「この機能の本当の目的って何? もしかして、こっちのシンプルなUIでも達成できるんじゃない?」と議論する。これは、ただ言われた通りにコードを書くエンジニア(コーダー)にはできない、「A領域」の仕事です。
  • 「もっとマシな設計はないか?」と疑うこと。B領域のテスト自動化で浮いた時間で、あなたが今まさに実装しようとしているWPFの画面(View)とロジック(ViewModel)の「癒着」を眺めながら、「このMVVMパターン、本当にスケーラブルか?」「このC#のクラス設計、半年後に他の人が読めるか?」と自問自答する。そして、より良い設計を思いつき、チームに提案する。これも「A領域」です。
  • 「この技術、本当にベストか?」と学ぶこと。AIにスクリプトを書かせて浮いた時間で、今あなたのチームが使っている技術(例えば、僕の現場ならWPFや.NET Framework)の「次」を学ぶ。「.NET 8の新しい機能、今のプロジェクトに応用できないか?」「クライアントはWebを求めてるけど、Blazorは選択肢になるか?」「WPFからMAUIへの移行パスってどうなってるんだっけ?」この「学び」と「調査」こそ、あなたの専門性を高め続ける、最強の「A領域」の活動です。

そう。

BとDを削って生み出した「時間」と「脳の余白」は、

  • 「WHY(なぜ)」を問う時間
  • 「設計(アーキテクチャ)」を考える時間
  • 「未来(新しい技術)」を学ぶ時間…なのです。

これらは、AIやノーコードツールには(まだ)できません。

これらこそ、僕ら「人間」のエンジニア、特に海外で「あいつは違う」と一目置かれるために必要な、**「真のインパクト」**を生み出す活動です。


「非生産的」エンジニアのパラドックス

このブログのタイトルを、もう一度思い出してください。

「非生産的エンジニア」の生存戦略、です。

僕がメンターのジョンから学んだ、一番大切なこと。

それは、**「最も生産的なエンジニアは、一見すると最も『非生産的』に見える」**というパラドックス(逆説)です。

  • Slackで常に即レスし、すべてのミーティングに出席し、夜遅くまでコードを書いて「忙しそう」にしているエンジニア。彼は、B領域とD領域のタスクに追われ、自分の「A領域」の時間を確保できていない、**「偽の生産性」**に溺れたエンジニアかもしれません。
  • 一方、Slackの返信は遅い(通知を切ってるから)、半分以上の会議は「議事録で追うよ」と断り、定時(なんなら16時)に帰っていくエンジニア。彼は、B領域を自動化し、D領域を削除し、自分のリソースを「A領域」…すなわち「考える」ことと「学ぶ」ことに全振りしている、**「真の生産性」**を持つエンジニアです。

あなたは、どちらのエンジニアになりたいですか?

海外の現場で評価されるのは、圧倒的に後者です。

彼らは「忙しい人」を雇いたいんじゃない。「問題を解決する人」を雇いたいんです。

そして、複雑な問題を解決するためには、「考える時間(=空白の時間)」が絶対に必要なんです。

だから、エンジニアよ。「非生産的」であれ。

反復作業を憎み、ムダな会議から逃げろ。

AIに仕事を奪われることを恐れるな。AIを誰よりも使い倒し、AIにできない「A領域」へと、あなた自身をアップデートしろ。


明日から、あなたができる「最初の一歩」

この長い記事を読んで、「よっしゃ、明日から全部やるぞ!」と意気込むのは素晴らしいことです。

でも、たぶん挫折します(笑)。

だから、まずは「ひとつだけ」でいい。

明日、あなたの職場で、たったひとつだけ「非生産的」な行動を起こしてみてください。

  • B領域の第一歩:今週「2回やった」コピペ作業や手動テストをひとつ見つける。そしてAI(ChatGPT)を開いて、「これを自動化するスクリGIGAください」と、ダメ元で頼んでみる。
  • D領域の第一歩:明日入っている会議で、一番「俺、いなくてもいいかも」と思うやつをひとつ見つける。そして勇気を出して、【転】で紹介したフレーズを(ちょっとアレンジして)チャットで送ってみる。「To make sure I can contribute effectively, could you share the agenda?」これだけでいい。

その「ひとつ」が成功し、あなたが「15分」の空白を手に入れた瞬間。

その「自由」と「全能感」は、マジで病みつきになります。

それが、あなたの「非生産的エンジニア」への第一歩です。


僕も、まだまだ道半ばです。

今でも気づけば、D領域の会議でぼーっとしてしまったり、B領域の作業を「面倒だから」と手動でやってしまうこともあります。

でも、そのたびに、この「Automate or Eliminate」の原則を思い出す。

僕らは、言語や文化のハンデを背負っている。だからこそ、誰よりも賢く、ズルく、そして「非生産的」に戦わないといけない。

あなたのエンジニア人生が、日々の「作業(Busy)」に追われるものではなく、未来の「価値(Impact)」を生み出す、エキサイティングなものであり続けることを、心の底から願っています。

最後まで読んでいただき、ありがとうございました!

コメント

タイトルとURLをコピーしました