退職ポエム

退職することにしたので、がっつりポエム書こうと思ってたんですが、やる気がなくなったのでブログ記事でお茶を濁したいと思います。(とか言いながら長くなってしまった笑)

特に面白い文章を書ける人間でもないので、ここ1年について思いつくままに綴ります。

どんな人?

北海道生まれ。新卒で新聞社の電子新聞開発部門に入社。

海外移住を目指して転職し、AWSのサポートエンジニアに。アイルランドに日本語サポートのチームを立ち上げるということになり、家族で移住。チーム一人目として移住し、その後の移住メンバーをサポート。その経験もあってオペレーションマネージャーに職種を変えたところ、コロナ禍に突入。

そして2021年、新しいことやりたいなーと思って転職した感じです。

直近どこで働いていたのか?

JPYC というスタートアップ企業にて働いていました。昨年9月に業務委託でジョインし、12月から本格的に社員として参画して働いていました。

「プレイングマネージャー」というふざけたオファーを頂いたんですが、12月からは CIO としてタイトルをいただきました。さらに今年8月にはサービス運用部長になり、9月からは開発部長も兼務で働いていました。

したがって、一番忙しいときは、「CIO / 運用部長 / 開発部長」でした。四部体制だったので、実質的に会社の半分の部署を指揮していたことになりますね。形だけですけど。

どんな働き方だったのか?

私はアイルランド在住ということで、日本とは時差が 8-9時間ある生活です。ですので毎日、日本時間17時ぐらいに起きてきて、そこから数時間働く、という感じでした。

重要で調整が難しい会議だけは、ときどき深夜1-2時とか、日本の朝の時間帯で参加していました。これは時差がある生活なので仕方ないですね。

一度だけ、6月に東京に飛び、全社ミーティングに参加したりもしました。

私自身、フルリモートで画面越しの仕事やマネジメントには抵抗もないし慣れているのですが、実際に会うと、やはり熱量の高さを感じる場面などもありました。

どんな仕事をしていたのか?前編

CIO として働いた時間が一番長いですかね。そこでは基本的に情シスの統括をやっていました。

と言っても、周りが優秀だったので基本は方針決めやポリシー策定といった仕事がメインです。やっぱり160時間フルで働く人と比べると、働く時間数も少ない上、しかも日本のメンバーと一緒に作業できる時間も限られるとなると、ハンディキャップは大きいです。

私が非同期で作業できる内容としては、Google/MS/AWS といったクラウド事業者のスタートアップ支援プログラムを申し込んでミーティングしたり、情シスを担うチームメンバーと 1on1 やったり、クラウド環境の権限管理をやったり、採用計画を立てたり、そんな仕事内容でしたかね。

上に立つ・・・と言えるほどの人間ではありませんけど、以下は心がけていました。

  • なるべくたくさん褒める
  • 自分の部下と呼べる人はきっちり守る(守ることをきちんと言葉で伝える)
  • しんどい時は一緒に時間とって作業する
  • 自分がわからないときはわからないと伝える
  • 相手が見落としていたり持っていない視点があるなら提供する
  • 指揮系統を壊さない
  • 誰かを一方的に貶めることはしない

どんな仕事をしていたのか?後編

8月に組織再編があり、そこから運用部長としての仕事が増えました。運用部とは、オペレーション業務を司る部署です。

オペレーション、つまり運用そのものであり、開発されて動いているシステムの裏で対応する必要がある人力作業です。これら作業は、オペレーションのチームが担当でした。(ちなみに、このチームにはカスタマーサポート・カスタマーサクセスも含まれています。)

言葉を選ばずに言えば、地味で、地道で、代り映えのしない仕事です。

でも、重要な仕事で、効率化の可能性に満ちていて、そしてコンスタントな能力が求められる仕事です。

スプリント後半で残業するとか、そういう仕事のやり方はできません。夏休みの宿題を初日にどーんともらって好きに計画したい人もいれば、毎日コツコツとやるのが向いてる人もいますよね。後者の人って、天才型は少ないかもしれませんが、会社を支える大事な仕事なんです。

まぁ、私はそういうタイプの仕事が割と好きで、そういう仕事ができる人をリスペクトしている、という背景があるという話です。サポートエンジニア時代の感覚を引きずっているのかもしれませんね。

9月からは、いろいろあって開発部長も兼務になりました。このあたりは結構しんどくて、月120時間ぐらいは働いていました。日本の人と連携しようとするとアイルランド時間の深夜になるため、見た目の時間の倍ぐらいしんどい感じ・・・と思ってもらえると、しっくりくるかもしれません。

お賃金は?

私は月160時間は働けなかったので、月給から勤務時間で計算する形でした。例えば 80時間働いたなら、160時間の月給の半分なので半額、といった感じですね。

最近のドルユーロ高もあり、日本円でもらっていたんですが、為替レートはかなり厳しかったです。まぁ、それでも役職があったので会社では高い方でした。

私は持ち家のローンなので(利率は 4% ぐらい取られるんですけどね)、上記の勤務実績で生活費はギリギリという感じでした。税金考えると年間計算でマイナスかもですけど。

ちなみにアイルランド・ダブリンは住宅事情が超逼迫していて、住んでいる家が借家だったらたぶん3倍ぐらいの値段になるので、スタートアップでは働けなかったでしょう。良い子はマネしてはいけません。

あとエネルギー問題も深刻なので、ヨーロッパで働きたい人はまず大企業で働くのを強くお勧めします。

良かったこと

月80時間ぐらいの勤務だと、お昼過ぎに子供の小学校のお迎えに行けたので、そこは良かったですね。子供と触れ合う時間は貴重なものです。

(注: アイルランドでは小学校低学年は送迎必須。そのため、共働きの時はナニーを雇ったりする。)

