SESでメール送信

SESを利用して、Node.jsのアプリからメール送信してみます。

準備|メールアドレスの検証

送信元ドメイン または 送信元メールアドレス の検証が必要です。今回は、送信元メールアドレス の検証を行います。

698-aws-ses_1.png

SESを利用できるリージョンは以下3つのみです。

・バージニア北部(us-east-1)
・オレゴン(us-west-2)
・アイルランド(eu-west-1)

今回は、オレゴンを選択しました。

698-aws-ses_2.png

Verify a New Email Addressをクリックします。

698-aws-ses_3.png

利用したいメールアドレスを入力します。

698-aws-ses_4.png

入力したメールアドレス宛てに確認メールが送信されます。確認メールのリンクをクリックすることで検証済みとなります。

698-aws-ses_5.png

Statusがverifiedになっていれば検証済みです。

Node.jsでメール送信

パッケージインストール

npm install aws-sdk dotenv --save

.env

.envSESの権限を持ったIAMユーザーのAWSクレデンシャル検証したメールアドレス を設定します。

ACCESS_KEY_ID = "XXXXXXXXXXXXXXXXXXXXXX"
SECRET_ACCESS_KEY = "YYYYYYYYYYYYYYYYYYYYY"

ADMIN_EMAIL = "xxxxxxxxx@yyyyyyyyyy"

app.js

require('dotenv').config()
const AWS = require('aws-sdk')

const config = {
  accessKeyId: process.env.ACCESS_KEY_ID,
  secretAccessKey: process.env.SECRET_ACCESS_KEY,
  region: 'us-west-2'
}
const ses = new AWS.SES(config)
const address = process.env.ADMIN_EMAIL

const params = {
  // From
  Source: address,

  // To
  Destination: {
    ToAddresses: [
      address,
    ]
  },

  Message: {
    Subject: {
      Data: 'SES Test'
    },
    Body: {
      Html: {
        Charset: 'UTF-8',
        Data: '<h3>This is SES test.</h3>'
      }
    }
  }
}

ses.sendEmail(params, (err, data) => {
  err ? console.log(err, err.stack) : console.log(data)
})
698-aws-ses_request_1.png

SESは、申請しないとSandBox上でしか利用できなく、検証済みメールアドレス・ドメインにしかメール送信できません。コンソール上でも画像のように、SandBox上で利用中であることが確認できます。

そのため、今回は送信先にも先ほど検証したメールアドレスを指定しています。

参考
Amazon SES サンドボックスの外への移動

実行結果

$ node app.js 
{ ResponseMetadata: { RequestId: 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx' },
  MessageId: 'xxxxxxxxxxxxxxxx-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx-xxxxxx' }
698-aws-ses_result.png

無事メール送信できました。

参考

【エンジニア向け】仕事を見つける方法

転職する

転職エージェントを活用する

転職サイトの場合、自身でサイト上から企業を探す必要があります。 一方「レバテックキャリア」 などの転職エージェントの場合、エージェントが企業を紹介してくれます。エージェントが間に入ることにより、日程調整や、条件交渉などもサポートしてくれます。

転職ドラフトを活用する

転職ドラフト」は、 企業がITエンジニアをドラフトという形で指名するサービスです。年収が最初に提示されるなどのメリットがあります。 ただ、初回登録時にレジュメ作成が必要で、すでにエンジニア経験が豊富にあるエンジニア向けのサービスかと思います。 レジュメ作成が手間ですが、自身のキャリアを見直す機会になり、他の仕事探しにも役立つはずです。

エンジニア転職保証のあるスクールを活用する

ある程度、開発経験のあるかたであれば、独学で必要なスキルを身につけることができるはずです。ただ、別業種からエンジニアに転職したい場合など、1から独学で学ぶのはハードルが高いです。そういった方は、スクールの活用を検討しても良いと思います。 「TechAcademy」は、エンジニア転職保証コースを提供しています。給付金制度の対象講座として認定されているため、金銭面の負担も抑えることができます。

フリーランスとして活動する

レバテックフリーランス」「ITプロパートナーズ」「ギークスジョブ」は、フリーランスエージェントサービスです。 エージェントによって、支払いサイトなど細かい違いはありますが、まずは良い案件を見つけることが重要です。 登録自体は無料なので、複数エージェントに登録して、より多くの案件を紹介してもらうのがおすすめです。

logo
わくわくBank.
技術系の記事を中心に、役に立つと思ったこと、整理したい情報などを掲載しています。