我是如何在四年時間裏,從廚師轉行爲 Serverless 應用開發者

▎本文系譯文,個人軟件開發入行經歷很是有趣 —— 我一開始實際上是廚師。html

我在高中時就喜歡烹飪和烘焙,用不一樣食材的搭配去作出美味的食物,就像個科學怪人。個人家鄉在愛爾蘭,個人第一份工做也在那裏,這是我第一次真正在廚房爲人們提供食物,固然還有數不清的盤子要洗。前端

一位前輩教了我如何製做香蕉太妃派,又簡單又美味,讓我感到驚喜。當時,我開始在在家中製做些小點心賺取外快。git

那時候我從學校搬了出來,在搬到新住處後,我在工做的餐廳和城區的家之間往返很不便。因而我決定在餐廳作兼職,另外找一份咖啡店的工做。github

同時打兩份工有時會讓人疲憊不堪,我還要兼職烘焙,但願開家小麪包店。那段時間我很辛苦,要在餐廳上早班,而後在咖啡店上晚班。在我回家的路上,個人朋友會幫忙作一些吃的,他正在學作飯,時不時問我手邊的食材能夠作些什麼。面試

我當時絞盡腦汁地在想,比起發短信或者打電話,或許我能夠直接作一款 app,當個人朋友輸入食材名稱,就能自動跳出來相應的食譜。這能有多難呢~編程

因而我就開始學習如何構建一款 app。segmentfault

從廚師到開發者

那是 2014 年夏天,我很快意識到本身甚至不知道從何入手。我應該學習哪一種語言?我應該在哪一個平臺上操做?Web 仍是移動端?什麼是前端和後端?天吶!後端

我隨大流報了個 Code Academy(編程學院),開始學習 Web 開發,以及開發者的思惟模式。這爲我打開了一個新世界!(好吧,可能並無什麼特別的,可是你應該明白個人意思。)服務器

胡亂摸索和嘗試構建靜態網站,讓咱們對移動 app 及其構建方式感到疑惑。我參加了一個 Udemy 在線教程學習 Java,並在 Android 上進行操做。一開始真的很難,讓屏幕顯示「Hello World」是讓我很有成就感。架構

可是我很是想學習如何編碼,因此奮力前行。

完成 Java 課程後,我構建了本身的第一個 app,並將其上架到 Play Store。(雖然它並非給我朋友使用的應用,哈哈!)

我感受還有不少東西能夠學習,不想只停留在移動設備上。個人腦海裏浮現出各類各樣的問題,好比「我如何鏈接到其餘設備?」「什麼是服務器?它們的功能是什麼?」「什麼是雲……爲何稱之爲『雲』?」等等。

全部這些問題均可以經過 Google 找到答案。所以,我給本身設下了一個任務,學習有關服務器的知識以及如何針對服務器編寫代碼。我開始採用 PHP 構建簡單的後端應用,從移動測試應用、Web 窗體和 curl 命令獲取數據。

這個時候我開始感受本身入錯行了。我學習和構建的東西越多,我對烹飪的興趣就越少。

我想成爲一名開發者。我想創造出不同凡響且具備創新性的事物。可是我沒有計算機科學專業的學位,也沒有全日制學位(我大二就輟學了)。可是我確實想成爲一名開發者。

我花錢參加了 Java 認證,但願本身的簡歷能被看重。儘管第一次失敗了,可是第二次經過了。我很是開心,這多是我成爲一名真正開發者的敲門磚!

開始求職

我把這份認證放入本身的簡歷中,而後發到了招聘網站。可是一無所得……「咱們須要的是一個有學位的人」「一個有經驗的人」「一個有碩士學位的人」。我開始認爲本身沒什麼「競爭力」。雖然我感到有些沮喪,以爲本身沒有學位、也沒有錢去取得學位,因此永遠沒法找到工做,但我決定在 Udemy 上學習更多的課程。

我把從 Udemy 學到的東西一古腦兒都寫到簡歷中。我爲本身的努力感到驕傲,爲何不把它們放在簡歷裏呢?功夫不負有心人,我接到了愛爾蘭一家 IT 諮詢公司的面試。個人夢想成真了!

我懷着激動和忐忑的心情進入了另外一個世界。我但願作好這份工做,我老是主動要求多作些事情,並參與更多的項目。我負責將 PHP 應用從本地遷移到雲。某種程度上算是學習!這些應用必須更新爲 PHP7,咱們須要實現 DevOps,而我首先須要瞭解 AWS。

我買了一本叫作《The Phoenix Project》的書來了解 DevOps,還買了 ACloudGuru 的 Developer Associate 課程來學習 AWS。我愛上了雲和 DevOps。它們太有意思了!在花了不少時間來學習全部與工具備關的知識後,項目變得容易不少,並最終取得了成功。咱們不只成功遷移了應用,還建立一個框架,框架中規定了相關的步驟,便於咱們之後遵循這些流程來進行遷移。

就這樣,咱們創建起了一支創新團隊。咱們但願經過提出創新的想法來讓辦公室更智能。我負責收集智能桌臺預訂服務構想所需的堆棧:這是咱們辦公室的一個實時數據饋送,它將向員工展現帶客戶進來的最佳時間、員工本身進來的最佳時間,或者他們是否應該待在家裏並避開通勤。

構建後端時,我發現咱們須要花費大量時間來爲數據更改和使用流建立偵聽器。咱們計劃使用 雲函數並經過 API 網關與它們鏈接。因此我開始尋找能夠節省時間的框架。

而 Serverless Framework剛好派上用場!

向無服務器開發過渡

我對 Serverless Framework 一見鍾情。我只需把精力集中在代碼上,就可以讓應用快速投入運行 —— 在人們使用的同時,咱們能夠不斷開發和實現本身的構思。

我反覆觀看了 YouTube 頻道 FooBar 提供的全部內容;我強烈推薦你們採用 Serverless Framework。我掌握了 Marcia 介紹的全部知識,而且發現本身在構建須要的內容時愈來愈輕鬆。

最後,我構建出了下面這個簡單的小型架構:

使用 Serverless Framework,我爲用戶建立了一個完整的流程來申請桌臺並實時查看變動:辦公室內/外的工做人員和可用的桌臺。實現全部這些功能的同時還能徹底控制咱們的數據,擁有一個幾乎能夠免運維的可擴展模型,而且無需操心底層結構,只需專一於爲人們提供出色的功能。

現狀如何?

我花了 4 年的時間從零開始新職業。無數漫長的夜晚,我都在 Code Academy 中探索,學習 OOP 概念,爲考試作準備而且創造東西,當我看到它們在本身的手機裏運行,感受很是酷,也很是有趣。

我過去 5 個月一直在學習 Serverless Framework,如今正計劃將 Serverless Framework 投入到工做中,這項服務可幫助客戶構建和遷移其應用。而且,我還使用無服務器做爲平臺來創建聊天機器人副業!

我度過了很是充實的 4 年!從爲別人作飯、爲活動準備蛋糕到沉迷咖啡,我從未想到本身能創造像 Serverless 聊天軟件和太陽系知識學習 app 這樣的東西。

也許有一天我會完成本身的食譜生成 app 😝

傳送門:

歡迎訪問:Serverless 中文網,您能夠在 最佳實踐 裏體驗更多關於 Serverless 應用的開發!

推薦閱讀: 《Serverless 架構:從原理、設計到項目實戰》
相關文章
相關標籤/搜索