それから、日本の夜の勤務であっても、柔軟に対応してくれた情シスや運用部のチームメンバーには本当に感謝してます。特にミーティングとか。

開発部のメンバーとは、実質 2週間もなくて、あんまり「一緒にがんばろう!」って気分にならなくって、ご迷惑おかけしました。採用戦略とか立てるのは役に立てたと思うんですけどね、そこは私の知識不足、モチベ不足で申し訳ないと思ってます。

(私にとって)悪かったこと

悪かったこととしては、まず、癖のある同僚に悩まされることが多かったです。エモーショナルコントロールとか、アンガーマネジメントとか、そういうのをきちんと学んでおけばよかったなぁと感じました。(この辺は会社システムとか組織体制とも関わってくるし、合う合わないもあるので、省略します)

それと、9月に人員が不足し、私に負荷と権限が集中したのも、バーンアウトにつながりました。さすがに部長の兼任は無理ゲーでした。

いや、能力的、時間的には可能でした。私が160時間しっかり働いて活躍すれば兼務でも回せたと思います。とはいえ、160時間で日本のメンバーとしっかり働くと、現地時間で AM 0100 が日本の9時なので、さすがに無理があります。

その状態で PdM の仕事を期待されても、ちょっと、いやかなり難しい状況でした。ちょっとしたコードなら書けますけど、本格的なデベロッパーのバックグラウンドも、BizDev のバックグラウンドもなかったもので。。。

そんな折、会社の舵取りも難しい中で、Web3 の方向ではなく、日本ローカルのビジネスに特化していくという判断がなされました。間違っているとは思いませんが、ちょっといいホテルに泊まったのに朝食選べず納豆ご飯が出てくるみたいな、そんな「自分にとっての違和感」があり、最終的には退職という判断をしました。

いや、別に納豆ご飯でもいいんですよ。ただ、海外の人から見たら納豆って食べないし食べたくないよね、なんでそんな判断しちゃうんですか?って、そういう感じだったってことです。感覚的な話ですけどね。

あとは、今年の10月からプロコーチを目指すことを決めたので、そちらに注力するため、という理由もあります。ですが、こちらは多分に個人的な事情なのと、本当にプロコーチになれるのかまだ自信が無いので、軽く書くだけに留めておきたいと思います。

今後について

実のところ、今後も業務委託として関わっていくつもりなので、短期の影響は軽微です。これを読んでいる JPYC社のメンバーがいたら安心してください。

ただ、コミットメントに関しては大きく下がるでしょう。部長職でも CIO でもなくなるわけで、これまでのように私が全体を見て判断することが無くなるわけですから。

海外から働いているという特殊な事情があるため、なかなか仕事は見つかりません。実は社員でも業務委託でも、日本の社会システムに乗っかってないので、あんまり変わらなかったりもします。年金どうしようとか悩みは尽きないですけどね。

そんなわけで、ポエムを締めようと思います。

さいごに

海外在住でも採用したい!社員/業務委託で働いてほしい!・・・という会社がありましたら、ぜひ Twitter @TSB_KZK までお声がけください。

プロコーチ目指しているので、1on1 コーチングはガンガンやっていきたいです。そういった仕事は特に有難いです。

AWS/GCP/GWS/情シス/コーチング/マネジメント/組織論/会社文化、このあたりであれば、お役に立てるかと思います。

転職しそこねた話

私は日本国外で働く一人の ITエンジニアです。英語はたぶんビジネス中級レベルで、TOEIC 770点のときに日本を出て 4年半。ヨーロッパはアイルランドから、日本企業向けの日本語での対応を行っています。今日はそんな私が、つらつらと転職”しそこねた”話をします。

転職の機運

バックグラウンドをちょっとだけ話すと、日本でマスコミに入社し、ウェブエンジニアとして 3年働いてから今の会社に入りました。トラディショナルな文化の中で厳しい先輩方に育てられ、それなりに激務だったのですがそれなりに円満に退社し、次にグローバルな企業へ行きました。

次の会社では最初こそ躓いたものの、仕事を続けるうちに認められ、ヨーロッパで新規ブランチの立ち上げをすることに。アイルランドへ来たのは、そんなわけでした。アイルランドに来て、かれこれ 4年。今の会社に入ってからは実に 6年が経ち、そろそろ新しいことをやりたいなぁと思っていました。

棚卸しとアプライ

そんなわけで自分のスキルや経験を棚卸しして、転職を考えることにしました。まず、自分は日本語での説明スキルが高いと自負していたので、なるべく日本語を使う仕事に就きたいと思いました。海外ではそういった求人の数は少ないですが、逆に言えば競争率も低く、うまくいけば貴重な戦力になれます。英語も全くダメなわけじゃないので、業務での日英の必要性が半々ぐらいなら御の字かなと思っていました。

それから ITの知識や経験。まぁ、実務面から言ってエンジニアとして転職する以外の選択肢は無いでしょう。より高い年収を目指すためにも、専門性は大切です。アイルランドでビザに相当する work permit でも、学位の専門性、経験そして年収が重要ですし。

そんなわけで日々をだらだら過ごしていた私は、LinkedIn で A社の求人を見つけました。ポジションはいわゆるサポートエンジニア系の職種で、今と同じ、かつ日本語という募集要件がタイトルに入っていました(A社でもG社でも、まぁイニシャルは好きに読み替えてください)。とにかくその場でボタンを押しました。それが去年の11月頭のことです。

前提として、私は 2019年に現地でアパートメントの一部屋を購入しており、家族のためにもアイルランド(ダブリン)に引き続き在住できるような仕事を探していました。なのでこのとき見つけたポジションもダブリンオフィスの勤務でしたし、家から問題なく通える範囲のオフィスであることは事前に分かっていました。なので、その前提で以下お読みください。

