AWS認定Solutions Architect プロフェッショナル(SAP-C01)に合格した話

結果

f:id:chitans:20210821201902j:plain

学習期間

約1.5ヶ月

取得歴

  • 2020/11:Security Specialty(SCS)
  • 2021/01:DevOps Professional(DOP)
  • 2021/08:Solutions Architect Professional(SAP) !new!

教材

  1. 先人たちの合格ブログ(いつも参考になります、ありがとうございます)
  2. 市販本
    1. AWS認定ソリューションアーキテクト-プロフェッショナル~試験特性から導き出した演習問題と詳細解説~
  3. 練習問題
    1. サンプル問題
    2. 模擬試験(有料)
  4. eラーニング
    1. Exam Readiness: AWS Certified Solutions Architect – Professional (Japanese)(無料):この中に練習問題あり
    2. Udemy: AWS 認定ソリューションアーキテクト プロフェッショナル模擬試験問題集(全5回分375問)
    3. Udemy: AWS Certified Solutions Architect Professional Practice Exam

進め方

学習方法は、SecurityやDevOpsの時と同様、Black Belt Online資料や市販本を使用して基礎スキルを身につけて、あとはひたすら問題を解いて、知らないことがあれば都度ぐぐって周辺知識を補強するという感じです。DevOps取得のときと同じやり方なので、詳細はこちらをご覧ください。

問題を解くときのコツ

今回は、私がProfessional系資格(SAPとDevOps)の問題を解くときに気を付けていることを書いてみます。

システム構成を頭の中で固定化しておく

多数の問題を解いていくと、ベースとなるシステム構成がいくつか見えています。例えば、「Route53 - ELB - AutoScalingされたEC2群」や「オンプレとAWSをDirect Connectで接続」です。これらの構成図は頭の中に絵として固定化しておくと問題を読みながらポイントを見つけやすくなると思います。私の場合は、「Route53 - ELB - AutoScalingされたEC2群」は縦方向に繋がっている状態、オンプレは右側でAWSは左側でイメージします。

消去法で正解を見つける

選択肢の中にベストプラクティスが必ずあるわけではありません。「より良いもの」を選びやすくするために消去法の方が考えやすいと思います。

選択肢をざっと確認してから問題文を読む

問題を読み始める前に選択肢にざっと目を通しておくと、何について問われているのかが分かった状態で問題文を読むことができます。セキュリティなのかネットワークなのかDBなのか移行なのかが分かるだけでも問題のポイントを見つけやすくなります。

手動プロセスのある選択肢は「一旦除外」する

AWSのベストプラクティスの中の様々なところに自動化と記載されていますので、選択肢の中に手動プロセスを見つけたらまずは一旦除外して考えた方が良いと思います。ただ稀に手動プロセスが入った選択肢が正解のケースがあるようです。手動プロセス以外の選択肢では前提条件やお客様要望を満たすことができない場合です。

所感

  • 全体を通してノートは取った方が良いと思います。私はiPadを使いました。最初は乱雑に覚えておきたいことを箇条書きにして、ある程度の量になったらサービス別に分類してまとめました。iPadを使うとまとめるときに書き直さないで済む(手書き文字をコピー&ペーストできる)ので便利です。
  • 今回もUdemyの教材は非常に役に立ちました。英語問題の方はChromeの翻訳機能を使えば、日本語で翻訳表示してくれるのでおすすめです。

最後に

Solutions Architectは非常に範囲が広いので、まずは広く浅くを意識して、徐々に深堀りしていく方がサービス間の関連性が理解できると思います。このエントリーを読まれた方が合格できますように。

AWS認定DevOpsエンジニア プロフェッショナル(DOP-C01)に合格した話

結果

f:id:chitans:20210110004730j:plain

学習期間

約1ヶ月

教材

  1. 先人たちの合格ブログ
  2. Black Belt Online資料FAQ
    1. AWS Elastic Beanstalk
    2. Auto Scaling
    3. AWS Code Services
    4. AWS Code Services 2
    5. AWS Cloud Formation
    6. AWS Cloud Formation deep dive
    7. AWS CodeCommit & CodeArtifact
    8. AWS CodeStar & CodePipeline
    9. AWS CodeBuild
    10. AWS OpsWorks
  3. ホワイトペーパー
    1. Infrastructure as Code
    2. AWSモダンアプリケーション開発
  4. 練習問題
    1. サンプル問題
    2. 模擬試験(有料)
  5. eラーニング
    1. Exam Readiness: AWS Certified DevOps Engineer – Professional (Japanese)(無料):この中に練習問題あり
    2. Udemy: AWS認定 DevOpsエンジニア – プロフェッショナル (DOP-C01) 模擬試験 (2020年試験対応版)
    3. Udemy: Practice Exam | AWS Certified DevOps Engineer Professional
    4. Udemy: AWS Certified DevOps Engineer Professional Practice Exams

