見出し画像

【北欧スウェーデン】海外で働くITエンジニアの経歴書【2020年度版】

どうも、スウェーデンでITエンジニアをしているあめぞう(@amezousan)です。

最近ありがたいことにTwitterのフォローしてくれる人が増えてきました。そして多くのフォロワーさんがエンジニアを目指している初学者である、と言うことも理解しています。

それを踏まえた上で、僕の言ってることがどの程度みなさんにとって有益なのか、再現性があるのかについて、僕の経歴・経験を元に解説して行きます。

結論から言うと、僕からは下記の事項が学べます。

・コードを書かないエンジニアとしての働き方

・プログラミング初心者の壁の越え方、考え方

・クラウドエンジニアとして必要なスキルセット
・アウトプット下手から上手になるまでの過程を観察できる🔥

逆に次のようなことは学べません。

・フリーランスのなり方
・開発のベストプラクティス

・ウェブ系エンジニアのなり方
・プログラミング中級者向けの知識

ただ当然のことながら僕も日々成長していくので上記事項は1年後には変化しています。と言う長い前置きをして、早速見て行きましょう!

①学生時代

僕のプログラミングレベルを一言でいうと「初心者から見ると知ってるように見えるが、上・中級者から見ると全然ダメ」でした。

21歳の時にようやく「if文」をまともに理解。(それまでは何となく分かったふりをしてコピペ、模写を繰り返してただけです。)

恐らく真面目に勉強されている皆さんの方が詳しいのでは無いでしょうか。

②日本での経歴

大学中退後、ネットワーク、ウェブアプリの脆弱性診断を行うセキュリティエンジニアとして働き始めました。

🗺簡易年表
僕の日本での4年間は次のような感じです。

 ■エンジニア見習い(2年)
 → 某銀行案件(半年)
 → 客先常駐(半年)
 → セキュリティ部の部長(1年)

✅ 業務を通して学んだスキル
■ 全エンジニア共通で必要な基礎知識
「OSIモデル、ネットワーク(TCP/IP)、HTTPプロトコル、Linux、Windows、BASHの基礎」

□ セキュリティ系の知識
「Proxyツール(BurpSuite, OWASP ZAP)、OWASP Top10、ウェブアプリ・ネットワークの脆弱性知識及び検査方法、検査ツールの使い方」

□ マネジメント系の経験
小さなセキュリティ部署の部長を1年間経験。この経験が海外移住などで役立ったかと言えば分かりませんが、当時の僕を評価してくれた上司には感謝してます。またこの経験から難しいことにも挑戦する勇気を得られました。

独学で学んだスキル(業務改善のために色々と勉強してました)
■ プログラミング系
「Rubyを使ったスクレイピングツール、データベース(MySQL)、Javaを使ったプラグイン作成(BurpSuite用)、PHPを使った簡易ウェブサービス、MVC(Model, View, Controller)の理解、RubyOnRailsの基礎」

・スクレイピングツール例

□ 事務系の知識
「Windows Office全般(Power Point, Excel, Word)の知識、特にVBAを利用したマクロ(Word, Excel)」

上記の内容を4年間を通して学びました。正直ウェブ系エンジニアとして活躍するためには全然スキルセットが足りていません。が、独学で学んだスクリプト作成は、プログラミング初心者の壁でもあったりします。このレベルは、プログラミングを主体としたエンジニアになるための超えるべき壁です。

この時の僕は「ウェブ系エンジニアとして初心者、セキュリティエンジニアとして中級者、クラウド知識は皆無」と言うレベルです。

この状態のまま、スウェーデンへと移住し、クラウドエンジニアとしてのキャリアをスタートさせます。下記の記事を読んでない方は後で読み返すとより理解が深まります。

👉スウェーデンで初めての仕事を手に入れた話

③海外での経歴

2017年7月にスウェーデンへ移住と同時にクラウドエンジニアとして働き始めました。

🗺簡易年表
僕のスウェーデンでの年表は次のような感じです。

■1社目: クラウドエンジニア(1年7ヶ月)

✅ 業務を通して学んだスキル
■ クラウドエンジニアとして役立つ知識・業務経験
「サーバレスっぽいサービス(Lambda, SSM, Step Functions)、インフラのコード化(Cloudformation + Troposphere)、AWS上のCI/CD(CodeCommit, CodePipeline, CodeBuild, CodeDeploy), AWS全般の知識(EC2, VPC, ELB, DynamoDB, RDS, ApiGateway, SWF, Elastic Beanstalk, S3, IAM, Cloudwatch, GuardDuty, Inspector, WAF&Shield/etc)」

またAcloudguru(Udemyとは異なり月額制のAWSの学習サイト)で半年間AWSを学び、AWS Solution Architect Associateに合格。その後、Developer、SysOps Associateにも合格して計3つの資格を取得しました。

ここでガッツリとAWSの実務経験、基礎知識を得たおかげで次の職場ではそれらの経験、知識はかなり役に立ってます。

独学で学んだスキル
■ クラウドエンジニアとして役立つ知識
「Docker」(学ぶの超遅い!!)

□ 生活スキル
「スウェーデン語、英語、スウェーデンの仕事文化への理解」(特にスウェーデン語はゼロから学び始めて半年程から仕事でも使うように。英語は転職活動中に伸びた感じがします)