インタビュー

3週間ぐらい音沙汰なかったんですが、11月末に HR からコンタクトがありました。そのあと 12月頭に HR の人と電話で会話し、その場でテクニカルな用語を理解しているか雑な質問がありました。面接というよりは足切りですね。

12月末には一回目のインタビューがありました。基本的な技術の質問の他、間違いがたくさんあるコードを読まされ、それについて修正案を提案するという内容でした。ポジション的にはいわゆる「サポートエンジニア」職であり、A社ではコードの読み書きが重要な位置づけなので、そういった面接なのでした。(ちなみにコンテナ系の質問には、dockerわからん!って嘆きながら答えました)

年末年始を挟んで、次のインタビューに進む話となり、1月に違う HR の人がアサインされました。調整の上、オンサイトということでオフィス訪問して 3人とインタビュー。これが 1月末の話ですね。2月に入って「情報が足りない」と言われてフォローアップインタビューもありました。

オンサイトインタビューですが、よく覚えているのが「年末であなた一人しか働いてないとき、一人の顧客からサービスにログインできないと苦情があった。さてどうする?」みたいなシチュエーションで延々詰められた質問ですね。最終的には、顧客にヒアリングを繰り返して問題がサービス側にあると高い確度を持てた段階で開発チームに直接連絡して(たとえ深夜だろうと祝日だろうと)たたき起こす、という形でまとめましたが、いまだに正解が分かっていません。まぁたぶん正解が無いタイプの設問なんですけど。

で、このインタビューには落ちました。3月頭に入っての連絡で、落胆したのを覚えてます。しかし他にもポジションのチャンスはあるということで、同様にポジション名に日本語が入っている違うチームを受けることに。この時の質問は、「SSHがつながらないときはどう調査するか」「RDPだったら」「負荷が高くてウェブサーバが死んでるときにどんなコマンドを使うか」みたいな、ひとつひとつは超簡単だが、選択肢が無数にあるオープンクエスチョンでした。(それ以前の面接も、まぁ概ね似たような感じでした)

で、4月に入って合格の連絡とオファーレターがきました。

決断

オファーレターを繰り返し読んだところ、残念ながら私が期待する年収とは折り合いがつかないものでした。事前にHRから口頭で説明は受けていて、そこでは「うんうん」と言っていましたが、RSU(ストックユニット)の割り当てを完全に理解しておらず、齟齬があったのです。

ここで補足すると、超当たり前ですがすべてのやりとりは英語でした。日本人はどこにも登場しません。私は「日本語話者のポジションだしグローバル企業なんだから日本人出てくるだろう」と思ってましたが、徹頭徹尾まったく出てこなくて面白かったです。何が言いたいかというと、専門的な職種ほど、たとえ面接で合格になるとしても、それは専門知識があるからであって、英語力はそんなに見ていない、です。実際、面接官の人も非ネイティブだらけで、しかも人によってかなり訛りとかスピードに違いがありました。スイスの人の英語は聞き取りやすかったけど、ダブリンの人の英語は聞き取りにくかったです。そういった違いはあると思います。

「これじゃ現職と同じじゃん」と繰り返し訴えるものの認められず、それでも新しいことに挑戦したいなぁと思って転職を決断しようと思ったのですが、幸いというかなんというか、辞める話を切り出す間際、自分の上司から違うロールをやってみないかというお誘いを頂きました。

オファーレターの有効期間は 2週間だったので、これを延期できないか先方と交渉しつつ、新しいロールにアプライし、そっちも何とか合格することができました。そんなわけでふたつのオファーを比較した結果、私は今の会社に留まりつつ新しいポジションで心機一転することにしたのでした。

しそこねた?

実際、私は転職したかったんです。新しい環境、スマートな仲間、今までと違うオフィス、楽しい環境、そういったものはいつでも青く見える芝生です。6年も同じ場所で働いて、新しい環境でまた成長したい、という思いがありました。

その手前で実は日本のスタートアップ企業からもお誘いがあったのですが、そっちはそっちで、アイルランドからフルリモートでフリーランス的に働くのが難しくて、オファーが出る前に断念したという経緯もあります。

私が今回お断りしたA社は世界でも有数の企業で、中に入れば自分よりもスマートで賢い人が死ぬほどいると思います(それは現職でも同じですが)。積み重ねてきた信頼が無いところでリトライするというのは、少し前のトレンドでいうと「転生」みたいなものだと思うんですよ。強くてニューゲームでもいいですけど。なので、転職して気持ちを新たに働いてみたいという気持ちは強くありました。

もちろん年収だけが問題ではなくって、ここに書かなかった要素も考えました。例えばアイルランドでは健康保険は民間の企業を使うのですが、A社と現職では家族での負担額が違うし病院に行ったときの補助額も違います(A社の方が手厚い)。そういったプラスがあれば、無論のことマイナスもあります。A社のビジネスが今後どうなるのかとか、コロナウィルスの状況下でベネフィットの一部が使えないけど補填されないらしいとか、いろいろ考えたんです。(後者はA社のコンペンセーションチームからすると金額換算して「うちの方がいい条件だぜ」って言ってるので付記しています。権利は権利、もらうのが前提デス)

海外転職したい人向け、必要とされるスキル

ここを読むのはたぶん私の同僚とか知り合いなので、無駄にフェイクは混ぜず、分かる人には確実に分かるように書きました。

とはいえ、海外転職したい人もここを見るかもしれないので、そういった人向けに私の雑感を書いておくと、まず専門性が第一です。例えばアイルランドではクリティカルスキルワークパーミットが一番良いビザですが、これをとれる職業はエンジニアや医療関係といった一部の職種に限られています。普通のタクシードライバーとかがガンガン移民されると仕事が溢れるので、国として当然の措置だとは思います。