進め方

Step0

前回、セキュリティ専門知識を取得しましたので、今回はその続きです。DevOpsの出題範囲にもなっているセキュリティ(IAM / Trust Advisor / Config等)とロギングや監視周辺(Cloud Watch Logs/Event等)については習得済みとしてその他の分野を学習しました。また、今回は資料を読み込む形式ではなくひたすら問題を解くことで進めました。

Step1

まずは先人たちの合格ブログを読みます。SAPよりは解きやすい問題が出るようで少し安心します。

Step2

Black Beltとホワイトペーパーにざっと目を通します。問題中心に学習を進めますのでキーワードとポイントだけを拾っていく感じです。細かいところは問題を解きながら再確認します。

Step3

ここからはひたすら問題を解きます。Udemyセール時に購入したので最安値で購入することができました。10問解いては解答を確認し、また10問解いて解答を確認し、、という感じで同じ問題を3〜4回はやりました。徐々に問題を読まなくても正解の選択肢を見つけられてしまうようになるのですが、不正解選択肢の中で気になったキーワードや表現を見つけたら、そこを調べるようにします。問題を覚えるというよりは、内容を理解するようなイメージです。

所感

  • 全体を通してノートは取った方が良いと思います。私はiPadを使いましたが、試験直前やちょっとした空き時間に読むことができるので便利です。
  • AWSの認定試験なのでAWSサービスが中心ですが、gitのブランチ戦略やJenkinsの運用周りも出題されますので馴染みのない方は確認しておいた方が良いです。
  • Udemyの教材は非常に役に立ちました。英語問題の方はChromeの翻訳機能を使えば、日本語で理解できますのでおすすめです。

最後に

DevOpsはSAPと並ぶPro資格となっていますので、細かい部分やマニアックな内容を問われるケースもありますが、全問正解をめざす試験ではないので見たことがない内容が出題されても慌てず、直感で解答して次に進めば良いと思います。このエントリーを読まれた方が合格できますように。

AWS認定セキュリティ専門知識(SCS-C01)に合格した話

結果

f:id:chitans:20210713205515j:plain

学習期間

約2ヶ月

教材

  1. 先人たちの合格ブログ
  2. 書籍
    1. 要点整理から攻略する『AWS認定 セキュリティ-専門知識』:この中に練習問題あり
    2. AWSの薄い本 IAMのマニアックな話
    3. AWSの薄い本Ⅱ アカウントセキュリティのベーシックセオリー
  3. Black Belt Online資料FAQ
    1. AWS Shield
    2. Amazon GuardDuty
    3. AWS Trusted Advisor
    4. AWS Direct Connect
    5. AWS Key Management Service
    6. AWS Well-Architected Framework
    7. AWS Certificate Manager
    8. AWS IAM part1, part2
    9. Amazon VPC
    10. Amazon CloudWatch
    11. AWS Config
    12. AWS CloudTrail & AWS Config
    13. AWS Cloud HSM
    14. AWS Transit GateWay
    15. AWS System Manager
    16. AWS WAF
    17. Amazon Cognito
    18. AWSアカウント シングルサインオンの設計と運用
    19. Amazon Macie
  4. ホワイトペーパー
    1. アマゾンウェブサービス セキュリティプロセスの概要
    2. AWSセキュリティのベストプラクティス
    3. AWS Well-Architectedフレームワーク
    4. AWS Key Management Serviceのベストプラクティス
    5. DDoSに対するAWSのベストプラクティス
  5. 練習問題
    1. サンプル問題
    2. 模擬試験(有料)
  6. eラーニング
    1. AWS Security Fundamentals (Second Edition) (Japanese) (無料)
    2. Exam Readiness: AWS Certified Security - Specialty (Japanese) (無料):この中に練習問題あり

進め方

Step1

先人たちの合格ブログを読み、試験の雰囲気、難易度、受験までの流れ、学習時間、ざっくりとしたキーワード等を理解し、全体の概要を掴むようにしました。

Step2

2-1の市販本で試験範囲のサービスをざっくり把握しました。初見のサービスが多く、今思えば1回目に読んだ時はほとんど理解できていなかったなぁと思いますが、理解した気分になることが重要だと思います。巻末に練習問題がついていますが、この時点ではまだ実施しませんでした。

