基本的なAWSのサービスだが、自由度も高いのでどのように設計をすればよいのか、いつも頭を悩ませる。Designを読み込んでベストプラクティスを守るようにする。ベストプラクティスネットワーク設計を考える時に、まず一般的なネットワーク設計原則を確認する。プライベートネットワークにオーバーラップしないようにサブネットを実装するのが良い。将来への拡大に備えて、IPアドレススペースを余分に確保しておく事も良い考えだ。VPCは、次のような設計のベストプラクティスに従う必要がある。EngineerCareer海外の現地採用の雇用形態の話はあまりないと思うので、タイ現地採用している私の雇用形態とデジタル人材の需要について話しておこうと思う。自分の雇用契約書に目を通しながら、抵触しない範囲で話していく。他の現地採用の方がどのような契約をしているかは不明であるが、私は1年契約の有期雇用契約の年俸制で契約している。1年ごとに契約更改があり、次年の年俸が決定される。プロ野球選手の様なものと思ってもらって構わない。EngineerCareerちょっとネガティブな話になってしまっているが、キャリアアップ視点での東南アジア就職に関して私が感じている事を話す。FrontendTypeScriptNuxt.jsNetlifyJAMStackなアプリを開発するには動的コンテンツの表示も可能にしなくてはならない。そのためにはマイクロAPIからデータを取得してくる必要がある。Netlifyはその機能を実現するためにFunctionsを機能として備えている。TestingでA/Bテストを行う事ができる。Gitのブランチレベルでのトラフィックの振り分けが可能だ。Netlifyの良さを広めたいの記事を参照してほしい。FrontendTypeScriptNuxt.jsNetlify最近JAMStackに関して調べる事が多く、Netlifyの簡単さに感動したので紹介する。Nuxt.jsは動的Webサイトでも利用される事も多いが、静的Webサイトジェネレーターとしても優秀で柔軟性がある。今回はNuxt.jsが正式なTypeScriptサポートがアナウンスされたので、nuxt-tsを用いて、GithubのプロジェクトをNetlifyにページ公開する所まで辿る。Netlifyとは?静的WebサイトホスティングサービスのSaaS。Testingなど様々な機能がAll-In-Oneで入った凄いやつ。EngineerCareer最近フリーランスがageられている事が多いので、公平性を考えて主にキャリアの面での会社員エンジニアの良い所を話す。データ分析のためのSQL/R/Python実践テクニック」を読み終えたのでレビューする。感想を述べると「機械学習のモデルはなんとなく理解できたけど、モデルをどのようなデータを渡して訓練すれば良いか分からない人に良い」。駄目なコードと良いコードが併記されている本書ではSQLとRとPythonの3つの言語で各前処理のコードの書き方が分かる。個人的にはRは必要なかったが、読む対象を広げているのだなという印象を受ける。MachineLearningDataSciencescikit-learn線形回帰を用いて過学習(オーバーフィッティング)と未学習(アンダーフィッティング)について学ぶ。プログラムは以下に置いておく。線形回帰とは入力XXXに対して、フィットするようなθθθを決定する事である。用いて、予測モデルを作成してみる。線形回帰を使って、それぞれ1次、4次、16次多項式関数のModelを求めた。Samplesのデータは以下の関数で生成される。サンプルデータは以下の関数で出力される。EngineerBangkokCareerバンコクでソフトウェアエンジニアとして働き始めて約一年間経過した。この一年間行った事、バンコクの生活、感じた事を振り返る。仕事について一年前までは日本経済新聞社でiOSエンジニアをやっていた。日経電子版アプリ等をフルスクラッチで開発したりと、良い経験をさせてもらった。バンコクへ来たのか?日本人のソフトウェアエンジニアがバンコクで働く姿を想像できる人は少ないだろう。転職した経緯はバンコク駐在中の大学時代の友人からヘッドハントを受けたというシンプルなもの。仕事で英語を使いたい、ゼロからのプロジェクト立ち上げができる等、様々な理由はあったが、「バンコクに住むと楽しそう」と当時の私は考え、そのオファーを受理した。Chartsを使って、チャート画像を生成、メールに添付し送信する手法を説明する。Appをデプロイする。知るDockerは触っていてもKubernetesは初めてという人は結構多いのではないだろうか?「Kubernetesは、コンテナ化したアプリケーションのデプロイ、スケーリング、および管理を行うための、オープンソースのコンテナオーケストレーションシステムである」と書かれていても全くピンと来ない。オーケストレーションってなんだよ、曲でも作るのか?と冗談のように考える人もいるだろう。FrontendTypeScriptNuxt.jsFirebase(追記)Nuxt.jsが2.4.0から公式でTypeScriptをサポートし始めた。コードの中身はそのまま使えるが、ビルド部分の設定はこの記事のレポジトリなど参考にした方が良い。アプリを構築する上での知見を共有する。今回作成したサンプルはtamanyan/nuxtjs-firebaseに公開しておくので、必要であれば見てほしい。企業で働くエンジニアの話は聞こえてこない(そもそも数が少ないからね...)。想像する人もいるだろう。企業のデジタルトランスフォーメーションを進める事ができるエンジニアの話をする。全世界の人々がインターネットに接続できる現代において、無視することはできなくなってきている。