なので、職種を絞り込んだ上で自分の強み弱みを分析し、足りない部分を加えていくことになるでしょう。例えば先に言ったように、エンジニアであれば言語力はそれほどでもなく、むしろ知識や経験がモノを言います。A社の場合はオープンクエスチョンばかりだったので、当然ながら英語力としては、論理だてて問題を説明する力があればいいです。英語なんて定型文で限られたものでいいですし、単語力だって IT 関係やってればほとんどカタカナです。逆に英語が強くて技術が弱いという人は、身近な強い人に本をあっせんしてもらい、数冊読んで理解すれば結構戦えると思います。(新しい技術が日夜出てくる業界なので、「学べる力」というのも、かなり評価されます)

他の仕事はわからないのですが、マーケターとかカスタマーサポートとか、そういった仕事の場合は英語力が超重要だと思いますけどね。残念ながらというか、アイルランドで日本語だけで仕事をするとなった場合、ポジションは少ないので、もしかしたら深夜勤務のコールセンターぐらいしか見つからないかも。

でも、英語力に自信が無い=英語ができない、ではないと思うので、職種や業種、ポジションを色々調べて、自分でも戦えそうな分野で戦っていく、というのが、海外で雑魚が生き抜く、ひとつの戦略ではないでしょうか。

おわりに

転職を考えてる人、今の仕事や年収に満足していない人は、ぜひトライすればいいと思うんです。そこは周りの人も相談受けたら、サポートしてあげてほしい。自分や自分のチームが迷惑を被るとしても、チームの問題かもしれないし、長期的に見ればどーせ転出してしまうでしょうから。(とか雑な言い方は各方面から怒られそうだけど)

一方で、自分が今回そうでしたが、いろんな人に相談したり、差し支えない範囲で腹を割って話すということで、新しい、今まで見えてなかった、全然違う道が拓かれることもあります。もし迷っているなら、迷っているということについて誰かに相談するべきです。それが間違っていることもあるし、正しいこともある。大事なのは自分の本心を納得させることだと思います。

客観的に見て実現可能で妥当なことと、自分が考える期待値との間には、たいてい溝があるでしょう。誰しも自分のメソッド、やり方を持っていると思いますが、私のは、色々な人と会話することで自分を客観視する、というメソッドです。ご参考になれば。

企業化する犯罪組織

没ったので、ブログで。

 

サイバー犯罪は年々、組織化している。セキュリティ製品を販売する Bromium が 2018年に公開した以下のレポートがある。
レポートによれば、サイバー犯罪の規模は 1.5兆ドルにたっしており、違法な支払い、ロンダリング、資金供給といった生態系が生まれているという。
サイバー犯罪への注目が高まっている中、Hewlett Packard Enterprise(HPE)が 6月にラスベガスで開催したイベント「HPE Discover Las Vegas 2019」で、FBI のシニアコンピュータサイエンティストである James Morrison氏は、以下のように述べた。

現代のサイバー犯罪組織は、彼らのビジネスにおいて、利益を再投資しています。データセンターの拡大、機械学習といった技術は彼らにとって必要なものになりつつある。

2年前に同じイベントで、ファームウェアやハードウェアについて言及したことは今でも覚えています。今、サイバー犯罪はより洗練され、組織化されています。これはサイバー犯罪組織と呼べるものです。数年前、組織と個人は半々といったところでした。しかし現在、高度に組織化された犯罪グループが極めて多くなっています。これまでとは異なる国、インドやナイジェリア、インドネシアといった国々でも、これらの組織が見られるようになっています。

攻撃が容易に実行できるように

サイバー犯罪が急増しているのは、参入障壁が低くなっているのも理由だ。かつてのように天才的な人間がコードを書く必要はなく、単純なランサムウェアツールを購入できる場所へのアクセスだけだ。このような場所は通常の検索では絶対にたどり着けないため、インターネットを”深く潜った先”、ダークウェブと呼ばれている。購入したメールアドレスリストと組み合わせることで、ターゲットがリンクをクリックするように仕向け、そして利益を得ることができる。
このようなサイバー犯罪の経済的な例として、10万メールアドレスを 50ドルで購入し、200ドルのレンタルランサムウェアを送り付けるという手口を説明した。
このうち 5000人がクリックし、さらにそのうち2割にあたる 1000人が身代金を 400ドルずつ払ったとすれば、たった 250ドルの投資で 40万ドルを得ることができる。
さらに、ランサムウェアのレンタルには 24時間 365日の手厚いサポートがついている。ライセンスを1か月購入するだけで40万ドル稼げるとすれば、これこそが規模の経済と呼べるものだ。
攻撃を行う経路も、メールはもちろん、インターネットルーターやコンピュータだけではない。身近にある IoT 機器、例えば水槽の管理用ソフトウェア、あるいは Raspberry PI のように小さな電力で動くデバイスも、攻撃者にとっては便利な踏み台になりえてしまう。
さらに、医療システムや救急システムといった非常に重要な社会インフラにランサムウェアが感染した場合、事態はより深刻になる。実際、フロリダ州にあるリビエラビーチ、レイクシティはそれぞれ60万ドル、50万ドルの身代金を支払い、IT部門で従業員が解雇されたという報道もある。
サイバー犯罪の最先端で活躍する FBI で活躍する彼ですら、サイバーセキュリティ分野への投資が本当に重要であり、被害を受けてからでは遅いと述べている。保険についても言及していたが、まだまだサイバーセキュリティ分野での保険は発展途上にあり、自分の身は自分で守らねばならない。

サイバー犯罪の産業化

組織化が進む一方で、専門的な産業としての側面を持ち始めているという指摘もある。Hewlett Packard Enterpriseの副CISOである Drew Simonis氏はこの状況について、「サイバー犯罪が産業になりつつある」とした。