Step3

ここからが本番です。試験範囲のサービスのBlack Belt資料を読んでいきました。私は動画を見ながらでしたが、ひとつのサービスにつき約1時間の動画になっているので、時間のない方は資料だけで学習を進めても良いかもしれません。

Step4

ここで練習問題に取りかかりました。無料のサンプル問題集と2-1の市販本の問題を解きながらその周辺知識を補っていくイメージです。合ってる間違ってるは気にせず、答えだけでなく周辺知識を獲得するように意識しました。不明瞭なところはAWSのユーザガイドや個人のブログ等を参考にしました。

Step5

有料の模擬試験を受けました。結果は散々でしたが、画面キャプチャをとって後で復習できるようにしました。

Step6

AWS認定サイトに2つの無料のeラーニングがあることに気付き、このタイミングで学習しましたが、もっと早い段階で見た方が良いと思います。eラーニング内の練習問題はとても役に立ちました。

Step7

ここからは市販本、Black Belt資料、ホワイトペーパー、FAQ、各種練習問題を時間のある限り繰り返し読み記憶に残るように努力しました。2-1の市販本は5,6回は読みましたし、主要サービスのBlack Belt資料は3,4回は読みました。ユーザーガイドを最初から最後まで読むのは辛いので、リファレンス的に使用しました。合わせて、AWSの薄い本2冊も読みました。

所感

  • 全体を通してノートは取った方が良いと思います。私はiPadを使いましたが、試験直前やちょっとした空き時間に読むことができるので便利です。
  • 本番試験は、個別のサービス内容を問われるというより、トラブル事例や複数サービスが関係する問題が多いように感じました。各サービスの内容はもちろん把握する必要がありますが、各サービスの関連性を意識しながら学習を進めることが大切だと感じました。

最後に

セキュリティは範囲が広い試験だと思いますが、ゆっくりひとつずつ取り組むと自然と関連性が見えてきますので、焦らずじっくり進める方が良いと思います。このエントリーを読まれた方が合格できますように。

Vue.js : v-forはkeyが必要

Vue.jsの繰り返し構文v-forを以下のように書いたらエラーになりました。

<li v-for="(item, key) in items">

エラーメッセージはこんな感じ。

Elements in iteration expect to have 'v-bind:key' directives

どうやら、v-bind属性が必要のようです。こんな感じに修正したら動いてくれました。

<li v-for="(item, key, index) in items" v-bind:key="index">

XcodeからGitHubにアクセスするとリジェクトされる

Xcode(10.1)からGitHubにアクセスしたとき、

Authentication failed because the credentials were rejected

というエラーが発生しました。 ssh-keygenコマンドは以下のように実行しましたがこれが間違いだったようです。

$ ssh-keygen -t rsa

以下のように鍵を再作成したら、アクセスできるようになりました。PEMとして作成する必要があるようです。

$ ssh-keygen -t rsa -m PEM

macOS Mojaveで常に半角スペースを入力できるようにする

  1. Mac起動時にリンゴマークが出るまで「command + R」を押し続ける。

  2. 言語選択画面が出たら「日本語」を選択する。

  3. 画面が出たら、メニューの「ユーティリティ」→「ターミナル」を選択する。

  4. 以下のコマンドを入力し再起動する。

    $ csrutil disable
    $ reboot

  5. 通常通り起動するので、ターミナルを開き、まずは目的のディレクトリまで移動する。

    $ cd /System/Library/Input\ Methods/JapaneseIM.app/Contents/PlugIns/JapaneseIM.appex/Contents/Resources/

  6. KeySetting_Default.plistが編集ファイルなので、念の為バックアップを取っておく。

    $ cp KeySetting_Default.plist ~/

  7. vimでKeySetting_Default.plistを開く。

    $ sudo vim KeySetting_Default.plist

  8. 14行目の以下の記述を削除する。

    <string>contextual_space</string>

  9. 削除した場所に以下を追加する。

    <string>direct_input</string>
    <key>character</key>
    <string> </string>

  10. 同様に19行目を削除する。

    <string>contextual_space_reverse</string>

  11. 削除した場所に以下を記述する。

    <string>direct_input</string>
    <key>character</key>
    <string> </string>

  12. 以下のコマンドで設定を反映させる。そして動作確認。アルファベット入力/日本語入力関係なく、スペースを押すと半角スペース、シフト+スペースで全角スペースが入力できればOK。

    $ killall JapaneseIM

  13. 最初と同じように「command + R」で起動、ターミナルから以下のコマンドを実行する。

    $ csrutil enable
    $ reboot