新生活開始之後,如何在有限的時間內持續成長,想必是許多新進工程師共同的課題吧。
在眾多學習方法之中,若要把吸收進來的知識轉化為「實力」,這次我最推薦的選擇是個人開發

前言

剛開始以新人工程師身分工作時,你是否也有這些煩惱?

  • 不知道該學什麼才好
  • 擔心自己這樣下去能不能成長
  • 想做作品集,卻遲遲無法動手

我自己也曾經有過一樣的困擾。
作為建立系統性知識的手段,考證學習我認為非常有效。
事實上,我自己也取得過幾張 IT 相關證照,在整理基礎知識上幫助相當大。

不過另一方面,若問這是否足以讓我成為能在實務中立刻上手的技能,老實說我還是有些疑問。
因為知識雖然增加了,卻始終無法建立起「我能自己做出來」的具體想像。

為什麼技能很難成長

如果學習持續進行,卻始終感受不到成果,原因通常很單純,就是壓倒性地缺乏「輸出」。

很遺憾地,只有輸入並不能變成能在實務中通用的技能。
因為實務上真正需要的,不是「把標準答案背起來」,而是「在沒有標準答案的情況下,自己找出解法」

如果一直以輸入為主來學習,常常會撞上下面這些「牆」:

  • 「好像懂了」就結束了:看教材時明明能理解,但一打開編輯器卻一行都寫不出來
  • 卡在錯誤處理:遇到非預期行為時,無法靠自己釐清原因
  • 技術零散分離:每個語言都學了,但不知道怎麼把它們組合成一個應用程式

「知識」與「技能」之間的深溝

這是因為「知道的知識」與「能使用的技能」之間,存在很大的落差。
填補這道落差的唯一方法,就是實際從零開始做出來的經驗(輸出)

特別是 Web 工程師,在實務上需要具備把以下流程跑完整的能力:

  1. 設計:思考要採用什麼架構,以及資料要如何儲存
  2. 實作:實際撰寫程式碼,將功能做出來
  3. 部署:把服務上線,讓外部可以存取
  4. 維運:修正問題,讓系統持續運作

只有「照著教材把程式碼抄一遍」的學習方式,最多只能體驗到其中「實作」的一小部分。
也因此,能夠由自己一個人完整走完從設計到維運的整個流程,才是最重要的。唯有跨過這個過程,知識才會真正沉澱成「能在實務中靈活應用的技能」

個人開發是最強的學習方法

若要突破輸入的瓶頸,並培養接近實務的感覺,我最推薦的就是個人開發

為什麼個人開發如此強大?因為它能一次帶來以下 4 種價值。

1. 因為是自己的事,所以理解會非常深

不是寫別人要你寫的程式碼,而是在一邊自問「我想讓它怎麼運作」的過程中把東西做出來,所以知識會真正變成自己的。

2. 技術的「點」能連成「線」

前端、後端、資料庫這些零散的知識,會在打造一個應用程式的過程中,逐漸形成「它們是如何協作的」的完整全貌。

3. 能一氣呵成體驗從設計到維運的全流程

把平常在實務上往往分工處理的流程,都由自己一個人完整做完,工程師的視角也會因此被拉高一個層次。

4. 最終會成為信賴的證明(作品集)

這會成為最好的輸出,用來證明的不只是「你知道什麼」,而是「你能做出什麼」。

也就是說,個人開發是一種能同時獲得「學習、實作、成果物」的極高密度學習方式。

但話說回來,很多人會卡在這裡

即使已經下定決心「好,來做點什麼吧!」,真要動手時,擋在應用程式內容之前的,往往是基礎架構的門檻

  • 伺服器要怎麼準備?
  • 一直公開運作會不會很花錢?
  • 部署(上線)的步驟看起來很難…
  • 再說,我對基礎架構也沒什麼信心…

但話說回來,很多人會卡在這裡.png

會在這裡停下來的人,其實非常多。

明明已經想到很有趣的功能,或很實用的應用程式,卻只是因為「無法公開」就讓學習停住,真的非常可惜。
因為「自己做出來的東西,只要輸入 URL 就能在全世界運作」這種成功體驗,正是會大幅提升工程師視野的關鍵。

而這個「基礎架構該怎麼辦」的問題,有一個超乎想像地聰明的解法,也就是這次要介紹的選項。

Cloudflare 技術棧生態系的選擇

我所提案的,是一種能夠完全免費輕鬆部署與維運完整全端 Web 應用程式的方法:Cloudflare 技術棧
使用它之後,個人開發可以做到幾乎免費架構簡單可以立刻開始開發

實際使用過後,我真的很驚訝,原來個人開發的門檻可以被降得這麼低。

我在個人開發中實際採用的架構如下。

前端

  • Cloudflare Pages × Next.js

後端

  • Cloudflare Workers × Hono

資料庫

  • Cloudflare D1

為什麼推薦這套架構