会社を訪問することは多いですが、ネットワーク内の不審なトラフィックを検出できない会社の数には未だに驚いています。彼らは「何が起こったのかわかりません」としか言わないのです。ランサムウェアは今や “クリックして感染する” だけではありません。何らかの防御システムを持ち合わせていないとすれば、検出されるまでには 1週間以上かかるでしょうから。一丁あがり、ですよ。

ランサムウェアは少しずつ姿形を変え、30日で全く違うものが出現するという。今月に入っても、Sodin や Ryuk が猛威を振るっている。
そしてもちろん、身代金を要求するだけランサムウェアに限らず、暗号資産をマイニングするマルウェアも問題だ。
企業においてセキュリティ担当者の採用や予算の充実なだけではなく、個人レベルでも今まで以上に高いセキュリティ意識が求められる。

 

AGAMAウォレットが自らハッキング攻撃でユーザー資金を保護

面白かったんですけど寄稿先でボツったので、こちらへ

ユーザー保護のため「攻撃」を行ったAGAMA

今月5日、AGAMAウォレットを運営するKomodoプラットフォームがセキュリティ通知を報告した。
古いウォレットアプリにバックドアがあるというセキュリティ研究者の報告を受けてのことだ。
攻撃者が、ウォレットに格納されている暗号資産を簡単に盗むことが可能になっていた。
これを受けて、Komodoチームはウォレットの脆弱性を利用し、ユーザーの資金を保護するために自ら「攻撃」を行い、資金を保護した。
保護された資金を見てみると、96 BTC約800万KMDとなっていた。
総計で 1200万ドル(日本円で約13億円)が転送された計算だ。
Komodoチームによる脆弱性に関する報告記事
komodo

発見の経緯

詳細を報じているZDNETの記事によれば、Agamaウォレットのバックドアは、セキュリティチームによるnpm JavaScriptパッケージリポジトリの監査中に発見された。
発見を報じるnpm の記事では、以下のような流れになっていたようだ。
・便利なパッケージ(electron-native-notify)をnpmに公開 ※この時点ではバックドアは含まれない
・使われるようになると更新を行い、バックドアが含まれたコードをアップロード
・ソフトウェア開発者(今回は Komodoチーム)がバージョンの更新を行う
今回 electron-native-notify の更新履歴を見ていくと、2019年3月6日に最初のバージョン 1.0.0 を公開し、10回以上もアップデートを続けていた。
こういったアップデートを続けていく行為は、開発者にとっては比較的一般的であると同時に、当該ソフトウェアやパッケージが活発に更新されていることを示すものだ。
攻撃手法としては一般的だが、開発サイクルにおける弱点を突かれた格好で、必ずしも Komodoチームを責めることもできないだろう。
その後 2019年3月8日には Komodoチームが実装に追加。その後、3月23日に悪意のあるコードが挿入され、4月13日に Komodo側でのアップデート(v0.3.5)が行われたため、実際にコードが利用されるようになっていた。

npmとは

Javascript に関してはご存知の方も多いと思うが、npm について知らない方がもしかしたらいるかもしれないので、念のため、一応簡単に解説をしておきたい。npm は、Javascript でソフトウェアの開発を行う際に使われる パッケージ管理ソフトだ。

Javascript はもともとブラウザ向けに開発された言語だが、node.js というサーバー側で動作する実装も一般的になってきている。
開発者は一般に、素早く、かつ安全に開発するため、広く使われているパッケージ(モジュール)、つまり部品を再利用することを好む。
そして、サーバー側の開発を行う際には、ソフトウェアを安定的に稼働させるため、パッケージのバージョンを固定したり、定期的にアップデートしたりといった作業が発生する。
こういった作業を簡略化するのが npm だ。ほか、Linux では yum や apt、PHP だと Composer などが知られている。

おわりに

今回、パッケージ管理ソフト npm の一般的な動作を逆手にとり、悪意あるコードを挿入するという手口が発覚したが、ユーザーの資金が無事に保護されたという点を考えれば、良いニュースと言える。
ユーザー側で防ぐことは簡単ではないが、不審な挙動を発見次第すぐに開発チームに連絡したり、開発チームの方であれば  npm チームと連携することで、迅速な対応が取れたという事例と考えることもできる。
もちろん、Komodoチームの迅速な対応、脆弱性を逆用するという技術力があってこその結果だ。
今後の彼らの発展にも期待したい。

 

Cryptopia へのハッキング、その被害と詳細について

