維持鏈上秩序!全靠「合約工程師」
區塊鏈技術的應用,在2015年夏天出現了轉折,當時第一代以太坊(ETH 1.0)誕生,因為具備比特幣所沒有的智慧合約(Smart Contract)功能,開發者終於可以在區塊鏈上,創造各式各樣的應用。
智慧合約的概念最早在1994年,由美國電腦科學家尼克·薩博(Nick Szabo)提出,但一直到以太坊出現,才讓概念變得完善。
如同字面上的意思,智慧合約是一種可以自動執行的合約,可以把它想像成一台由程式碼編寫、且能自動運行的自動販賣機,投下多少錢,相對應的物品就會掉出來,過程完全不需要透過假手第三方。
負責寫智慧合約的人,就是「合約工程師」,肩負著NFT、加密貨幣、DeFi(去中心化金融)等應用,可以順利運作、不出包的重責大任。
🛎️延伸閱讀: 月薪7萬起!Web3人才超搶手,一次看熱門工作有哪些?
合約工程師都在做什麼?需要哪些技能、特質?
PTT共同創辦人、量趨科技(Quantrend Technology)技術長戴志洋,是非常早期就投入的合約工程師。他形容,合約工程師角色很像商業合約律師,「當兩造雙方需要一個遊戲規則時,負責把它寫下來,變成一個合約。」
傳統合約在簽約後,雙方需要信任彼此會履行義務。像是房東信任房客會繳房租、房客信任房東會提供住所,如果有一方違反條款,會需要第三方執法機構介入處理。
智慧合約無論是雙方或者多方協議,都不需要信任彼此,也不需要第三方介入,因為遊戲規則都寫在公開透明、無法篡改的區塊鏈上,合約內容會自動強制執行。
必備能力一:性格仔細、細膩
「如果沒有足夠的專業知識,很難把事情想完整。」戴志洋表示,合約工程師的工作,就是要非常仔細的把各種細節規劃清楚,並熟悉不同鏈的特性,「認識每條鏈,就像是了解不同國家的法律。」在規劃過程中,把所有可能的風險、漏洞都補上。
過去就曾發生,NFT項目的智慧合約有漏洞,限量的NFT被駭客盜走,再被高價賣出,如果沒有在開發合約時,就把所有細節規劃好,一個小疏失,最終都會變成大災難難。
仔細、細膩,就是合約工程師最需具備的人格特質。
智慧合約的運作,通常涉及金錢、虛擬資產交易,不容許任何閃失。因此合約工程師,是一個門檻很高的高做,需要經過許多歷練,才能寫出一份好的合約。
戴志洋觀察,駭客(hacker)除了會寫程式,還知道各種突破漏洞的手法,有駭客或是資安背景的人因為「知己知彼」,非常適合投入合約工程師工作。
必備能力二:自學能力、累積實戰經驗
區塊鏈技術幾乎每天都有新的知識、趨勢出現,工程師必須要時時跟上新的趨勢脈動,新的東西往往都是英文資料,因此合約工程師,需要具備一定的外語能力,也需要熟悉Solidity、Java、Rust等程式語言。
也因為每一種程式語言,都有不同運用的場域,有些適合用來做前端(使用者所看到的內容)、有些適合做後端 (應用程式基礎設施),合約則會需要跟前後端互動,戴志洋建議,合約工程師需要前後端工程師的技能都掌握,才能在就業市場有競爭力。
自律的「自學能力」,是合約工程師需要具備的第二項特質。但比起自學,戴志洋認為更關鍵的,是持續不斷累積實戰經驗。
參與《聖人大盜》專案開發,用合約解決手續費難題
戴志洋在2018年底,參與了區塊鏈商戰電影《聖人大盜》的加密貨幣「SELF TOKEN 」專案,負責合約開發工作,就累積了不少印象深刻的挑戰。
SELF TOKEN是一個在以太坊上建立的代幣,除了可以兌換電影票,還跟酒吧、咖啡廳、共創空間、民宿、複合型商場等許多品牌合作,讓SELF TOKEN的持有者在消費時,可以獲得優惠跟獎勵,打造「沉浸式娛樂」。
當時戴志洋跟團隊,遇到了Gas fee(鏈上手續費)難題。
他回憶:「假設在合作商家買一杯100元的咖啡,遇到交易尖峰時,可能需要支付200元手續費,這樣就不會有人想要使用SELF TOKEN了。」
Gas fee的高低全世界都一樣,無法被改變,於是戴志洋把腦筋動到「簽署機制」上,當消費者要把SELF TOKEN付給商家時,有一個第三方單位,會負責簽署跟支付Gas fee,這樣消費者就不需支付額外費用,使用意願就會提升。
戴志洋參與了SELF TOKEN專案,從設計到上線的整個過程,這次的實戰經驗,替他的合約工程師生涯,打下了關鍵基礎,
專案為主!合約工程師的工作型態是什麼?
一個合約從開發到上線,大約需要兩個月的時間,通常有新的項目,才會需要開發智慧合約,因此合約工程師的工作型態,以論件計酬、專案為主,幾乎不會有公司雇用全職的合約工程師。
工作機會大多從過去累積的作品、人脈來,也已蠻多有需求的人會從LinkedIn上找合約工程師。
戴志洋表示,案量的需求,則跟市場活躍度密切相關,「兩年前市場很火熱時,幾乎是你想接的話都有,現在市場比較冷清,想發新東西的項目少,案量當然就不多,想單純靠當合約工程師存活,其實有點難。」
未來要考照?合約工程師下一步是什麼?
現在就業市場雖然看似冷清,但戴志洋看好智慧合約在未來,會大規模應用在商業領域,像是政府投票系統、醫療保健、金融服務、保險,甚至連上班打卡系統也能用智慧合約做,只要需要訂規則的事情,通通都可以用智慧合約自動執行。
但,我們真正需要的合約工程師,究竟有多少?
「當累積越多的成功案例,許多工作都是能直接套用,投入的成本會遞減。」戴志洋認為,當智慧合約的應用普及後,市場就不會需要太多開發合約的工程師,而是合約的使用者會變多。
就如同現在大家每天都在生活中使用App、網路,但不需要每個人都會寫程式。雖然從業人數長期來說會減少, 但是對專業技能、操守的要求會越來越高。
智慧合約內的每一條程式碼,直接跟金錢、財產有關,戴志洋預測,如同現在擬定合約的律師,需要考證照才能執業,那麼在未來,也會有針對合約工程師的國家認證考試機制,盡可能杜絕鏈上世界詐騙、犯罪的可能。
