第2章:日本に降り立つ
Tony Duong
5月 26, 2026 ・ 1 分
2018年2月、東京に降り立ち、そのまま上板橋のシェアハウスへ向かいました。住人は30人ほどで、ほとんどが20代から30代の日本人。遠くから勉強してきた国に一人でやってきた人間にとっては、ほぼ完璧な環境でした。友達も、語学の練習相手も、最初から揃っているわけです。
最初の48時間は、日本に来る「前」に想像していた通りの日本でした。すべてが新しくて、すべてが刺激的すぎる。電車に座っていて、駅の看板の漢字が読めることに気づきました。何年もコツコツ続けてきたWaniKaniが、ここにきて静かに実を結び、いきなり役に立つものに変わったのです。話す方はまるでダメでしたが、「読める」。裏技を見つけた気分でした。
会社の名前はSeido。7人で日本の武道用品をオンラインで売っている会社でした。僕はもう一人のソフトウェアエンジニア、つまり先輩とほぼ同時期に採用されたのですが、お互い全く違うものを担当していました。彼はShopifyのストアフロント——ウィジェット、チェックアウト、商品表示——を見ていました。僕の方はJordyから、ゼロから始める社内ツールの新規プロジェクトに放り込まれました。
そこからのしばらくの間に作ったものは、今振り返ってもいちばん愛おしい部分です。なぜなら、本当に白紙の状態から作ったから。メンターもいない、コードレビューしてくれる人もいない、AIもいない。あるのはドキュメントと時間、そして「絶対に詰まったままで終わらせない」という頑固さだけでした。
Shopify APIと連携して、DHL、日本郵便、FedExを束ねる出荷システムを作りました。各キャリアのAPIから情報を引っ張ってきて、共通のビューに正規化する荷物追跡ダッシュボード。誰も直してくれそうにないサードパーティUIのパッチを当てるためのTampermonkeyスクリプト。サーバーはRuby on Rails、PostgreSQLでHerokuにデプロイ。チームが注文管理に使っていたスプレッドシートを自動化するためのGoogle Apps Script。月次の売上を計算して税務申告までやってくれる会計ツール。他にもいろいろ——8年は長い時間で、細かいことはぼやけてきていますが——形としてはこうです。チームが抱える問題があれば、そのためのツールを作る。そしてそのツールを自分でも使う。倉庫で荷物を梱包し、前日に自分が出したソフトウェアでラベルを印刷し、その日に出る20〜30個の荷物を取りに来た郵便屋さんに渡す。キーボードの両側にいる感じでした。
毎日忙しかったけれど、燃え尽きることはありませんでした。むしろ大好きでした。すべてが新しかった——コードベースも、仕事以外の言語も、街も、食べ物も。あらゆる軸で同時に白紙だったわけで、それが不思議といちばんエネルギーをくれる部分でした。
インターンシップの終わり頃、Jordyから「社内ツールは本当に会社の生産性を引き上げてくれた」と言ってもらい、正社員のオファーをもらいました。もちろん、即答でイエス。ただ、最終口頭発表のために一度フランスに戻らないといけませんでした。そのタイミングのせいで——そして正直、お金がなかったせいで——モントリオールとベルフォール、両方の卒業パーティーを欠席することになってしまいました。それはちょっと心残りでした。今でも、思い出すとちくっとします。でも、東京が待っていましたから。
Seidoが素晴らしかった理由の半分は、仕事そのものではなく、人でした。チームの大半がフランス人で、おかげで日本への移行は不当なほどスムーズでした。デバッグで詰まったときはフランス語で愚痴を吐き、ランチに出て(へたくそな)日本語で注文を試み、戻ってきてまたフランス語でアーキテクチャの話をする。同僚たちはお兄ちゃんのような存在でした。Jeff、Antoine、Nico、Alex、Jason。中には今でも親しい友人がいます。
Jordy本人はかなり熱いタイプの人でした。たまに僕に対して怒ることもありました——大抵は正当な理由で、本当にミスをしたときに。よくあるパターンは、出荷が忙しい日に僕のシステムのどこかにバグがあって、本来ならとっくにトラックに乗っているはずの荷物が積み上がっていく、というやつです。僕のツールができる前は、チームは全部手作業でやっていました。でも自動化したことのいちばん厄介な副作用は、もう手作業に戻るという選択肢がなくなることだったのです。だからシステムが壊れたとき、プレッシャーは全部僕に降ってきました。時計を気にしながらデバッグして、Jordyはピリピリしていて、全部のフローが待っている。それでも毎回、最後はちゃんと収まりました。でもストレスは本物でした。彼を恨んでいるわけじゃありません。彼の下で働いて得たもののうち、技術的なこと以上に大きかったのは、自分の立場を保つやり方でした。苛立っている上司の話を聞き、その中で本当に正しい部分を受け取り、それでも自分が正しいと思うときには引かずに自分の立場を守る。今でも彼とはとても良い関係です。今は沖縄に住んでいて、最近会いに行ってきました。沖縄は、日本で僕がいちばん好きな県です。ぶっちぎりで。
仕事以外でも、日本は想像していた以上に楽しかったです——というか、もともとかなり想像を膨らませていたことを考えると、これはなかなかの言葉です。ヒップホップのサークルに入りました。何の予定も立てずに、東京の街をひたすら歩いて過ごす日々もありました。月10万円という予算は、要するにパスタとトマトソース漬けの日々を意味していました——でも、パスタとトマトソースは僕の大好物の一つでもあるので、犠牲という感じは全然しませんでした。(8年経った今も、それは変わっていません。)それに加えて、本物の日本食。とんかつ、回転寿司、ラーメン。「うまっ!」
モントリオールでの貯金でやって良かったもう一つのことは、家族を日本に呼んだことでした——両親、姉妹、全員です。自分が人生を賭けたこの場所を見てほしかったのです。みんなすっかり気に入って、それ以来ほぼ毎年来ています。
そして、やがて、疑念が芽生え始めました。
不思議なことに、それは失敗から来たわけではありませんでした。詰まることは滅多になかったし、詰まったときは力技で抜けていました。一度、Reactのレンダリングのバグで数日溶かしたのを覚えています。stateは正しいのに、UIがどうしても追いついてこない、というやつ。そういう日もありました。でも必ず出口は見つけました。解決策がいつもベストとは限りませんでしたが、動いていたし、僕は前に進み続けていました。
疑念はもっと静かなものでした。Seidoではたくさん作った——本当にたくさん——でも、それを一人で作ったのです。コードレビューはなし。「これ、N+1クエリだよ。次にこのファイルを開く人が泣くぞ」と教えてくれる人もいない。(正直、まだ何個か残っていると思います。)5分おきにデプロイしていて、動いてはいる。でも、自分のやっていることが「良い」のかどうか、まったく分かりませんでした。とりあえず動いている、それだけは分かる。
メンターが欲しかった。コードレビューが欲しかった。フランス語じゃなく日本語で働きたかった。「出荷可能なエンジニアリング」がどんなものかではなく、「良いエンジニアリング」がどんなものなのか知りたかった。
だから、出るときが来たのです。ここははっきり言っておきたいのですが——Seidoは恵みでした。いろんな意味で、あの最初の数年は日本での人生で最良の年月でした。でも、次に必要な成長は別の場所にあって、それを自分で探しに行かなければならなかったのです。
主な実績
唯一の開発者として Seido で作ったものを、もう少し具体的にまとめておきます。
- 会社の社内ツールをゼロから構築。 メンターもコードレビューもない環境で、Ruby on Rails と PostgreSQL を使い、Heroku にデプロイして毎日リリースした。
- 出荷システムを構築。 Shopify API を DHL・日本郵便・FedEx と連携させ、さらに各配送業者の API を1つの共通ビューに正規化する荷物追跡ダッシュボードも開発。
- 受注パイプラインを自動化。 Google Apps Script で自動化し、月次の売上と確定申告を計算する会計ツールを作成。
- チームが依存していたサードパーティ UI を補正。 Tampermonkey のユーザースクリプトで、誰も直さないであろう細かな不足を埋めた。
- そのツールを自ら倉庫で使用。 毎日出荷する20〜30個の荷物を梱包・ラベリングし、CEO の Jordy から会社の生産性を実際に押し上げたと評価され、正社員のオファーにつながった。
🌐 Claudeによる翻訳