こちらのも昨日の記事と同様、ポシャったので個人ブログで。
1月13日から1月28日にかけて、Cryptopia が複数回のハッキングを受けました。このとき Cryptopia は 2度にわたって被害を受けてしまいましたが、その総額は 1600万ドルを超えるとされています。
警察機関が捜査に入り、メンテナンスの状態が続いていますが、このインシデントがなぜ発生してしまったのか、掘り下げつつ振り返ってみたいと思います。
まずはじめに、概要をおさえつつ、Cryptopia がハッキングを受けた時系列を振り返ってみましょう。
攻撃者は今回、6つのウォレットを用いたことが分かっており、これは Etherscan.io 上で Cryptopia Hack としてラベル付けされています。このラベルは Etherscan.io の labelcloud から一覧を確認することができます。今回の攻撃では、それぞれのウォレットは Cryptopia_Hack1 から 6 までナンバリングされています。
・タイムライン
次に時間軸を辿ってみましょう。1回目は、日本時間 1月13日 22:28:29 から転送が始まりました。このときは最初にコアウォレットから、19390 Ether が転送されました。
その後、続けて 76000以上に及ぶセカンダリウォレットから転送が続きました。攻撃者がメインで用いたウォレット( Cryptopia_Hack1 )にウォレット数だけトランザクションが記録されることになりました。並行して、Dentacoinや Oyster Pearl といったトークンも転送が行われました。Ethereum やトークンの転送は数日間、断続的に続きました。
一方、Cryptopia が公式にアナウンスを行ったのは 1/14 15:55 にメンテナンスを開始したのがきっかけでした。その後、1/15 17:00 にセキュリティブリーチについて報告があり、トークンの盗難があったことを認めました。
今回の調査を行った elementus によれば、資金が格納されていたコアウォレット、セカンダリウォレットそれらすべてについてコントロールを失っていたのではないか、とされています。つまり秘密鍵を盗まれた上、鍵を削除されてしまったのではないか、あるいは鍵を置いていたサーバーを乗っ取られたのでは、という推測が発表されています。
彼らは今回、Github 上で調査結果を発表していますが、盗まれた資金の金額や量、経路をまとめるだけでなく、1月21日 時点で引き続き盗難のリスクがあるウォレットについても cryptopia-losses.csv として指摘していました。
しかし指摘も虚しく、1月28日には同じことが起きました。このときも 17000以上の大量のトランザクションが発生し、約 1675ETH が盗まれました。2週間で資金が少し回復していたのは、マイニングリグなどがメンテナンス関係なく送り続けていたからではないか、という見方をされています。
2回目に盗まれた Ethereum は Cryptopia_Hack5 と 6 に転送され、最終的に Cryptopia_Hack2 と名付けられたウォレットに転送されました。これは 1回目に使われたものと同じであることから、一連の攻撃者は同じ人物あるいはチームとされています。
elementus が推測しているように、1月14日 時点で異常を検知してメンテナンスに入っているわけですから、それ以降も数日間攻撃が続き、さらに 1月28日に再度発生した攻撃に対策を講じられなかったのには、理由があるはずです。この状況は、ウォレットの秘密鍵が失われたのではないか、と考える根拠として十分でしょう。
しかし、冒頭で紹介した19390ETH のトランザクションの後にも、実は払い出しらしきトランザクションが記録されています。このことから、Cryptopia 側で利用している秘密鍵が削除されて使えなくなったわけではなく、払い出しシステムは 15時間ほどの間は動いていたのでは、と考えられます。
資金のほとんどは盗まれていて、メンテナンスに入った時点でEthereumの転送は終わっていたのですが、この時点で対策が打てれば2回目の攻撃は成功しませんでした。
これについては、サーバーが乗っ取られていたため対策が取れなかった、もしくは Crypopia 側の対処が遅かったために一切の対策ができなかった、このどちらかの可能性が非常に高いでしょう。
・各個人が取れる対策について
昨今、取引所をターゲットにした攻撃は苛烈さを増しています。もちろん内部犯も対策をすべきですが、スピアフィッシングや水飲み場攻撃など特定の人間をターゲットにした攻撃を防ぐことは簡単ではありません。
では、今後も同じようなインシデントは発生すると想定し、各個人が取れる対策はどのようなものがあるでしょうか?
ひとつは、取引所に必要以上のトークンを置かないというものです。
被害を受けたとしても、すべての資産を盗まれないよう、ダメージコントロールをするという策です。
そして、もし使うときは、なるべく迅速に取り出しましょう。
もっとも簡単な対策としては、たくさんの人に長く利用されており、かつ、自分が信用できると判断した取引所を使うことです。
技術的な視点で取引所の挙動を調べることは簡単ではありません。しかし、良い取引所ならば運用面など、その他の観点で見ても良い取引所だと言える確率が高いはずです。
サポートの返信が早い、メンテナンス発生時の報告がタイムリーに行われている、情報開示が迅速である、セキュリティインシデントを公開してきた実績がある・・・などでしょうか。
・さいごに
人間だって間違えますし、システムのバグも完全になくすことは難しいため、少しずつ改善を積み重ね、減らし続ける必要があります。
つまり、小さな積み重ねが信頼につながるのは、人間もシステムも同じなのです。
ブロックチェーンや暗号資産のエリアでは新しいサービスが日々作られては消えていますが、リスクを自分で見極める、その一助になれば幸いです。

QuadrigaCX の失われた ETH が見つかった件について

寄稿する予定で書いていたのですが、ポシャったので個人ブログで公開します。
QuadrigaCX の保有していた ETH などの資産について、CEO  Gerald Cotten氏が亡くなったため紛失したと言われていましたが、約60万ETH が見つかったというレポートがブログにて公開されました。
zerononcense が公表したレポートは、有名な Kraken取引所の Jesse Powell 氏が協力しているということもあり、十分なボリュームで解説されているため、少し見ていきたいと思います。
まず背景から。2月28日、Kraken 取引所の CEO はブログにて最大10万ドルにも及ぶ懸賞金をかけることを示しました。QuadrigaCX の顧客資金は 1億9000万ドルと見積もられていたことや、レポートでも触れられているように取引所で資金が保管されている見込みがあったことから、このような形に踏み切ったのでしょう。
実際、元社員などが、鍵や保管先の取引所一覧などを提供してくれるという可能性を考慮に入れていたと思います。
さて、その直後に公表されたレポートでは、12 の Ethereum ウォレットアドレスが記載されており、そのいずれも、QuadrigaCX の顧客のアドレスではないことが確認されています。
なぜアドレスが今になって見つかったのか、研究者が発見した情報について、順を追って見てみましょう。
レポートでは取引所におけるホットウォレット、デポジットウォレットの説明が含まれるものの、ここでは割愛します。
  1.  アドレス 0xd72709b353ded6c8068cc78988613587a4cae8de について