① 完全免費就能開始

即使不先綁定信用卡也能開始,所以很適合「先試試看再說」。

② 基礎架構建置幾乎不用考慮

  • 伺服器建置
  • 作業系統設定
  • 網路設定

這些工作幾乎都不需要,能夠把心力集中在應用程式開發上。
如果你只是想先部署一個能運作的東西,即使沒有自訂網域也完全沒問題;如果是想正式經營,Cloudflare 也能用接近成本價的方式便宜購入自訂網域。

③ GitHub 連動超級好用

  • 合併到 main 分支 → 自動部署
  • 建立 PR → 自動部署預覽網站並自動產生 URL

可以體驗很接近團隊開發的流程。

④ 能一次累積全端經驗

  • 前端(Next.js)
  • API(Hono)
  • 資料庫(Cloudflare D1 / SQLite)
  • 部署(Cloudflare)

可以用接近實務的架構來學習。

⑤ 也能輕鬆整合生成式 AI

使用 Cloudflare Workers AI 的話,

  • 摘要應用
  • 聊天機器人
  • 學習支援工具

等等都能輕鬆製作。
在作品集上也很有競爭力。

我自己也曾在個人開發中,運用 Cloudflare Workers AI 開發過 Web 應用程式。(是一個能以生成式 AI 對談形式互動的簡單應用)

Cloudflare Workers AI 可以在 Workers 上輕鬆呼叫 AI 模型,因此不需要另外管理外部服務的 API 金鑰,就能把生成式 AI 功能整合進來。

例如,根據對話紀錄進行內容分析的處理,可以像下面這樣實作:

// 變數「ai」是用 wrangler.toml 定義成 AI binding 的物件
const response = await ai.run("@cf/meta/llama-3.3-70b-instruct-fp8-fast", {
  messages: [
    {
      role: "system",
      content: systemPrompt,
    },
    {
      role: "user",
      content: `Here is the conversation log:\n\n${conversation}\n\nAnalyze and output strictly valid JSON.`,
    },
  ],
  temperature: 0.7,
  max_tokens: 1000,
});

什麼是 Cloudflare Workers 的 binding?
在 Cloudflare Workers 中,為了讓外部服務與資源能夠從程式碼中簡單操作,提供了一種稱為「binding」的機制。

實際使用後的感想

實際用這套架構做個人開發,我最大的感受就是,不會卡在基礎架構上
因此也就能專注在「把東西做出來」

如果你現在正覺得,不知道該學什麼,或是想動手但擔心環境建置,那麼請先從小規模的個人開發開始

而在技術選型上,Cloudflare 技術棧非常推薦

結語

對新人來說,「你動手做了多少、累積了多少失敗與成功」,會直接成為成長的養分。

像 Cloudflare 技術棧這樣的環境:

  • 完全免費,沒有風險
  • 環境建置簡單,不容易半途而廢
  • 可以立刻部署並公開

在這麼優渥的條件下,如果還因為基礎架構的煩惱而停下來,真的非常可惜。

先別把時間浪費在不必要的擔心上,請先親自體驗把自己的點子做成成果物的樂趣吧。這一步,應該會成為你作為工程師的一大信心來源。

具體的實作步驟,我已經整理在這篇文章裡。請務必從今天就開始挑戰看看!

我透過這套 Cloudflare 技術棧結合 AI 驅動開發,已經能在短時間內做出 Web 應用程式了。

實際上,即使是在業餘時間有限的情況下,我也曾經透過個人開發,在大約 1 週內做出 MVP。

由於環境建置與部署幾乎不會花太多時間,
我能把注意力集中在從發想點子到實作的過程上,也更能用短週期反覆嘗試與修正,這是我感受到的最大優點。


關於 KIYO 學習股份有限公司

我們公司的願景是「提供世界上最『容易學、容易懂、容易持續』的學習方式」。透過打造並成長創新的教育服務,期望成為線上教育領域的第一品牌,並拓展到全世界。

產品

  • STUDYing:「容易學習、容易理解、容易持續」的線上證照考試對策課程
  • STUDYing Career:支援取得證照者找工作與職涯發展的轉職服務
  • AirCourse:提供無限觀看影片培訓的 e-learning 系統(LMS)

KIYO 學習股份有限公司正在招募一起工作的夥伴


原文出處:https://qiita.com/t0hara/items/8a669c6e0a76d9b1875d


精選技術文章翻譯,幫助開發者持續吸收新知。

共有 0 則留言


精選技術文章翻譯,幫助開發者持續吸收新知。
🏆 本月排行榜
🥇
站長阿川
📝3   💬10   ❤️1
233
🥈
我愛JS
💬2  
8
🥉
Gigi
2
評分標準:發文×10 + 留言×3 + 獲讚×5 + 點讚×1 + 瀏覽數÷10
本數據每小時更新一次
📢 贊助商廣告 · 我要刊登