# Dublin CSE Final 計畫(專案)
About this role:
> Apart from working on a broad spectrum of technical issues, an AWS Support Engineer may also coach/mentor new hires, develop & present training, partner with development teams on complex issues or contact deflection initiatives, participate in new hiring, write tools/script to help the team, or work with leadership on process improvement and strategic initiatives.
BASIC QUALIFICATIONS
· Fluency in Mandarin Language
· Bachelor’s degree or at least four years of experience in a Technical Customer Service role
· Monitoring and/or Troubleshooting of:
· OS Administration (Linux/Windows)
· Network Essentials (TCP/IP)
· Knowledge of Internet Fundamentals
· Excellent oral and written communication skills
· Strong customer focus
· Ability to juggle many tasks in a fast-moving environment
· Self-starter
· Excited about technology
PREFERRED QUALIFICATIONS
· Experience in Cloud computing (AWS, Azure, OpenStack).
· Experience with programming/scripting (Batch, Perl, Ruby, VB, PowerShell, Java, C# and/or PHP).
· Experience managing full application stacks from the OS up through custom applications.
· Experience with System Administration
· Experience with Network troubleshooting tools
· Experience with Cloud services and Cloud deployments.
> 2021 12/3 號 Final Loop Interview, go earlier 15 minutes before started.
- [x] Tuesday 讀 Networking on linux (networking 之前 mark 問的在 deep dive)(今年 re:Invent 幹)
- [x] Wednesday 把之前做過的案子故事都給我他媽包裝好
- [x] 全部 re 過一遍
- [x] 早上技術再度熟悉
- [x] 下午講故事 (面試前所有咖啡,飲料零食準備好)
They will ask you Networking and Linux Detailed Problems:
1. https://www.redhat.com/sysadmin/beginners-guide-network-troubleshooting-linux (每一層不一樣解法)
Mark Wu 之前問過的技術問題:
https://hackmd.io/FPpZ6xM-SZy-rQ9xL1P8ZQ
Try to review all the details form this handover:
https://hackmd.io/0qQum_R5TmCnKLKfjeO5bg
### Schedule

* Prepare Pen and Pencil on hand to jot dowm some notes.
* Use [Drawing App](https://miro.com/online-whiteboard/) to share sceen
[Virtual Interview](https://www.amazon.jobs/en/landing_pages/virtual-interview-prep)
[On-Site Interview Tips](https://www.youtube.com/watch?v=oXyppLTtbn8):
* I have done this, in order to deliver results
* I will able to dive deep.... identify with the pinpoint
* STAR methods is work
* practice and let aws know you
* Have a pin pon like conversation
## 技巧
* [16 Leadership Principle](https://www.geekwire.com/2021/amazon-adds-two-new-leadership-principles-just-days-jeff-bezos-steps-ceo/)
1. Deep Dive
追根究柢的本質
2. Customer Obesession
客戶至上的體驗, Business
3. Deliver Results
提交出成果
> 他不會特意問你領導原則,你要自己去包裝成故事回答
* 能不能講一下過去的經驗, 很困難的技術問題, 非常困難, 最後結果是甚麼
* 深入了解 sourcecode 也好, 原因是甚麼也好, 最後怎麼把它排除, 寫了甚麼文件, 找到核心 好讓他不會再度發生這個問題,提升80 / 90 % 讓我們客戶滿意度也反映到我們營收的 revenue 可以提高 10-15 %, 在線人數更多
### STAR 模式
* S- Situation 糟糕
* T- Task (Sourcecode 等等文件在哪裡)
* A - Action 動作 (客戶滿意度更高)
* R - Results 講到數字 (30秒, 10~12秒)
* Deep Dive 的問題
真假都可以(技術細節都查好)
* Learn and Be curiuos - 這個來回
3 個故事 for 4 個 interviewers
## 自己的故事
### Situation: Fix Lab
### Task: Went someone want to use AWS resources, but they didn't know how to use it or which services would be implemented on they scenario.
### Action: Write down wiki and sample repository for used
### Result: Get 15% more parther ......
當時第一天來 ecv 時,原先的 Team 就已經在自建的學習平台收到很多負面的回饋,例如設計實驗的場景不夠吸引人,我們用到的服務講解他的好處不夠精確,甚至到權限設計部分也都有很大的問題,再加上剛進 ecv 時遇到台灣疫情最嚴重的時期,所以許多人可能在溝通和彼此協調上會有很多需要改進的地方。入職一週後,我就與主管建議我們必須要夠 Single Source of Truth,也就是說制定一個 instructor team 基礎的樣板,讓大家可以先照著這個樣板去設計實驗和場景,由於我們設計的實驗和場景這些樣板也會同時跟 developer team 開發的平台一同協作,也就是他們會想辦法將原先舊有的平台結構,搬遷到新的平台。(我們設計實驗以及 AWS 串接過程中的順序邏輯,他們開發新平台)
而我們需要提供實驗的樣板內容(我們是用 markdown 去撰寫的,為了讓新的平台可以成功選染,甚至字體大小,標題都要統一),由於剛進來沒有這個模板可以參考,我就與幾位同事一同寫下需要呈現的方式跟哪個區塊需要進行優化。也就是說我們會有最一開始的 level, duration 和標題的區塊,例如:Automated wine quality monitoring with IoT Rule Engine
那我們就要在一開始把這篇會用到的服務,和預計要解決什麼樣的問題寫在第一個區塊,和完成這個實驗時你大概會學到什麼樣的內容,並且在第二個區塊開始畫上架構圖以描述使用這個服務在這個實驗想要完成的應用場景

接著才會有一步步的實驗需求
寫完了這個基本的 template 後會與大家討論其設計的邏輯以及哪邊需要改善,大家都可以開 issue 討論,而我不僅設計了基礎 template 架構,還主動寫了 lab design workflow 和 lab testing workflow 等來增加團隊的效率,和權限的相關設計,哪些資源可以先 pre-warm 如 networking 資源或是這個實驗他本身就只 focus 在某項服務為何不先 pre-warm 來避免掉期他的操作。
Result: 原先我們的顧客來找我們上課或是培訓都對我們實驗平台嗤之以鼻,甚至過去有很多抱怨為何權限設計這樣,某些服務開不太起來或是權限在舊的平台開過大,導致我們費用暴增 sagemaker 進而不夠 cost optimization 等問題,我們都在改進之後,收到顧客近 30% 成長想要單買我們實驗甚至想拿我們當初設計的手稿去進行服務的串接和後續相關的應用,不僅如此我們在 ux/ui 上面也獲得許多顧客高度評價,都會有問卷 從 2 分到5 分的增長,都有賴於 team work 和建置文件和設定實驗設計規範的重要。
.....
Deep Dive 在設計哪些場景遇到的問題
Client VPN(解碼):
https://gitlab.com/ecloudture/aws/lab/aws-network-workshop/how-to-set-up-client-vpn
顧客有 vpn 需求,那我們設計 client vpn 來使用,更為方便你在 on-premise 的任何 location 都可以接收連接到aws 服務,不僅傳輸安全,且是全託管又能做 HA 等或是能用 AD, federated authentication 方式等驗證身份。
但是這個情況有點糟糕,我們沒有辦法讓許多用戶直接選擇 private ca 去發憑證,我們只能使用一台 ec2 並且透過 shell script 的方式將這個憑證遷出。
並將 certificate, private key , CA.crt 的東西貼到 AWS certificate manager 中,設定完到設定 client vpn endpoint 的時候出現了小插曲,我竟然無法將 configuration 下載下來,我們使用網路去檢查,但都沒有報錯,直到看到了 403 權限不足問題,才去查找期權限缺少哪塊,
怎麼發現因為訊息都是加密過後的,很難知道是哪個問題,縱使我去找權限加上去也沒用
一開始很傻
去 decode 之後,json beautify (這件事搞了一天)
後來才發現.....
Decodes additional information about the authorization status of a request from an encoded message returned in response to an Amazon Web Services request.
For example, if a user is not authorized to perform an operation that he or she has requested, the request returns a Client.UnauthorizedOperation response (an HTTP 403 response). Some Amazon Web Services operations additionally return an encoded message that can provide details about this authorization failure.
"ec2:ExportClientVpnClientConfiguration"
結論與不會拖時間,我會先找過一遍所有可能去 check 之後發現不是這個問題,再一層一層往下撥開.......
但還沒結束,
DNS 問題也搞好久
Open the Client VPN endpoint configuration file using your preferred text editor. Locate the line that specifies the Client VPN endpoint DNS name, and prepend a random string to it so that the format is random_string.displayed_DNS_name. For example:
Original DNS name: cvpn-endpoint-0102bc4c2eEXAMPLE.clientvpn.us-west-2.amazonaws.com
Modified DNS name: asdfa.cvpn-endpoint-0102bc4c2eEXAMPLE.clientvpn.us-west-2.amazonaws.com

Docker Console:
https://gitlab.com/ecloudture/aws/lab/aws-ecs-workshop/get-started-with-docker-and-amazon-ecr
Docker Console 第二版介面問題
我們在操作第二版介面時,9月中需求很突然,
一定要 pre-warm network 讓他去選前面的 az,不然有些 instance 他不支援
我們也用看了文件如何去寫 parameter 讓 cfn 在 pre-warm 時就是拿最新的 instance id
Parameters:
ImageId:
Type: AWS::SSM::Parameter::Value<AWS::EC2::Image::Id>
Description: The ID of the AMI.
Default: '/aws/service/ami-amazon-linux-latest/amzn2-ami-hvm-x86_64-gp2'

他會 ref 到 secuity group id
但是 default 是空值,試過很多重建值的方法都沒用。

社群參與,並且發 twitter 給 Sr. Product Developer Advocate, Containers at @AWSCloud : Tori Hara

他火速幫我們解答並且發給內部確認,發現當時也有很多這種問題。
https://gitlab.com/ecloudture/knowledge-center/ecloudture-team-wiki/-/blob/master/docs/instructor-guide/workflow-sop/lab-test-guideline/lab-test-guideline-ch.md
Signed-Cookies 問題:
### Situation Company Encourge colleage to collect 6 certification
SC-900 內訓(learn and be curious)(要怎麼講個別人聽)
### Situation Microsoft Teams Face a problems
由於微軟 team 內部一些問題 blablala
被調去等等 開始支援 SA
合規, 不同雲的脈絡,要解決客戶需求。
### 被問倒的問題
1. D state 是啥
2. /var 權限都確定沒問題,但是不能 create 的問題
3. Application 跟 Transport layer 的區別要有
4. Load Average 問題:
https://www.ltsplus.com/linux/linux-load-average
5. How to mount file system.
two main ways: manually, automatically.
1. The system filesystems, such as / and /home, are mounted automatically at boot, use information stored in the file system table /etc/fstab
2. Mounting manually
sudo mount /dev/sda4 /mnt/backup -t ext4
The first two options are the device and mount point, -t specifies the filesystem type; if you omit this, auto is used.