アドレス0xd72709b353ded6c8068cc78988613587a4cae8de は、Bitfinex のデポジット用ホットウォレットアドレスです。
一般に取引所は、アドレスを使いまわすことはあるものの、各顧客に対しユニークなデポジットアドレスを提供します。
  1. QuadrigaCX のホットウォレットアドレス
アドレス 0xb6aac3b56ff818496b747ea57fcbe42a9aae6218 は、QuadrigaCX のホットウォレットアドレスです。
このアドレスは宣誓供述書に基づいて確認されています。
  1. 大きな額のトランザクションを追いかける
アドレス 0x7ea5e875a386b66d11a0ad1866ca7b5f2745f049 からは、QuadrigaCX ホットウオレット 0xb6aac3b56ff818496b747ea57fcbe42a9aae6218 へのトランザクション 1 2 があります。
しかし、トランザクション 3 4 を見ると、同じアドレス 0x7ea5e875a386b66d11a0ad1866ca7b5f2745f049 から Bitfinex のデポジットアドレス 0xb6aac3b56ff818496b747ea57fcbe42a9aae6218 に対し、約1000ETH が転送されています。
  1. 考えられる可能性について
まず考えるのは、3. で見つけたアドレスが顧客のもの、つまり QuadrigaCX が生成したデポジット用アドレスではないか、ということです。
QuadrigaCX ホットウオレット 0xb6aac3b56ff818496b747ea57fcbe42a9aae6218 へのトランザクションが記録されていることから、顧客向けに生成されたデポジットアドレスかもしれないという推測が成り立ちますが、この説明は少なくともトランザクション 1 と 2 には合致します。
しかし、これは取引所の仕組みで否定することができます。
取引所は一般に、デポジットアドレスから顧客へのトランザクションを生成することはありません。
報告書に詳細はありませんが、QuadrigaCX のこれまでの膨大なトランザクションを確認した結果も、これを裏付けるとの記載があります。
つまり、顧客向けに生成されたアドレスであり、Bitfinex のデポジットアドレスに対し引き出しが行われた、という可能性は否定されます。
残る可能性は、QuadrigaCX が秘密鍵を使ってトランザクションを生成した可能性です。現時点でこれ以外の可能性はなく、99% 正しいだろうと言われています。
これと同様の調査を進め、Bitfinex と Poloniex、そして Kraken に多額のトランザクションを送信していたことが確認されました。
・もうひとつの発見
Exit Scam(出口詐欺)とも噂されている今回の件ですが、トランザクションを調査していくうち、CEO の Jennifer Robertson が亡くなったとされる 2018年12月9日以降、トランザクションはパッタリと途絶えていたことが分かりました。
各ウォレットに関して最後にトランザクションが生成された日時は、12月8日が最後となっているからです。(自動で生成されたとみられるトランザクションはいくつかありますが)
調査の結果として、各取引所には 649708 ETH が残っていると見積もられています。
転送を行った時点での価値はおよそ 1億ドル、現在の価値でも 9000万ドルに達します。
Bitfinex: 239240 ETH
Kraken: 84248 ETH
Poloneix: 326220 ETH
・事実と考察
著名な人々の意見や、確認されている事実についても追いかけてみましょう。
Coinbase の CEO は分析を行った上で 2/22 に出口詐欺である可能性は低いと言及しており、「取引所としては最古のひとつなので、出口詐欺だとすればもっと早くに発生していたはずだ」、とも述べています。
Binance の CEO は出口詐欺の可能性について言及していますが、詳細については追いかけていないので間違っているかもしれないとインタビューで発言していました。
また、3/13 に CEO の妻 Jennifer Robertson が供述した内容が公開されました。これによると、死亡した CEO Gerald (Gerry) Cotten は、2018年に発生した銀行との紛争において資金が枯渇しそうになった際、ユーザーへの送金を遅延させないために個人の資金を注ぎ込み、ビジネス継続のためにベストを尽くしていたと訴えかけています。
加えて、インドの病院も死亡診断を発行した事実、当時の状況などをパブリックに公開しており、Indiatimes が 2/7 付の記事で報じています。
これらを総合すると、出口詐欺だった可能性は低いと考えられます。
各取引所の資金が 12/9 以降動いていないこと、家族を残していること、異国の病院で亡くなっており状況が克明に記されているからです。
一方、資金の管理が粗雑で、現在まで回復できていない点は、暗号資産の問題点をも浮かび上がらせます。
秘密鍵は、セキュリティを考える上でただひとつの鍵である以上、それをむやみに誰かに渡せないということです。
これについては、NEM をはじめとしたいくつかの暗号資産ではマルチシグなどの仕組みが実装されつつありますし、今後も技術革新が続くことでしょう。
・おわりに
金額の大きさやマーケットへの影響を考えても、これらの資金が無事に QuadrigaCX に戻るよう、各取引所が協力してくれることは間違いないでしょう。
無事に QuadrigaCX の顧客に資金が返還されることを願って、本稿を結びたいと思います。

 

Lyrebird

https://lyrebird.ai

面白いサービスなので紹介します。

もともと思いつきで声とか音声をディープラーニングにぶちこんだら楽しいだろうか?と考えて調べたらコレがありました。他はあまり見てないです。

自分で文章を30以上読んで認識させると、多分音素とかを分解して保存し、それを使って文章生成ができるようになります。

50文章ぐらいだと結構ノイジーでした。自分の英語の発音の問題もあるかもしれませんが。

日本語でも似たようなことやってそうな気がしますけど、気軽に試せるのがあれば誰か教えてください!

ちなみに子供に聞かせたら三分ぐらいは興味を持っていました。

欧州で仕事をする

このブログ、無理なく1枚の写真を投稿し続けるというチャレンジを10か月ほど続けていたのですが、今年4月に挫折して放置していました。

 