会社以外では特に勉強した記憶がありません。スウェーデン語もDuolingoを毎日30分やる、ってほどの感じでした。

👉 スウェーデン語をゼロから学んで仕事で使えるようになった話

そして2019年の冬に転職しました。

👉スウェーデンでコネなしで転職に成功した話

■2社目: SRE/DevOpsエンジニア(2019年2月〜現在まで)

✅ 業務を通して学んだスキル

■ クラウドエンジニアとして役立つ知識・業務経験
「コンテナ技術を利用したウェブアプリのインフラ開発・運用経験(Kubernetes, EKS, Helm, Helmfile, Tiller)、コンテナ技術上の監視設計及びアラート対応の自動化(Prometheus, PrometheusOps, Thanos + VictorOps)、SRE/DevOpsの基礎知識(GoogleのSRE本がオススメ)、CI/CD(Jenkins + Bitbucket)、AWSの更なる業務経験(Elasticsearch, AutoScalingGroup)、インフラのコード化改(Terraform + DynamoDB + S3のチームでインフラ開発するベストプラクティス), Apexを使ったLambda開発, etc」

□ 一般的に役立つ知識
「Nodejs, アジャイル開発(JIRA, Bitbucketを利用)、Gitの基本的な使い方、チームとしての働き方(今まで個人プレーばっかりでした), etc」

⏩ 独学で学んだスキル
■ クラウドエンジニアとして役立つ知識
サーバレスブログ(Route53, Cloudfront, S3, ACM + Hugo), GCPを使ったウェブアプリ開発(Nodejs + Cloud Functions + Firebase Storage)」

□ ただの趣味
「NoCode、LowCodeの知識・実例、TwitterBot開発、アウトプットの方法」

現在のレベルを言い表すと「ウェブ系エンジニアとして何かクラウドがめちゃ詳しい初心者、セキュリティ・クラウドエンジニアとして中級者」です。

ウェブ系エンジニアとして働くとすれば恐らくサーバレス環境の案件を担当できるのでは、と勝手に考えてます。ただ通常のウェブ系の人と比べて、依然スキルセットが足りて無いので、今よりも給与は間違いなく下がり、ジュニアポジションでの採用になると考えられます。

なぜ海外でエンジニアとして働ける?

「なぜ海外でエンジニアとして働けるのか?」

これは、技術ができるガチのエンジニアではなく、周りを全力でサポートをするエンジニアとしてのポジションを確立しているから、だと考えられます。

具体的には下記を習慣として行動しています。

・常にポジティブ
・重要な人には即レス
・自分の仕事結果、得た知識を文書化する
・相手の話を相手に負担を掛けずに理解する


■ 常にポジティブ
本番環境でインシデントが起きたら「パーティだ、やった!」って周りに言ってますw

重要な人には即レス
重要な相手には、チャットは3分以内、メールは5分〜10分以内には返信してます。

自分の仕事結果、得た知識を文書化する
誰かに口頭で教えてもらった手順や、気がついた内容を全て文書化しています。インシデント対応の際もきちんと5W1Hを書くように心がけています。

相手の話を相手に負担を掛けずに理解する
相手の言ってること以上のことを、持ってる知識をフル回転させて理解に努めます。例えば、Linuxのコマンド操作を教えてもらう際はわざわざ文書化してもらうのではなく「あなたの実行ログだけ送って」と言います。相手に負担の掛からない方法を僕は好みます。

相手から巻き取った技術で周りに共有すべきものは全て文書化します。

最後に

どうでしたでしょうか。恐らく勘の良い方なら分かるかもしれませんが、スウェーデンに移住してから得た知識は、ほとんど会社で学んでいます。

次の仕事に移る前の僕は、新しい場所でエンジニアとして仕事ができるレベルには達していません。しかし興味のあることに対しては全力で学習する傾向があるので、その時には全くできなくても業務を経験しながら成長して仕事で求められる期待値へと達します。

仕事では常に100点を取る必要(その道の専門家レベル)は無く、その業務における期待値をクリアしさえすればどんな分野(資格が必要な職種、例えば医者、教師等は除く)でもやっていけると考えています。

別にエンジニアでなくても、です。

ただ僕はコンピュータを使って何か表現することが昔から好きなので、エンジニアという職種は非常に適正があると言えます。

次のキャリアパスがどんなものになるのか、今は全く分かってません。1つ言えるのは「もっと難しくてワクワクすること」をしている可能性が高いです。

やっぱり難しいことに挑戦し続けるのが自分の価値を高める1番の近道ですね。

ではまた、Vi ses! (See you!)

この記事が気に入ったら、サポートをしてみませんか?
気軽にクリエイターの支援と、記事のオススメができます!
スキ、ありがとうございます!
17
【クラウド未経験から海外でクラウドエンジニア】高校、大学受験失敗、大学中退で挫折の連続 / 🇯🇵でセキュリティ4年→🇸🇪でクラウドエンジニア3年目 / ゼロからスウェーデン語を学びC1レベルに到達 / 言語習得 x エンジニア x 海外文化の情報をシェア!

こちらでもピックアップされています

エンジニア思考
エンジニア思考
  • 16本

エンジニア関連の記事をまとめるマガジンです。

コメントを投稿するには、 ログイン または 会員登録 をする必要があります。