そんな中、先日「海外で子育てしてる情報って少なくね?」と思い立ったので、衝動的にアンケートを取りました。選択肢は適当でしたが、なんと就活が12票でトップでした。次いで生活事情。

 

そんなわけで、今回は現地の企業に就職するにはどうしたらいいか、書いてみたいと思います。注意点ですが、私は現地の企業で就活したわけではないので、そこんとこはご了承ください。


 

海外で就職するには (一般論)

  • 主に日本から海外への就職を考えている人向けに書いていきます。アメリカは対象外です。
  • 私の周囲にはどうしてもウェブ系のエンジニアが多いため、その視点に偏るのはご承知おきください。

学生ビザやワーホリビザで現地へ行き、面接を受けるというのが一番最初に思いつく手段ではないでしょうか。個人的にはお勧めしません

現地で仕事を探すとなれば、手当たり次第になります。仕事を選ばないならば夜勤なり日本料理店なり選択肢はあるかもしれませんが、そういった「就職」はここでは扱いません。

職種によるとは思いますが、英語が雑でも専門性があれば十分やっていけます。ヨーロッパの各大都市、特にアイルランドのダブリンは移民だらけです。インド人、ブルガリア人、イタリア人、中国人 etc。それぞれがそれぞれのアクセント、スピードでしゃべっています。

英語がバリバリしゃべれる人は英語のトレーニングクラスに入って知識ゼロからでも戦えるかもしれませんが、そうではない日本人の方が多いと思います。英語はもちろん学ぶ、でも業界で通用する知識やスキル、経験を蓄えて、そしてそれをアピールする術を身に着けるのが良いと思います。

仕事を探す

日本にいるという前提に立つと、一番簡単な手段は、海外にコネクションを持つエージェントにつないでもらうことです。国外ともコンタクトするかもしれないので、skype とか電話がメインになるかもしれません。一方、面接をする側から見ると、エージェントは高価なサービスです。彼らは成功報酬として年収の何割かを持っていきますので、お金が潤沢に無いと使えません。

ちなみに日本国内で転職エージェントに会うと、たまに外国人が出てきます。彼らは外資系企業のHRにコネを持ち、英語を話せる日本人を探しているわけです。もちろん外資系企業を視野に入れてもいいでしょうし、彼らと直接英語で会話することで、英語の面接の練習にもなるでしょう。自分の言いたいことを整理して言えていれば、自信を持てるかもしれません。

実際に仕事を探す段になったら、LinkedIn は必須です。プロフィールをなるべく充実し、転職シグナルを設定し、めぼしいエージェントに繋がり申請を出したり、興味があるポジションを保存したり実際に応募します。Glassdoor で年収を下調べしたり、スタートアップも見るなら Angel listなども見てみると良いでしょう。あとは国を絞り込んで現地の企業を探すというのも考えられるかもしれませんが、やはり外国人を積極的に採用している企業を探すべきでしょう。

実績をつくる

専門性が無い、という方、これから実績をつくって知識を蓄えればいいと思います。ピボット、つまり専門分野を切り替えることは、若ければ若いほど簡単でしょうけれど、何歳だって別に挑戦ができないということはないと思います。

IT系だと、勉強会でLTをする、カンファレンスで講演をする、目立った実績が認められれば本を書く・・・ぐらいまで実績が積めれば、言うことはもう何もありません。そうでなければ、日英で技術ブログを書きましょう。あるいは、Github でリポジトリを作って誰かの役に立つものをつくりましょう。実際にモノがあって、URL があって、評価されている痕跡があれば(0 star だとダメですよ多分w)、それはそれで一つの実績として語れると思います。

あとは、udemy や Coursera、MITやスタンフォードも動画を公開しているので、シリーズを通して学ぶとか、なにかひとつやり遂げた実績をつくれば自信を持てるかもしれません。本気で学ぶのならば、大学に戻るのも一つの選択肢でしょう。

もっと簡単に海外へ行きたい!場合

イージーモードはときどき転がっています。

私個人は前職の大企業を「海外に行きたい」という理由で辞め、何年かのち、アイルランド・ダブリンへの片道チケットをゲットしました。その後も日本人は増え続け、チームも大きくなってきているので、「クラウドの中の人」に興味がある方はぜひ twitter でお声がけください。

イージーモードは他にもあるはずです。アイルランドに限定すれば、薬や医療系の駐在員が何人か滞在しているそうです。イギリスならば金融系、車両系、みたいな感じで駐在に選ばれれば、何年かは楽しく生きていけるでしょう。

英語に抵抗が無いならば、海外の大学へ進学するのもいいでしょう。もちろん現地の就職フェアで競うことになりますが、スタート地点はみんなと同じ場所に立てるはずです。

あとは、現地に住む権利を持つパートナーを見つけるのも手でしょう。そして、フリーランスで仕事をする選択肢もあります(現に、美容師や鍼灸師といった方々は自宅で施術を行っていたりします)

その他の選択肢としては、メルカリやサーバーワークスさんのように、現地に拠点を持つ日本企業を当たるのも考えられます。いずれにしても、各企業で求められるスキルレベルを満たした上で、英語力やヘッドカウントにもよるという結論なので、最終的には運になるでしょうけれども。

最後に

文章書くセンス皆無なんで、こんな記事を書いて何かの役に立つのか…という気持ちで一杯ですが、質問などがあればお気軽に @TSB_KZK までどうぞ!

私が預金を憎むわけ

仮想通貨、某所で詐欺っぽい案件なども出てきていて、ちょっと自分を見つめ直そうと思いました。そこで、自分の考えを整理してみました。タイトルは少しでもキャッチーにしようとしただけ、中身もそれっぽく書いただけで、大した内容ではありません。

年末ということで休みを取って旅行に来ているのですが、子供が寝たあとは暇で仕方ないので、このような駄文を書いています。

続きを読む